我正在处理某些图像,其中每个图像的大小都不同,并希望计算每个图像的直方图梯度。我不想调整任何图像的大小,但希望每个HOG输出的长度相同。我知道这样做的可能方法是每个单元格具有不同的像素,每种块类型具有固定的单元格。这样做时,我很想知道是否没有为pixel_per_cell skimage.feature.hog提供任何值,它将能够为我自己决定一个值,还是需要我自己的逻辑来为每个图像确定pixel_per_cell。

最佳答案

如果要为不同大小的图像提供相同长度的HOG输出,则应为将图像划分为单元的部分编写逻辑。例如,如果您的图像大小为(224x224),并且您希望每个单元格8像素(skimage中的默认值),那么最终将得到(28x28)单元格网格。现在,假设您的下一张图像的尺寸为(448x448),则每个像元的像素应满足此方程(224 /8) ==(448/x)。您可以从这里轻松求解x。如果不这样做,则skimage将对每个单元格中的像素使用默认值8

您可以查看文档here

关于python - pixel_per_cell skimage.feature.hog的默认值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55664799/

10-16 12:02