问题在转换矩阵为RGB图像

8次浏览(最近30天)
布勒Sood
布勒Sood 2020年4月3日
评论道: 布勒Sood2020年5月12日
我试图用相应的3x3非重叠块替换像素值。由于输出矩阵是类型双我转换它的uint8类型。
但当我在图形窗口显示图像时,它是灰色的,而不是彩色的图像。我试过猫(3,灰色,灰色,灰色),但图像仍然是无色的。
我做错了什么?
img = imread (“C: \ \用户开\ \ Lenna_ MATLAB程序(test_image) . png”);
New = blockproc(img, [10 10], fun);
不丹= uint8(新);
imshow(不丹)
Rgbnew = cat(3, new1, new1, new1);
imshow (rgbnew)
7评论
布勒Sood
布勒Sood 2020年5月12日
@Walter罗伯森
中值(block_struct.data(:))工作得很好。非常谢谢。

登录评论。

答案(1)

图像分析
图像分析 2020年5月10日
您需要使用imsplit()来获取单独的颜色通道,然后处理它们并将它们与cat(3)结合起来。
4评论
布勒Sood
布勒Sood 2020年5月12日
为不完整的信息道歉。附加.m文件和图像。
是的,在上一个注释中显示的输出图像是blockproc_color_means的输出。M是我想要的输出。我会浏览你提供的演示列表。非常谢谢。

登录评论。

下载188bet金宝搏

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!