Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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最常用的图像RGB值_Matlab - Fatal编程技术网

MATLAB最常用的图像RGB值

MATLAB最常用的图像RGB值,matlab,Matlab,在MATLAB中: 我有一个类似地图的图像,由几种不同的颜色组成。我需要知道哪种颜色最常出现。 使用imread()我已将图像保存到3D矩阵中,需要找到最常见的像素值(r、g、b)。 我尝试了mode(),但它似乎不适用于3D矩阵 谢谢使用将图像转换为索引地图,然后您可以找到最常用的索引并获得相应的颜色 rgbImg = imread('my_img.png'); [idx map] = rgb2ind( rgbImg, 1e-6, 'nodither'); %// consider chang

在MATLAB中:
我有一个类似地图的图像,由几种不同的颜色组成。我需要知道哪种颜色最常出现。
使用
imread()
我已将图像保存到3D矩阵中,需要找到最常见的像素值(r、g、b)。
我尝试了
mode()
,但它似乎不适用于3D矩阵


谢谢

使用将图像转换为索引地图,然后您可以找到最常用的索引并获得相应的颜色

rgbImg = imread('my_img.png');
[idx map] = rgb2ind( rgbImg, 1e-6, 'nodither'); %// consider changing tolerance here
m = mode( idx );
frequentRGB = map(m, : );
像这样做

im=imread (image);
Im1=im (:,:,1)*100+im (:,:,2)*10+im (:,:,3);
MostFrequent=mode (im1 (:));
MfR=MostFrequent/100;
MfG=(MostFrequent-MfR*100)/10;

我希望您能理解我的观点,将3d点转换为1d,然后重新计算RGB值

如何使用frequentRGB?@TanSu你试过代码了吗
frequentRGB
应该是具有最频繁RGB值的三个向量。我使用过它,但结果是一组三个向量。谢谢。我先规范化了图像,然后按照您的解决方案进行操作。它确实奏效了。