第六章(5至6节) 彩色图像处理

1. 彩色图像锐化

用线性空间滤波器锐化一幅RGB彩色图像的基本步骤和第三章学过的差不多,但使用的是锐化滤波器,我们考虑使用的还是拉普拉斯算子锐化图像。

代码如下:

h=imread('C:\Users\sh qian\Desktop\flower.jpg');
lapmask=[1 1 1;1 -8 1;1 1 1];
filter=imfilter(h,lapmask,'replicate');
fen=imsubtract(h,filter);
imshow(fen);
figure,imshow(h);
subplot(1,2,1),imshow(h);
title('原图');
subplot(1,2,2),imshow(fen);
title('经过锐化后的图像');

效果如下:

这里写图片描述

在使用imfilter时,RGB图像完全可以当做单色图像处理,避免了对分量的拆分和合并,imsubtract函数表示相减,因为锐化重要的一步就是原图像与经过滤波后的图像进行相减。

2. 在RGB向量空间直接处理

2.1 采用梯度的彩色边缘检测

我在书中的附录里找到了实现RGB图像的彩色梯度的函数,我理解的大概意思是,根据传入的(一定是)RGB图像,以及一个Sobel掩膜sh,因为sh是近似于垂直方向的梯度,所以还需要一个水平方向的掩膜sh’。然后对这个RGB图像进行分通道滤波,而且要在垂直和水平方向分别滤波。接下来,就是一系列的数学公式的推导(还得慢慢理解吧),最后计算每个平面的梯度。

colorgrad函数代码如下:

function [VG,A,PRG]=colorgrad(f,T)
if ndims(f)~=3  ||  size(f,3) ~=3
    error('Input image must be RGB');
end
sh=fspecial('sobel');
sv=sh';
Rx=imfilter(double(f(:,:,1)),sh);
Ry=imfilter(double(f(:,:,1)),sv);
Gx=imfilter(double(f(:,:,2)),sh);
Gy=imfilter(double(f(:,:,2)),sv);
Bx=imfilter(double(f(:,:,3)),sh);
By=imfilter(double(f(:,:,3)),sv);
gxx=Rx.^2+Gx.^2+Bx.^2;
gyy=Ry.^2+Gy.^2+By.^2;
gxy=Rx.*Ry+Gx.*Gy+Bx.*By;
A=0.5*(atan(2*gxy./(gxx-gyy+eps)));
G1=0.5*((gxx+gyy)+(gxx-gyy).*cos(2*A)+2*gxy.*sin(2*A));
A=A+pi/2;
G2=0.5*((gxx+gyy)+(gxx-gyy).*cos(2*A)+2*gxy.*sin(2*A));
G1=G1.^0.5;
G2=G2.^0.5;

VG=mat2gray(max(G1,G2));

%计算每个平面的梯度
RG=sqrt(Rx.^2+Ry.^2);
GG=sqrt(Gx.^2+Gy.^2);
BG=sqrt(Bx.^2+By.^2);

PRG=mat2gray(RG+GG+BG);

if nargin==2
    VG=(VG>T).*VG;
    PRG=(PRG>T).*PRG;
end

测试例子

c=imread('tem.jpg');
[VG,A,PPG]=colorgrad(c);
figure,imshow(VG);
figure,imshow(PPG);
subplot(2,2,3),imshow(b);
title('原图');
imhist(PPG,255);
imhist(VG,255);
title('VG直方图');
subplot(2,2,4),imhist(PPG,255);
title('PPG直方图');

效果如图:

这里写图片描述

其实正常情况下PPG图像的水平边缘比VG中的对应边缘更弱,主要原因是红色和绿色平面的梯度产生两个垂直边缘,蓝色平面的梯度产生单个水平边缘。为形成PPG而相加这三个梯度会产生亮度两倍于水平边缘亮度的垂直边缘。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值