ImageMagick给图像去噪

什么是图像噪声

图像噪声是指存在于图像数据中的不必要的或多余的干扰信息。噪声的存在严重影响了遥感图像的质量,因此在图像增强处理和分类处理之前,必须予以纠正。

图像中各种妨碍人们对其信息接受的因素即可称为图像噪声 。噪声在理论上可以定义为“不可预测,只能用概率统计方法来认识的随机误差”。

如何通过ImageMagick给图像去噪

我们可以通过noisecleaner迭代地清除图像中的噪声。

方法如下:

第一步 - 安装ImageMagick

sudo apt-get install imagemagick

第二步 - 下载基于imagemagick的去噪脚本

wget -O noisecleaner "http://www.fmwconcepts.com/imagemagick/downloadcounter.php?scriptname=noisecleaner&dirname=noisecleaner"

第三步 - 添加脚本可执行的权限

chmod +x noisecleaner

第四步 - 执行去噪命令

./noisecleaner -m 2 -n 10 noise.png re_noise.jpg

碰到的坑

没有bc命令
root@vps:~# ./noisecleaner -m 2 -n 10 noise.png re_noise.jpg
./noisecleaner: 行 166: bc: 未找到命令
./noisecleaner: 第 167 行: [: -eq: 需要一元表达式

问题原因:

在ubuntu环境没有安装bc程序。bc是一种算数语言,通过命令行选项可以获得一个标准的数学库。命令行中列出的文件按所列顺序排列。在处理完所有文件后,BC从标准输入中读取。所有代码都在读取时执行。

解决办法:

apt-get install bc

参考资料

展开剩余53%