0 0 0
0 1 0
0 0 0
生成者:
$ convert -size 3x3 xc:black -fill white -draw 'point 1,1' origin.png
使用2x1矩形作为具有中心点(0,0)的内核:
处理者:
$ convert origin.png -morphology Dilate Rectangle:2x1+0+0 output.png
0 0 0
1 1 0
0 0 0
0 0 0
0 1 1
0 0 0
为什么输出意外?我不知道ImageMagick如何处理膨胀。
这是我的理解:
当内核的中心点迭代到原始图像的位置(0,1)时:
我认为(0,1)应该在执行AND操作后1
。
答案 0 :(得分:-1)
2x1内核的“中心点”在像素之间。因此,您必须选择哪个是官方的“起源”。这是任意的。但是,在定义内核时,可以在ImageMagick中设置原点。参见https://imagemagick.org/Usage/morphology/#user
例如对于2x1内核,它可以是
2x1+0+0: 0,1
or
2x1+1+0: 0,1