【问题标题】:Rotate Circular Images旋转圆形图像
【发布时间】:2014-12-06 10:12:01
【问题描述】:

您好,我要对圆形图像进行文本检测。 经过一些预处理后,我对图像进行极坐标到笛卡尔变换

这是我的真实形象的例子

进行 p2c 转换后,我的图像变得像

但由于我的图像来自不同的角度,有时 p2c 转换会剪掉我的角色

我认为我需要在 p2c 转换之前进行适当的旋转。

我的问题是哪种旋转方法适合这种情况?还是我应该根据直方图值开始 p2c 转换?或者你们会建议我什么样的其他方式?

谢谢

【问题讨论】:

  • 您可以在结果图像数据上使用circshift。这会将文本翻译到您想要的位置。

标签: matlab opencv image-processing image-rotation


【解决方案1】:

我建议您进行极坐标到笛卡尔转换并分析生成的图像X。您可以通过将 x 维度上的所有值相加并使用阈值来检测是否有字母来找到您的字母:

y = sum(X,1);
th = (max(y) + min(y)) / 2;
letters = y < th;

现在您可以找出图像的边框是否有字母,如果是则移动图像。

if sum(letters([1:10,end-10:end]))
   X = circshift(X,[0,10]);
end

当然你现在不能确定边界处没有字母,所以最好循环这个过程,直到边界处没有找到字母。

【讨论】:

  • 你好,文献上有什么方法可以用吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-13
  • 1970-01-01
  • 2017-10-08
  • 1970-01-01
  • 2014-09-07
  • 1970-01-01
相关资源
最近更新 更多