版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、原图45度J35度浮雕效果70度160度浮雕效果这里取一张灰度图像来体现浮雕的效果。叮以看出,浮雕效果的体现 其实就是在边界处产生光照或阴影的效果,使得图像不同的颜色的色 块看起来呈现出不同程度的凸出或凹陷。在MATLAB中需要采用图像 滤波的方法來实现这个效果。45度135度浮雕效果生成的代码如下:I=imread Ctimg. jpg*);电朮入图像h= 0, -1, -4; 1, 0, -1; 4,1, 0 ; %45。方向算子J=filter2 (h, I)八调用滤波函数i=4,0,-1;0,-1,-4 ;%135 方向算子D=filter2 (i, I);、调用滤;皮函数H=J+B;
2、imshow (I) , title (* 原图 *);figure, imshow(H, ), title (*浮雕效果RP ) ; *在新窗【1中显示效果图首先来说最关键的函数filter2o Filter2 (a, b)中,a为滤波用矩阵, b为原先的矩阵。其基本运算方法和上次报告中的filter类似,不同 的是滤波矩阵以左上角元素与一个个像素重合,依次移动,其相关值 的计算结果,就是这个像素经过滤波后的值。这样來看这个方向滤波 算子的形式就很好理解了,正数部分就是加强的方向,也就是浮雕中 光线照过来的方向,反Z负数的方向就是浮雕中阴影的方向。这样, 该程序生成的效果就是把原图浮雕化后,
3、光线分别从45度和135度 照射过来的效果。两个方向同时打光的效果可以让浮雕的效果更真 实,如果只打一个方向的光阴影和光线都会十分明显,但是使图像本 身就变得不真实了。在此基础上,参考老师给的文献,很容易得岀任意方向浮雕的实现代码,此处以70度T60度举例:I=imread (f timg. jpgf)八读入图像a=70;h=-sin(a)-cos(a),-cos(a)tsin(a)-cos (a) ;-sin(a) / 0r sin(a);-sin (a)+cos (a) r cos (a) , sin (a) +cos (a) ; %a 方向算子J=filter2 (h, I)八调用滤波函
4、数a=af50;h=-sin(a)-cos(a) , -cos(a),sin(a)-cos (a) ;-sin(a), 0r sin(a);-sin (a)+cos (a) r cos (a) f sin (a) +cos (a) ; %a+90 方向算(B=filter2 (h, I)八调用滤波函数imshovz (I) , title (原图);figurer imshow(Hr ), title (1浮雕效果图1) ; *任新窗口中显示效果图I -(sin a -r cos a一 cos asin a cosa-sin qw0sin a-(sin a - eg a)cos asin a
5、十 cosay原理图如上,根据图中公式,很简单的就可以算出任惫方向的浮雕对应的滤 波器。经过试验也可以很容易看出,其矩阵中的值会根据a值的不同, 运算出该加强哪个方向的像素亮度,减少哪个方向的像索亮度,从而 在滤波后达到想要的浮雕效果。要注意的是放后在imshow函数中,要采用传递第二个参数的方式 把灰度值压缩到0-255中的方法,来让最后的图像正常的显示。原图油画效果1油画效果2油画效果3如上所示,可以看出油画效果对比原图来看,细节不是那么突出了, 边界更加圆滑,图像更像是用一个个色块拼成的效果。其算法并不是 用普通的滤波器实现的,而是由史复杂的非线性算法实现的,卜面通 过讲解代码的方式來进
6、行算法的解释。代码如下:I=imread(timgl jpg1);I=ulnt16(I);out=I;mr nf z=size (I);r=3;intensity=20;for i=l:intensity+1sumR (i)=0;sumG(i)=0;sumB(i)=0;sum (i) =0;endfor i=l:mfor j=l: nfor k=i-r:i+rpet=0;for l=j-r:j+rif (k0&k0&丄=n)R=I(k,l,l);G=I (k,l,2);B=I(k,1,3);plns=fix( ( R + G + B )/3.0)*intensity/255)+1;sumR(p
7、ins)=sumR(pins)+R;sumG(pins)=sumG(pins)+G;sumB(pins)=sumB(pins)+B;sum (pins)=sum(pins)+1;endendendsumr sun=sort (sum);finalR=sumR(sun(intensity+1)/sum(intensity+1); finalG=sumG(sun(intensity+1)/sum(intensity+1); finalB=sumB(sun (intensity+1)/sum(intensity+1); out(ir j,1)=finalR;out (i,j/2)=finalG;ou
8、t (ir jr 3)=finalB;for h=l:intensity+1sumR(h)=0;sumG (h) =0;sumB(h)=0;sum (h)=0;endendoutl=uint8(out);imshow (outl);首先提岀油画效果需要的两个参数,一个是半径r, 一个是强度 intensityo r就是进行处理的半径,r越大色块的半径越大,其相邻像 素的区别越小,图像本身越模糊。其次强度代表了图像的点状化程度, 强度越髙,图中的色块越小,相邻像素的颜色区别就越大,边界也会 越不平直,不规则。如上3张效果图,第一张的参数半径为3,强度 为30;第二张的参数半径为10,强度为30;
9、第三张的参数半径为3, 强度为60。其次我们来说明基本的算法。首先根据r确定一个(2r+l) * (2r+l) 矩阵,其中间的像素就是而要输出的像素。我们來遍历每个矩阵区域 中的像素,读取该像索的rgb值,通过公式fix( R + G + B )/3.0)*intensity/255)+l算岀当前像素的相对强度,可见其取值是 lintensity+lo 因此这里有 4 个数组,siimR. sumG, sumB, sum,其 都有intensity+1位,对应像素相对强度的等级个数。Sum矩阵的第x 位,记录了相对强度为x的像索的个数,相对应的sumR的第x位, 记录了相对强度为x的像素的R值之和,sumG, sumB同理。算过所 有(2r+l) * (2r+l)个像索Z后,通过排序选出像索个数最多的相 对等级,这些像素平均的rgb值就是输出像素的rgb值。对于每一个 像素都做如此运算,就可以得到汕画的结果。对干其中需要注意的问题有两点,一是边界处理,这里的算法由于不 论是补0还是循环或是镜像效果,都对图像本身的像索输出会产生错 误影响,因此采用了忽略边界的算法,也就是如果矩阵边界超岀图像 范国,则超岀的部分不取像索,不参与运算。其次是运算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届银川市重点中学高三英语第一学期期末达标测试试题含解析
- 票据管理制度适用范围(3篇)
- 药品纸箱管理制度范本(3篇)
- 设计工时管理制度范本(3篇)
- 辅材配件管理制度范本(3篇)
- 野生种质资源圃管理制度(3篇)
- 防疫临时驻场人员管理制度(3篇)
- 食品品质责任管理制度内容(3篇)
- 疾病预防与安全应急 溺水的预防与急救 课件2025-2026学年人教版初中+体育与健康七年级全一册
- 中学学生社团财务管理制度
- 2026年药店培训计划试题及答案
- 2026春招:中国烟草真题及答案
- 六年级寒假家长会课件
- 物流铁路专用线工程节能评估报告
- 2026河南省气象部门招聘应届高校毕业生14人(第2号)参考题库附答案
- 2026天津市南开区卫生健康系统招聘事业单位60人(含高层次人才)备考核心试题附答案解析
- 2025江苏无锡市宜兴市部分机关事业单位招聘编外人员40人(A类)备考笔试试题及答案解析
- 卵巢过度刺激征课件
- 汉服行业市场壁垒分析报告
- 重睑手术知情同意书
- 2026华润燃气校园招聘(公共基础知识)综合能力测试题附答案解析
评论
0/150
提交评论