如何找到(找出)图像的像素化部分

Posted

技术标签:

【中文标题】如何找到(找出)图像的像素化部分【英文标题】:How to find(figure out) pixelated part of image 【发布时间】:2020-03-12 08:51:21 【问题描述】:

我想找到图像的像素化部分。 例如,

然后,我想通过边界框找到像素化的“区域”。 起初,我认为 R-CNN 可能会有所帮助,但后来,我认为仅使用传统方法也可以解决这个问题,例如寻找图像熵的差异......等等。 有什么方法可以解决这个问题吗? 谢谢。

【问题讨论】:

不要急于接受我的回答...放几天,你可能会得到更好的结果,但如果你接受,很少有人会费心回答... ;-)跨度> 【参考方案1】:

只是大声思考...像素化区域是纯色区域,因此它们的方差和标准偏差非常低,因此,我们可以尝试使用 ImageMagick 进行一些实验,它包含在大多数 Linux 发行版都可用于 macOS 和 Windows。

如果我们拍摄您的图像并转为灰度,然后计算每个像素周围 7x7 区域的标准偏差,然后反转以使标准偏差最低的区域变亮,然后标准化为完整的黑白范围,然后阈值最亮的像素:

convert p.png -colorspace gray -statistic standarddeviation 7x7  -negate -normalize -threshold 99.99% result.png

稍微改变一下数字:

convert p.png -colorspace gray -statistic standarddeviation 3x3  -negate -normalize -threshold 99.9% result.png

【讨论】:

以上是关于如何找到(找出)图像的像素化部分的主要内容,如果未能解决你的问题,请参考以下文章

UISlider 拇指图像像素化

图像经过Canny算子处理后如何获取边缘位置的像素坐标

如何在 Xcode 的 Storyboard 中保持高分辨率图像而不使其像素化?

像素化图像,使用 PHP 从中选择可打印的(Pantone)颜色?

Flutter 2 渲染图像像素化

如何检查具有不同像素化的两张图像的相似性