骨骼图像混合空间增强

来源:互联网 发布:冬红果盆景淘宝价格 编辑:程序博客网 时间:2024/06/01 08:38

%代码

I=imread('body.tif');

I=im2double(I);

subplot(2,4,1),imshow(I),title('1:原始图像');

%为原始图像增加模版为[ ... ...](此处省略)的滤波器对图像进行拉普拉斯操作

h=[-1,-1,-1;-1,8,-1;-1,-1,-1];

I1=imfilter(I,h);

subplot(2,4,2),imshow(I1,[ ]),title('2:拉普拉斯');


I2=I+I1;

subplot(2,4,3),imshow(I2,[ ]),title('3:图1和图2叠加');


%对原图用sobel梯度操作,照样用gx,gy的分量模版

hx=[-1,-2,-1;0,0,0;1,2,1];

hy=[-1,0,1;-2,0,2;-1,0,1];

gradx=filter2(hx,I,'same');

gradx=abs(gradx);

grady=filter2(hy,I,'same');

grady=abs(grady);

I3=gradx+grady;

subplot(2,4,4),imshow(I3,[ ]),title('4:sobel梯度处理');

%用5*5的均值滤波器对图4做平滑处理

h1=fspecial('average',5);

I4=imfilter(I3,h1);

subplot(2,4,5),imshow(I4,[ ]),title('5:平滑后的sobel图');

%图3和图5相乘 进行点乘

I5=I2.*I4 %如若报错,则需要数字图像转换成double类型

subplot(2,4,6),imshow(I5,[ ]),title('6:图3和图5相乘');


%图6与原图相加产生衣服锐化图像

I6=I+I5; %如若报错,则需要数字图像转换成double类型

subplot(2,4,7),imshow(I6,[ ]),title('6:图1和图6求和的锐化');


%对图7进行幂变换

gamma=0.5;

c=1;

I7=c.*I6.^gamma; %注意符号‘.’、'*'、‘^’一个都不能少

subplot(2,4,8),imshow(I7,[ ]),title('8:图7幂变换后');


注意:1、多幅图像显示的时候用到subplot(),必须在imshow(I,[ ])加上‘[ ]’,否则显示的图像是一张二值图像;

            2、注意两幅数字图像相加或相乘 需要转换成double类型;

    3、clear all;clc;清除全部;

            4、注意中英文的字符切换;


效果图:


原创粉丝点击