【发布时间】:2016-01-30 05:29:56
【问题描述】:
我正在开发一个 CBIR 系统,其中我使用 HSV 直方图作为我的功能之一。对于每张图像,我想计算一个直方图,其中 n1 表示色调,n2 表示饱和度,n3 表示值。我想要一个向量,它是 n1xn2xn3 维的,具有这些箱的所有可能组合。
例如:如果我分别为色调、饱和度和值取一个元组 (8, 12, 3) 箱,那么我想计算一个 8x12x3=288 维向量。
在 openCV 中,我们有 calcHist() 函数来执行此操作,但我未能在 matlab 中找到类似的函数。
这是我所做的
%roi1 is my region of interest, y1 is the vector
y1=[imhist(roi1(:,:,1),8)' imhist(roi1(:,:,2),12)' imhist(roi1(:,:,3),3)'];
但 y1 将是 23 维而不是所需的 288 维。请帮助我,如果有类似于 openCV 的calcHist() 的功能,那么建议我这样做。
【问题讨论】:
-
为什么不直接使用 2D 或 3D HSV histogram?
标签: matlab image-processing machine-learning computer-vision cbir