在一个程序中,我想把rgb数据给CImg,然后显示出来
但是怎么都不对,难道是数据结构不对??
于是我验证了一下。
使用MATLAB 生成了一幅很小的bmp图片,然后用CImg读取出来,果然
MATLAB 的 位维度 RGB
然后在CImg显示则是RRRR...................GGGGGGGGGGGGGG................BBBBBBBBBBBBBBBBBBB;
的结构,某种程度上跟MATLAB很像哈
MATLAB
A(:,:,1)=[1,1,1; 1,1,1; 1,1,1; 1,1,1];
A(:,:,2)=[2,2,2; 2,2,2; 2,2,2; 2,2,2];
A(:,:,3)=[3,3,3; 3,3,3; 3,3,3; 3,3,3];
A=uint8(A);
imwrite(A,'trivia.bmp','bmp')
然后CImg
CImg<unsigned char > img1("trivia.bmp");
CImgDiplay dis1(img1);
dis1.display(img1);
内存布局如图所示
本文探讨了如何使用CImg库正确显示由MATLAB生成的RGB图像数据,并揭示了MATLAB与CImg在图像数据内存布局上的差异。

1万+

被折叠的 条评论
为什么被折叠?



