matlab抠图代码
时间: 2023-11-07 13:06:16 浏览: 281
泊松抠图的matlab代码
4星 · 用户满意度95%
matlab抠图代码是一种用于图像处理的代码,可以通过在图像上指定多边形节点来抠出图像中的特定区域。具体实现方法可以参考以下代码:
```matlab
a=imread('./woman_a.jpg');%读图
figure(1);imshow(a);%建立窗口画图,显示原图
r=a(:,:,1);%R通道图像
g=a(:,:,2);%G通道图像
b=a(:,:,3);%B通道图像
row=[800 300 200 300 800 900];%抠图图形节点横坐标
col=[20,20,400,700,700,400];%抠图图形节点纵坐标
Matting_a=roipoly(a,row,col);
r1=immultiply(r,Matting_a);%交运算
g1=immultiply(g,Matting_a);%交运算
b1=immultiply(b,Matting_a);%交运算
a_all=cat(3,r1,g1,b1);%合成RGB图像
figure(2);imshow(a_all);%建立窗口画图,显示抠图
```
以上代码实现了对一张名为woman_a.jpg的图片进行抠图的功能,其中row和col分别表示多边形节点的横纵坐标,Matting_a是抠图后的二值图像,r1、g1、b1是分别对R、G、B通道进行的交运算后的图像,最后通过cat函数合成RGB图像并显示出来。
阅读全文