Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.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

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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.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
Matlab中的3D HSV图像直方图,每个通道具有不同数量的箱子?_Matlab_Image Processing_Machine Learning_Computer Vision_Cbir - Fatal编程技术网

Matlab中的3D HSV图像直方图,每个通道具有不同数量的箱子?

Matlab中的3D HSV图像直方图,每个通道具有不同数量的箱子?,matlab,image-processing,machine-learning,computer-vision,cbir,Matlab,Image Processing,Machine Learning,Computer Vision,Cbir,我正在开发一个CBIR系统,其中我使用HSV直方图作为我的功能之一。对于每幅图像,我想计算一个直方图,其中有n1个像素表示色调,n2表示饱和度,n3表示值。我想要一个矢量,它是n1xn2xn3维的,有所有可能的这些箱子的组合。 例如:如果我分别取色调、饱和度和值的元组(8、12、3)箱,那么我想计算8x12x3=288维向量。 在openCV中,我们有calcHist()函数来执行此操作,但我在matlab中找不到类似的函数。 这就是我所做的 %roi1 is my region of inte

我正在开发一个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()
,那么建议我这样做。

您计算的是一系列一维直方图,而不是多维直方图。例如,imhist(roi1(:,:,1),8)”是仅色调值的计数,忽略相应的饱和度或像素值。Mathworks网站上有计算n维柱状图的代码,该柱状图应该提供您想要的内容:

为什么不直接使用2D或3D?