目标是使用文本识别方法(例如:OpenCV)为美国平面图图像创建边界框,然后可以将其输入文本阅读器(例如:LSTM或tesseract) .
已经尝试了几种已经尝试过cv2.findContours和cv2.boundingRect方法的方法,但很大程度上未能推广到不同类型的楼层平面图(楼层平面图的外观存在很大差异) .
例如,在应用cv2.findContours函数之前,使用灰度,自适应阈值,侵蚀和扩张(使用各种迭代)的cv2.findContours会产生下面的声音 . 请注意,卧室2和厨房没有正确拾取 .
无法找到任何区域的其他示例:
有关文本识别模型或清洁程序的任何想法,将提高文本识别模型的准确性,最好是代码示例?
1 回答
这个答案是基于图像彼此相似的假设(如它们的大小,墙壁厚度,字母......) . 如果它们不是,那么这不是一个好方法,因为你必须为每个图像更改阈值 . 话虽这么说,我会尝试将图像转换为二进制并搜索轮廓 . 之后,您可以添加高度,重量等标准来过滤掉墙壁 . 之后,您可以在蒙版上绘制轮廓,然后扩大图像 . 这将把彼此接近的字母组合成一个轮廓 . 然后,您可以为所有轮廓创建边界框,这是您的投资回报率 . 然后,您可以在该区域使用任何OCR . 希望它有点帮助 . 干杯!
例:
结果: