更改图像的像素值以删除日期

时间:2014-11-29 13:37:41

标签: image colors pixel editing

删除相机嵌入任何图像的日期的最有效方法是什么。

任务是准备一个脚本/代码/软件,它将从给定的输入图像文件(jpeg,png)中删除日期。

请让我知道实现这一目标的最佳方式。

谢谢。

2 个答案:

答案 0 :(得分:0)

我不确定你是否希望某些法律上无法察觉的或多或少地消除分心的东西。希望后者: - )

稍微测量一下,显示日期位于以下位置:

150x40+650+520

即。 150像素宽,40像素高,位于左上角右侧650像素,左上角下方520像素。

因此,一种方法是将图像片段直接复制到日期之下,并将其粘贴在日期之上,这可以在ImageMagick中通过以下命令完成:

convert sign.jpg \( +clone -crop 150x40+650+560 +repage \) -geometry +650+520 -composite out.jpg

这就是说...拍摄原始图像并创建它的副本(+克隆),然后剪切crop命令命令后指定的片段并重置,就好像它是左上角一样( + repage)。然后将该图像粘贴(-composite)在原始图像顶部的偏移+ 650 + 520处,并将结果保存为out.jpg

这不是一个精美的工程解决方案,但可能是good enough。可能需要将该区域模糊一点,以帮助伪装它。或者,可以选择日期内的颜色并使它们透明,然后将原始图像移位到透明孔后面以填充它们 - 我没有选择该选项,因为它更难,因为你可能不喜欢ImageMagick,并且日期字段中实际上有几种颜色,从棕色到金黄色,选择它们而不影响图像的其余部分可能会开始获得fun

enter image description here

ImageMagick是免费的,适用于here的Windows,OSX,Linux等。无论如何,它已经准备好安装在大多数Linux发行版上。

答案 1 :(得分:0)

以下是该问题的另一种方法。您可以使用Imageagick确定图像右下角的平均颜色(尺寸为250px宽x 100px高):

ave=$(convert sign.jpg -gravity southeast -crop 250x100+0+0 -scale 1x1 -format "%[pixel:p{0,0}]" info:)

这将为您提供此图片的值srgb(199,181,119)。现在,您可以创建一个颜色矩形(200px x 50px)并将其叠加到图像上,然后将边缘模糊一点以将其混合:

convert sign.jpg \( -size 200x50 xc:"$ave" \) -geometry +970+780 -composite -region 240x90+950+760 -blur 0x10 out.jpg

enter image description here