大家好,欢迎来到IT知识分享网。
ImageMagick基本介绍
ImageMagick是一款可以创建,编辑,合成,或转换图像的命令行工具。支持200多种的图像格式,常见的如PNG,JPEG,GIF,HEIC,TIFF,DPX,EXR,WebP,Postscript,PDF和SVG等。
同时也可以使用ImageMagick对图像调整大小,翻转,镜像,旋转,扭曲,剪切和变换图像,调整图像颜色,应用各种特殊效果,或绘制文本,线条,多边形,椭圆和Bézier曲线等。
在图像预处理中,我们可以通过ImageMagick简单快速的实现灰度化与二值化。
背景知识 – 图像像素点
在开始之前我们需要了解一下像素的知识。
对于一个像素点,我们会用RGB三个分量(R:Red,G:Green,B:Blue),即红、绿、蓝三原色来表示真彩色。
R分量,G分量,B分量的取值范围均为0~255。下面是常见的颜色的RGB值:
颜色名称 |
R |
G |
B |
黑色 |
0 |
0 |
0 |
蓝色 |
0 |
0 |
255 |
绿色 |
0 |
255 |
0 |
红色 |
255 |
0 |
0 |
黄色 |
255 |
255 |
0 |
白色 |
255 |
255 |
255 |
大家应该也了解在CSS的样式表中的颜色也是通过这种方法来表达的,如黑色#000000, 白色是#FFFFFF
我们以兔子先生的首页的图片为例子:
我们查看这张图片的详细信息,尺寸是400 * 400 的像素矩阵。也就是总共有个像素点,每个像素点是一个(R, G, B)的三维向量。
注意:
可能会有同学对dpi也有疑问,它是每英寸的像素点,英寸是长度单位,一英寸差不都多是2.5cm,我们在这里不做更多展开。
ImageMagick安装
在Ubuntu环境下,我们可以直接通过apt-get来进行安装
sudo apt-get install imagemagick
灰度化
什么叫图片的灰度化呢?灰度化就是让像素点矩阵中的每一个像素点都满足下面的关系:R=G=B 此时的这个值叫做灰度值。
这样做的好处是了减小图像原始数据量,便于后续处理时计算量更少,因为图像处理不一定需要对彩色图像的RGB三个分量都进行处理。
换句话说,将上述的(R, G, B)三维向量,可以当做一维向量来处理。
我们可以通过如下命令将图片灰度化:
convert in.jpg -type Grayscale gray.jpg
经过灰度化处理后,图像如下:
也可以选择指定灰度化的算法:
convert in.jpg -grayscale Rec709Luma gray.jpg
附算法名称和实现方式:
算法名 |
实现 |
Rec601Luma |
0.R’ + 0.G’+ 0.B’ |
Rec601Luminance |
0.R + 0.G + 0.B |
Rec709Luma |
0.R’ + 0.G’ + 0.072186B’ |
Rec709Luminance |
0.R + 0.G + 0.072186B |
Brightness |
max(R’, G’, B’) |
Lightness |
(min(R’, G’, B’) + max(R’, G’, B’)) / 2.0 |
Average |
(R’ + G’ + B’) / 3.0 |
MS |
(R’^2 + G’^2 + B’^2) / 3.0 |
RMS |
sqrt( (R’^2 + G’^2 + B’^2) / 3.0 ) |
二值化
在经过灰度化处理后,已经显著减小了图像的数据信息,但是还不过,我们需要二值化进一步处理。
什么叫图像的二值化?二值化就是让图像的像素点矩阵中的每个像素点的灰度值为0(黑色)或者255(白色),也就是让整个图像呈现只有黑和白的效果。
在数字图像处理中,二值图像占有非常重要的地位,图像的二值化使图像中数据量大为减少,从而能凸显出目标的轮廓。
在灰度化的图像中灰度值的范围为0~255,在二值化后的图像中的灰度值范围是0或者255。
我们可以通过如下命令,将原始图像直接二值化:
convert in.jpg -monochrome out.jpg
效果如下:
当然如果需要阈值可调整,可以在灰度化后,再二值化:
convert gray.jpg -threshold 55% out.jpg
我们分别选择了20%, 50%, 80%三个阈值效果如下:
20%的效果:
50%的效果:
80%的效果:
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/71062.html