【问题标题】:Removing black areas from a scanned image with C#使用 C# 从扫描图像中去除黑色区域
【发布时间】:2012-08-27 10:44:39
【问题描述】:

我有一堆图像,看起来像 。

处理后,我希望它们像。
我知道我可以使用 Flood Fill 算法轻松地将那些黑色区域变为白色。但首先我需要确保黑色区域不是文本的一部分。我怎样才能做到这一点?与字母相比,这些区域是巨大的。所以也许我可以找出每个黑色区域的大小,并将大于 n 的区域变为白色?

【问题讨论】:

    标签: c# image image-processing


    【解决方案1】:

    这就是机器视觉的全部内容。 您可以为“Connected-Component-Labeling”之类的内容编写自己的代码 这只是一种可能的方法。 因此,您可以从左上角开始收集所有具有几乎相同灰度值的像素。如果数组包含的像素多于某个阈值,则保存坐标并填充该区域。

    但我认为你会有一些问题,中间有黑色“线”。

    【讨论】:

    • 非常感谢。不,“黑线”不是问题,而是算法的速度问题。
    • 是的,可能是有更快的算法。也考虑过使用渐变来找到外线,但你仍然必须弄清楚如何消除“中线”
    猜你喜欢
    • 1970-01-01
    • 2016-02-28
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 2011-09-22
    • 2016-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多