【问题标题】:Remove border of license plates with OpenCV (python)使用 OpenCV(python)删除车牌的边框
【发布时间】:2017-09-02 09:05:36
【问题描述】:

我裁剪了车牌,但它们有一些边框我想删除边框以分割字符,我尝试使用霍夫变换,但这不是一个有前途的方法。以下是车牌样本:

有什么简单的方法吗?

【问题讨论】:

    标签: python opencv image-processing


    【解决方案1】:

    我对一张图片有一个幼稚的解决方案。您必须调整一些参数以将其推广到其他图像。

    由于清晰,我选择了第三张图片。

    1。阈值

    在这种情况下,第一步是达到最佳阈值,其中所有感兴趣的字母/数字都转换为相同的像素值。结果我得到了以下结果:

    2。寻找轮廓和边界区域

    现在我发现图像中存在外部轮廓以保留字母/数字。找到它后,我找到了相应轮廓的边界矩形:

    3。裁剪

    接下来我使用了从包围轮廓返回的参数并使用它们来裁剪图像:

    瞧!那里有你感兴趣的区域!

    注意:

    • 如果所有图像都以相似的方式和相同的色彩空间拍摄,则此方法将有效。提供的第二张图像具有不同的颜色。因此,您必须更改阈值参数才能正确分割您的 ROI。
    • 您还可以对阈值图像进行一些形态学操作以获得更好的 ROI。

    【讨论】:

    • 感谢您的解决方案,我的问题是通过使用阈值消除了许多字符,到目前为止,我无法确定正确的阈值参数。 (我试过Otsu,Adaptive Gaussian),有什么办法不用二值化就能找到车牌吗?
    • 二值化是 OCR 作为预处理步骤的最佳选择。您可以对图像进行上采样、二值化并进行一些形态学操作。
    猜你喜欢
    • 2020-03-07
    • 2021-11-16
    • 2015-06-10
    • 1970-01-01
    • 2017-10-28
    • 1970-01-01
    • 2021-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多