gpt4 book ai didi

c - 如何识别图像来自针式打印机

转载 作者:行者123 更新时间:2023-11-30 14:37:55 25 4
gpt4 key购买 nike

我正在使用 Tesseract 使用 Charles Weld C# 包装器进行 OCR 字符识别。我正在使用 Open CV 预处理图像。

我的问题是,如果图像来自点阵打印输出,我需要以不同的方式预处理图像。有没有办法使用 OpenCV 来判断图像是从点阵打印输出扫描的?

我尝试过一次模糊图像并使用 AbsDiff 计算差异,这是我用来检测图像是否需要去斑的技术,但没有一致的结果表明点矩阵。

最佳答案

我有一些想法,并决定将它们放在 ImageMagick 中,但你同样可以使用 OpenCV 及其 findContours().

我用它作为输入图像:

enter image description here

如果您使用形态学稍微侵 eclipse 黑色区域(或者扩大白色,效果相同),每个点都会与相邻的点分开。如果您随后进行“连通分量分析”,您将看到图像具有异常大量的非常小的点,这些点的高度与宽度大致相同 - 圆形或点的特征。

这是我在终端中用于运行 ImageMagick 的代码:

magick  dotmatrix.png -threshold 50% -morphology dilate disk:1 \
-define connected-components:verbose=true \
-connected-components 8 -auto-level result.png

输出是此图像,其中每个检测到的 Blob 都会获得逐渐变亮的白色阴影:

enter image description here

更有趣的是详细输出,图像中检测到的每个 Blob 都有一行输出。它显示了许多 2x2、3x2 和类似大小的小点,面积约为 7 个像素,用红色圈出。我会以此为基础来探索更多...

enter image description here

关于c - 如何识别图像来自针式打印机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56959738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com