前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数字图像学习4(图像的浮雕效果)

数字图像学习4(图像的浮雕效果)

作者头像
GavinZhou
发布2019-05-26 10:03:19
5780
发布2019-05-26 10:03:19
举报

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Gavin__Zhou/article/details/47379563

图像的浮雕效果根据生成的算法不一样,效果也不太一样,作为练习程序,自己写了两个; (1)取主对角线除右下角外的各点之和的平均值,减去右下角点的值,再加上填充背景色,再加上一个背景常数,会形成类似浮雕的效果。 算法如下:

代码语言:javascript
复制
y(i,j)= 0.25*img(x-2,y-2)+0.25*img(x-1,y-1)+0.25*img(x,y)+0.25*img(x+1,y+1)+0.25*img(x+2,y+1)+128

源码:

代码语言:javascript
复制
%实现图像的浮雕效果
temp_img = imread('C:\Users\Administrator\Desktop\1.jpg');
size_info=size(temp_img);
height=size_info(1);
width=size_info(2);
spec_img=zeros(height,width,3);
% img_temp=rgb2gray(temp_img);

for i=2:height-1
    for j=2:width-1
        if temp_img(i,j,:) == 255
            spec_img(i,j,:) = 255;
        else
            spec_img(i,j,:)=double(temp_img(i-1,j-1,:))-double(temp_img(i+1,j+1,:))+128;
        end

    end
end
figure,imshow(temp_img);
figure,imshow(spec_img/255);

效果对比如下:

原图
原图
浮雕效果的图
浮雕效果的图

(2)简化版本,直接对角线上左上减去右下加上一个常数 算法:

代码语言:javascript
复制
y(i,j) = img(x-1,y-1)-img(x+1,y+1)+128

代码:

代码语言:javascript
复制
temp_img=imread('C:\Users\Administrator\Desktop\1.jpg');  
size_info=size(temp_img);  
height=size_info(1);  
width=size_info(2);  
spec_img=zeros(height,width,3);   

for i=2:height-1  
    for j=2:width-1  
        spec_img(i,j,:)=double(temp_img(i-1,j-1,:))-double(temp_img(i+1,j+1,:))+128;  
    end  
end  
figure,imshow(temp_img);   
figure,imshow(spec_img/255); 

效果图:

这里写图片描述
这里写图片描述

基本没什么区别。。。。。。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015年08月09日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档