我想知道如何将一个二进制图像伪彩色图像基于封闭区域

2视图(30天)

接受的答案

图像分析
图像分析 2021年10月25日
编辑:图像分析 2021年10月25日
试试这个:
%演示图像分析
clc;%清除命令窗口。
关闭所有;%关闭所有数据(除了imtool。)
清晰;%擦掉所有现有的变量。或者clearvars如果你想要的。
工作空间;%确定工作区面板显示。
格式长g;
格式紧凑的;
字形大小= 20;
markerSize = 40;
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
%读入图像
文件名=“image.png”;
grayImage = imread(文件名);
%得到图像的尺寸。
% numberOfColorChannels应该为灰度图像,= 1和3的RGB彩色图像。
(行、列,numberOfColorChannels) =大小(grayImage)
如果numberOfColorChannels > 1
%这不是灰度像我们预期的颜色。
%提取红色通道(红色线会是白色)。
grayImage = grayImage (:: 1);
结束
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
%显示图像。
次要情节(2 2 1);
imshow (grayImage []);
impixelinfo;
轴(“上”,“图像”);
标题(的原始灰度图像,“字形大小”字形大小,“翻译”,“没有”);
持有
drawnow;
%最大化窗口。
g = gcf;
g。WindowState =“最大化”
drawnow;
%得到一个面具:
binaryImage = grayImage < 128;
%显示图像。
次要情节(2,2,2);
imshow (binaryImage []);
impixelinfo;
轴(“上”,“图像”);
标题(“面具/二进制逻辑图像”,“字形大小”字形大小,“翻译”,“没有”);
持有
drawnow;
%与8-connectivity标签每个团,所以我们可以测量它
[labeledImage, numberOfBlobs] = bwlabel (binaryImage 8);
%显示图像。
次要情节(2、2、3);
imshow (labeledImage []);
impixelinfo;
轴(“上”,“图像”);
标题(“标记图像”,“字形大小”字形大小,“翻译”,“没有”);
持有
drawnow;
%应用各种各样的假彩色区域。
coloredLabelsImage = label2rgb (labeledImage,“喷气机”,(0,0,0。5));
%显示伪色彩图像。
次要情节(2、2、4);
imshow (coloredLabelsImage);
impixelinfo;
轴(“上”,“图像”);
标题(彩色的标记图像的,“字形大小”字形大小,“翻译”,“没有”);
持有
drawnow;
[编辑]只是报告说,尽管这可能看起来漂亮,它是 不是很有用 因为你不能告诉如果附近blob相连,因为他们的颜色非常相似。你最好与洗牌的颜色是这样的:
coloredLabelsImage = label2rgb (labeledImage,“喷气机”,“k”,“洗牌”);

更多的答案(3)

焉耆刘
焉耆刘 2021年10月26日
先生,请检查下代码来得到一些信息
clc;清晰的所有;关闭所有;
我= imread (“//www.tianjin-qmedu.com/matlabcentral/answers/uploaded_files/777933/image.png”);
J = im2bw(我);
J = ~;
[L, num] = bwlabel (J);
图;显示亮度图像(左);轴平等的;轴;colormap飞机;

阿卡什·库马尔Pakala
阿卡什·库马尔Pakala 2021年10月25日
图像分析师感谢你的回答和代码。我将试着理解你的代码并运行它,并会让你知道我的评论。
Neverthelss,谢谢你的及时响应。

阿卡什·库马尔Pakala
阿卡什·库马尔Pakala 2021年10月25日
嘿,谢谢了。我真的很感激你的帮助。我有一些问题关于你的代码。
1一个
从您的代码“binaryImage = grayImage < 128;”
这是如何工作的。
10评论

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!