前面讲到了二次线性插值的应用。这一篇来给大家讲一下关于锐化、柔化、扩散、雕刻这几个滤镜的实现。
一、锐化
锐化的算法很简单,就是比较相邻的几个像素,把当前像素加上和周围的像素的差就可以了。这里我给出一个示例:
->ABCD
EFGH
IJKL
MNOP->
假设有一个图片,4*4,共16个像素,分别用A--L来代表。我们先观察这个图片,只有中间的F,G,J,K这四个像素的“邻居”是全的。
为了简便起见,我们只处理这4个像素,因为在实际的图片中由于图片的大小都很多像素组成,所以周围的一圈像素不做处理不会影响到最终的效果。
先计算差值:
->Delta=F-(A B C E G I J K)/8
(A B C E G I J K)/8就是F周围的像素的平均值,->
将这个平均值乘以一个系数再加到F上,就得到了一个新的F值:
->F=F Delta*Alpha->
这个系数Alpha就是锐化度,改变这个系数就能得到不同的锐化效果。不过一...[ 查看全文 ]