图像目标分割与提取

图像目标分割与提取

实验目的

彩色图像中目标的分割与提取。

实验要求

1)彩色图像的色彩模型,各通道的读取与显示,色彩模型转换;
2)彩色图像分割;
3)彩色图像目标提取。

实验步骤

1) 读入一幅彩色图像I1,读取RGB、HSI色彩模型的各通道图像,并显示;
2) 对彩色图像I1图进行目标分割,并显示结果;
3) 对彩色图像I1进行目标提取,并显示结果。

RGB = imread('D:\桌面\图像处理\实验\1.jpg');
R = RGB(:,:,1);
G = RGB(:,:,2);
B = RGB(:,:,3);
figure(1);
subplot(2,2,1);
imshow(RGB);title('RGB');
subplot(2,2,2);
imshow(R);title('R');
subplot(2,2,3);
imshow(G);title('G');
subplot(2,2,4);
imshow(B);title('B');

rgb = im2double(RGB);
r = rgb(:, :, 1);
g = rgb(:, :, 2);
b = rgb(:, :, 3);
% 执行转换方程
num = 0.5*((r - g) + (r - b));
den = sqrt((r - g).^2 + (r - b).*(g - b));
theta = acos(num./(den + eps)); %防止除数为0
H = theta;
H(b > g) = 2*pi - H(b > g);
H = H/(2*pi);
num = min(min(r, g), b);
den = r + g + b;
den(den == 0) = eps; %防止除数为0
S = 1 - 3.* num./den;
H(S == 0) = 0;
I = (r + g + b)/3;
%3个分量联合成为一个HSI图像
hsi = cat(3, H, S, I);
h = hsi(:,:,1);
s = hsi(:,:,2);
i = hsi(:,:,3);
figure(2);
subplot(2,2,1);
imshow(hsi);title('HSI');
subplot(2,2,2);
imshow(h);title('H');
subplot(2,2,3);
imshow(s);title('S');
subplot(2,2,4);
imshow(i);title('I');

img = im2bw(RGB);
img = not(img);
figure,imshow(img);


[B,L] = bwboundaries(img);
figure,imshow(img);
hold on;
for k = 1:length(B)
    boundary = B{k};
    plot(boundary(:,2),boundary(:,1),'g','LineWidth',2);
end

结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考

https://blog.csdn.net/HXG2006/article/details/80407784

  • 1
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值