Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/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 skimage雏菊不同大小的特征向量_Python_Image Processing_Scikit Learn_Scikit Image - Fatal编程技术网

Python skimage雏菊不同大小的特征向量

Python skimage雏菊不同大小的特征向量,python,image-processing,scikit-learn,scikit-image,Python,Image Processing,Scikit Learn,Scikit Image,我正在使用skimage和sklearn来训练数据集food101图像的分类器 def process_image(image_fp): image_ = imread(image_fp) resize(image_, (400, 350)).shape image=rgb2gray(image_) descs=skimage.feature.daisy(image, step=180, radius=58, rings=2, histograms=6, orientations=8) if d

我正在使用skimage和sklearn来训练数据集food101图像的分类器

def process_image(image_fp):
image_ = imread(image_fp)
resize(image_, (400, 350)).shape
image=rgb2gray(image_)
descs=skimage.feature.daisy(image, step=180, radius=58, rings=2, histograms=6, orientations=8)
if descs.shape[0]!=3:
    descs=descs.transpose(1, 0, 2)
return descs.reshape(descs.size).tolist()
说到:

clf = grid_search.GridSearchCV(svm.SVC(), parameters).fit(x_train, y_train)
由于函数“process_image”返回的大小不同,因此出现错误


我可以通过只选择列表中元素数较少的元素来解决这个问题,但我认为这可能有一个更正确的方法。

我认为您可以跳过调整图像大小

更改此行:

resize(image_, (400, 350)).shape
关于这一行:

image_ = resize(image_, (400, 350))
最终功能:

def process_image(image_fp):
    image_ = imread(image_fp)
    image_ = resize(image_, (400, 350))
    image=rgb2gray(image_)
    descs=skimage.feature.daisy(image, step=180, radius=58, rings=2, histograms=6, orientations=8)
    if descs.shape[0]!=3:
        descs=descs.transpose(1, 0, 2)
    return descs.reshape(descs.size).tolist()
当我更改它时,结果如下所示:

更改代码前:

随机图像大小:(445578,3)

Daisy向量大小:624

更改代码后:

随机图像大小:(400350,3)

Daisy向量大小:416