image - 通过旋转图像检测并修复文本倾斜

标签 image opencv image-processing computer-vision

有没有一种方法(使用 OpenCV 之类的东西)来检测文本倾斜并通过旋转图像来纠正它?差不多是这样?

enter image description here

enter image description here

如果您知道角度,旋转图像似乎很容易,但对于我正在处理的图像,我不会……需要以某种方式检测它。

最佳答案

根据您的上述评论,这里是基于教程 here 的代码, 上图效果很好,

来源

enter image description here

旋转

enter image description here

 Mat src=imread("text.png",0);
 Mat thr,dst;
 threshold(src,thr,200,255,THRESH_BINARY_INV);
 imshow("thr",thr);

  std::vector<cv::Point> points;
  cv::Mat_<uchar>::iterator it = thr.begin<uchar>();
  cv::Mat_<uchar>::iterator end = thr.end<uchar>();
  for (; it != end; ++it)
    if (*it)
      points.push_back(it.pos());

  cv::RotatedRect box = cv::minAreaRect(cv::Mat(points));
  cv::Mat rot_mat = cv::getRotationMatrix2D(box.center, box.angle, 1);

  //cv::Mat rotated(src.size(),src.type(),Scalar(255,255,255));
  Mat rotated;
  cv::warpAffine(src, rotated, rot_mat, src.size(), cv::INTER_CUBIC);
 imshow("rotated",rotated);

编辑:

另见答案 here , 可能会有帮助。

关于image - 通过旋转图像检测并修复文本倾斜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23283532/

相关文章:

image - 检测图像中的小点

ruby-on-rails - 仅转换具有回形针样式的特定文件类型的图像

image - 如何获得SVG路径以进行缩放以适应?

javascript - 没有找到 Eclipse 图像资源?

java - RGB 模糊算法

css - 用 <li> 显示包含 <img> 的文本

python - 导入错误 : No module named opencv after installing python-opencv

debugging - 如何在 Visual C++ 中调试外部库 (OpenCV)?

ios - 带 libc++ 的 Tesseract-OCR 3.02

java - 如何在java中像MATLAB imread()一样读取图像?