内容要求
用matlab实现“素描”效果。
1.通过高斯滤波器平滑处理图像。
2.对图像做差值。
3.对图像计算差值加上128完成处理。
代码部分如下
clear,clc;
[filename,pathname] = uigetfile('*','选择图片');
imgaepath = strcat(pathname,filename);
image = imread(imgaepath);
figure,imshow(image);
Image = image;
Image=double(Image);
Image1=Image;
Half_size=15;
F_size=2*Half_size+1;
G_Filter=fspecial('gaussian',F_size,F_size/6);
Image_Filter = imfilter(Image1, G_Filter,'conv');
Image_Diff=Image-Image_Filter;
Image_out=Image_Diff+128;
imshow(Image/255);
figure, imshow(Image_out/255);
result=im2bw(Image_out/255,0.48);
r=im2double(result);
g=im2double(result);
b=im2double(result);
imagen=cat(3,r,g,b);
figure, imshow(imagen);