C++ 将用于OCR处理的圆形文本区域转换为矩形区域-OpenCV C++;
我想将圆形文本区域转换为矩形文本区域,以便进行OCR处理。我使用了opencv的logpolar()函数。有时它会给出很好的结果,但有时文本似乎会根据文本区域在圆上的位置分成两部分。OCR过程运行良好(使用Tesseract+OpenCV)。但我的文本区域不在固定位置,文本总是以10位数字创建。我需要的解决方案是在所有可能的状态下工作。 问题说明: 我根据自己的想法编写代码。 首先我选择了ROI,然后处理这个ROI(稍后我将为固定ROI选择编写代码)。我使用轨迹栏尝试了所有可能的参数值。但结果并不好 请查看我的代码和其他结果 好结果,我总是想得到这样的结果: 坏结果: 坏结果: 我的代码C++ 将用于OCR处理的圆形文本区域转换为矩形区域-OpenCV C++;,c++,opencv,ocr,text-alignment,C++,Opencv,Ocr,Text Alignment,我想将圆形文本区域转换为矩形文本区域,以便进行OCR处理。我使用了opencv的logpolar()函数。有时它会给出很好的结果,但有时文本似乎会根据文本区域在圆上的位置分成两部分。OCR过程运行良好(使用Tesseract+OpenCV)。但我的文本区域不在固定位置,文本总是以10位数字创建。我需要的解决方案是在所有可能的状态下工作。 问题说明: 我根据自己的想法编写代码。 首先我选择了ROI,然后处理这个ROI(稍后我将为固定ROI选择编写代码)。我使用轨迹栏尝试了所有可能的参数值。但结果
int radius = 80;
int dr = 95;
logPolar(imcrop, polarr, Point2f(radius + dr, radius + dr), 30, WARP_FILL_OUTLIERS);
cv::rotate(polarr, finall, ROTATE_90_COUNTERCLOCKWISE);
resize(finall, finall, Size(640, 480));
threshold(finall, thresholded, 250, 255, THRESH_BINARY + THRESH_OTSU);
我想提取文本区域始终是一块。如何解决此问题?发布未经编辑的图像。1查找暗区。2将图像向左移动你在黑暗区域找到的像素量。如果不明显:你在角度函数中碰到了一个分支。