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%