matlab中,如何把一个图像画绿。 110
图一为原图,现在处理过后,得到图二M,图二M,为原图中的裂缝,如何把图二白点位置图成绿色,再画到原图中,生成一个新的图,新图就是把原图中的裂缝用绿色标记出来...
图一为原图,现在处理过后,得到图二M,
图二M,为原图中的裂缝,如何把图二白点位置图成绿色,再画到原图中,生成一个新的图,新图就是把原图中的裂缝用绿色标记出来 展开
图二M,为原图中的裂缝,如何把图二白点位置图成绿色,再画到原图中,生成一个新的图,新图就是把原图中的裂缝用绿色标记出来 展开
1个回答
展开全部
f1 是图一数据
f2 是图二数据 (灰度值)
H_line = f2>100; % 找到白色点的位置
temp = f1(:,:,2); %去除绿色的图像数据层
temp (H_line) = 255; % 设置为绿色
f1(:,:,2) = temp;
temp = f1(:,:,1); %红色图层
temp (H_line) = 0; % 设置为没有颜色
f1(:,:,1) = temp;
temp = f1(:,:,3); %蓝色图层
temp (H_line) = 0; % 设置为没有颜色
f1(:,:,3) = temp;
imshow(f1);
f2 是图二数据 (灰度值)
H_line = f2>100; % 找到白色点的位置
temp = f1(:,:,2); %去除绿色的图像数据层
temp (H_line) = 255; % 设置为绿色
f1(:,:,2) = temp;
temp = f1(:,:,1); %红色图层
temp (H_line) = 0; % 设置为没有颜色
f1(:,:,1) = temp;
temp = f1(:,:,3); %蓝色图层
temp (H_line) = 0; % 设置为没有颜色
f1(:,:,3) = temp;
imshow(f1);
追问
我的f2是二值图像,H_line = f2>100 这一句好像有问题。
我运行后结果f1和原图一是一样的。
追答
如果是二值图像 那么久改为H_line = f2>0
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询