1

我正在使用基于 SVM 分类的 HOG 特征检测器。我可以成功提取车牌,但提取的车牌除了车牌号外还有一些不必要的像素/线。我的图像处理管道如下:

  1. 在灰度图像上应用 HOG 检测器
  2. 裁剪检测到的区域
  3. 重新调整裁剪图像的大小
  4. 使用以下Opencv代码应用自适应阈值来突出显示车牌号和过滤背景

    cvAdaptiveThreshold(cropped_plate, thresholded_plate, 255,CV_ADAPTIVE_THRESH_GAUSSIAN_C, CV_THRESH_BINARY_INV,11, 9);
    
  5. 去偏板图像

由于这些不必要的信息,Tesseract-OCR软件变得无法正确识别数字。提取的车牌图像如下所示。

在此处输入图像描述 在此处输入图像描述

如何从图像中过滤这些不必要的像素/线条?任何帮助将不胜感激。

4

2 回答 2

2

您要删除图像中的所有非文本对象。为此,我建议按边界框的区域(maxy - miny)*(maxx - minx)对 blob 进行排序。做一些统计分析;您知道您正在寻找类似大小的对象。确定字符的大致大小后,制作一个更大的边界框来估计整个文本。将小斑点保留在其中,因此对于您的图片,将保留破折号。

于 2014-11-14T05:16:33.017 回答
0

通过过滤轮廓,您可能会取得很多成就。尝试找到具有一定宽度/高度比、一定数量的白色像素countNonZero()等的轮廓。如果这没有帮助,您总是可以尝试实现文本检测算法,如运行长度平滑算法(RLSA)。

于 2014-11-12T14:53:38.480 回答