图像锐化方法

时间:2011-09-03 19:04:34

标签: image-processing genetic-algorithm

我正在做一个项目,我将使用遗传算法优化一组过滤器和参数,用于锐化图像。 我目前正在阅读冈萨雷斯的“数字图像处理”一书,并研究任何关于图像处理的内容,因为我对这个领域有点新意。

我正在寻找一个锐化方法列表...即非锐化掩模,高通滤镜,拉普拉斯锐化等。如果您熟悉图像处理,是否有任何滤镜可以推荐用于锐化图像(包含“调整”的参数?)

谢谢!

2 个答案:

答案 0 :(得分:4)

通常,锐化会增加像素之间的对比度。天真的实现经常沿着边缘引入“晕圈”,这可能在感知上没有吸引力。诸如双边过滤器之类的技术试图解决该问题。近年来有一些有趣的技术,Andrew Adams在http://www.stanford.edu/class/cs448f/lectures/2.1/Sharpening.pdf

中详细介绍了现代算法的概念。

看看接近结束的一些方法:

双边&三边过滤器

针对MultiScale色调和细节操作的边缘保留分解

盲解卷积(没有已知内核的卷积)

当然,如果您有多个图像,或者您正在处理的图像的任何信息(例如主题的其他清晰图像),您通常可以使用基于图像的各种学习技术做得更好先验。

处理图像和尝试一些锐化技术的一个很好的通用框架是OpenCV,它存在python绑定。

答案 1 :(得分:1)

一个简单,快速和简单的想法通常有效的算法(不知道是否有其他人已经想过这个)是这样的:

  • N 将代表锐度增加。值为0会使图像保持不变,值为1可能是锐度的两倍,值为-1会使图像非常模糊和奇怪。
  • 现在,对于图像中每个像素的每种颜色,执行此操作
    • 调用当前值 V ,当前颜色 C ,当前列 X 和当前行 Y
    • 将X设置为相邻像素之间的最大差异,如下所示:
      M = biggestAbsoluteValueBetween(
      X - (the Cth color of the Yth row of the (X - 1)th column),
      X - (the Cth color of the Yth row of the (X + 1)th column),
      X - (the Cth color of the (Y - 1)th row of the Xth column),
      X - (the Cth color of the (Y + 1)th row of the Xth column)
      )
    • 最后,将 M 然后 N 的差异添加到新锐化图像中当前像素的当前颜色值,如下所示:{{2} }

附录

我希望我成功地以任何编程语言的任何人都能理解的方式进行交流。如果你有建议,或者提高这个答案的易读性,那么就去吧