如何在MATLAB中的RGB颜色立方体中显示rgb图像

时间:2014-04-10 17:14:00

标签: matlab rgb

所以我有一个RGB图像,我希望将它显示在RGB颜色立方体中,其像素为颜色立方体中的点。这听起来很简单,但我无法弄清楚如何。

2 个答案:

答案 0 :(得分:2)

您可以打开轴框以模拟立方体,并执行3D散点图:

I = imread('peppers.png');
vRGB = reshape(I,[],3);

plot3(vRGB(:,1),vRGB(:,2),vRGB(:,3),'.','MarkerSize',0.5)
set(gca,'Box','on')
xlabel('red'); ylabel('green'); zlabel('blue');
xlim([0 255]); ylim([0 255]); zlim([0 255])

enter image description here

答案 1 :(得分:1)

假设img是MxNx3图像,您可以这样做:

[M, N, ~] = size(img);
plot3(...
    reshape(img(:,:,1), 1, M * N), ...
    reshape(img(:,:,2), 1, M * N), ...
    reshape(img(:,:,3), 1, M * N), '.')
xlabel('Red'), ylabel('Green'), zlabel('Blue')
grid on