photoshop图像滤镜——浮雕算法(含matlab与C代码).pdf

photoshop图像滤镜——浮雕算法(含matlab与C代码).pdf

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
photoshop图像滤镜——浮雕算法(含matlab与C代码)

一、photoshop 图像滤镜——浮雕算法 浮雕的算法是对图像的每一个点进行卷积处理,采用的矩阵如下 [1 0 0;0 0 0;0 0 -1]; 假设原图像为X,处理后的图像为Y ,也就是说,对于坐标为(i,j) 点,其浮雕效果图的算法为Y(i,j)=X(i-1,j-1)-X(i+1,j+1)+128。当然, X,Y 的取值均在0~255 之间。 matlab 代码如下: [plain] view plaincopy 1. img=imread(9.jpg); 2. size_info=size(img); 3. height=size_info(1); 4. width=size_info(2); 5. spec_img=zeros(height,width,3); 6. img_temp=rgb2gray(img); 7. 8. for i=2:height-1 9. for j=2:width-1 10. spec_img(i,j,:)=double(img(i-1,j-1,:))-double(img(i+1,j+1,:))+128; 11. end 12. end 13. 14. imshow(spec_img/255); 原图: 效果图: 相应的C 代码如下: [plain] view plaincopy 1. void emboss(unsigned char r[1000][1000],unsigned char g[1000][1000],unsigned char b[1000][1000],unsigned char output_r[1000][1000],unsigned char output_ g[1000][1000],unsigned char output_b[1000][1000],int height,int width) 2. { 3. int i,j; 4. //rgb 为输入图像的3 个通道,output r g b 为输出图像的通道 5. for(i=0;iheight;i++) 6. for(j=0;jwidth;j++) 7. { 8. output_r[i][j]=128; 9. output_g[i][j]=128; 10. output_b[i][j]=128; 11. } 12. 13. for(i=1;iheight-1;i++) 14. for(j=1;jwidth-1;j++) 15. { 16. output_r[i][j]=r[i-1][j-1]-r[i+1][j+1]+128; 17. output_g[i][j]=g[i-1][j-1]-g[i+1][j+1]+128; 18. output_b[i][j]=b[i-1][j-1]-b[i+1][j+1]+128; 19. } 20. } 欢迎各位朋友多多指教,欢迎分享,并且请您注明出处 (wsfdl)

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档