MATLAB最常用的图像RGB值
在MATLAB中: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
我有一个类似地图的图像,由几种不同的颜色组成。我需要知道哪种颜色最常出现。
使用
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值的三个向量。我使用过它,但结果是一组三个向量。谢谢。我先规范化了图像,然后按照您的解决方案进行操作。它确实奏效了。