Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中,如何在单个列表中生成每个强度值的像素?_Python_Image Processing_Pixel - Fatal编程技术网

在python中,如何在单个列表中生成每个强度值的像素?

在python中,如何在单个列表中生成每个强度值的像素?,python,image-processing,pixel,Python,Image Processing,Pixel,我需要在一个列表中创建具有相同强度值的像素,这样我将得到一个强度值列表,每个列表都有具有相同强度值的像素 import nibabel as nib import numpy as np from PIL import Image import seaborn as sns import matplotlib.pyplot as plt from numpy import asarray from scipy import ndimage, misc, stats import cv2 #

我需要在一个列表中创建具有相同强度值的像素,这样我将得到一个强度值列表,每个列表都有具有相同强度值的像素

import nibabel as nib
import numpy as np 
from PIL import Image
import seaborn as sns
import matplotlib.pyplot as plt
from numpy import asarray
from scipy import ndimage, misc, stats
import cv2


### Load the image 

img  = nib.load('input_dir/FLAIR1.nii.gz')
img_data = img.get_fdata()
imgs = img_data[:, :, 23]

rows, col = imgs.shape
my_nlist = [[] for k in range(y.shape[0])]
print(im_arr[2,2])
for i in range(0, rows):
    for j in range(0, col): 
        pixel = imgs[i, j]
        for k in range(y.shape[0]):
            if pixel == [k]:               
                my_nlist[k].append(pixel) 


不要让自己变得更难:这正是直方图的意义所在

将matplotlib.pyplot作为plt导入 将cv2导入为cv您将不需要cv2,只需要创建此示例 img=cv.imread'dir/to/img',0注意灰度标志 hist,bins,=plt.histimgHist包含图片中每个强度具有相同强度的像素列表 plt.show,以防您想将其可视化 这就是它的样子:


谢谢你,我只是得到了我的代码中的错误,并修复它。我不需要简单的直方图,我需要得到一个列表中的每个强度值,得到它们的梯度幅值,然后是每个值的CDF,我。。。。变量hist正好包含该强度值及其在图像中找到的每个强度的计数hist的结果是一个NumPy数组,该数组计算每个强度值的像素数。但是我需要值列表来知道每个值如何转换成另一个梯度值。因为当我应用Sobel掩模来获得梯度值时,值的合并会进行变换,我需要一个2D函数来绘制梯度的CDF和原始像素值。