我试图找到图像中的圆圈,并将它们翘曲回规范视图(即仿佛看着中心)。但是,一般项目中的圆圈在透视变换下会省略。因此,我第一检测椭圆,大致执行以下操作(在OpenCV中):如何纠正检测到的椭圆
1. Find contours in the image
2. Estimate area of contour
3. Fitting a bounded box to contour and estimating area by width/2 * height/2 * PI (area of ellipse)
4. checking if area of contour and estimated area of ellipse is < a threhsold
假设我已经通过这种方法发现了一个椭圆,我怎样才能纠正它回到一个圆,使得I“撤消”透视转换(虽然不是在平面旋转,因为我猜不能这样做)。例如,如果它是一个矩形,我只需计算从竖直矩形的四个角到检测到的投影的单应矩阵。
我不知道如何用椭圆做到这一点,任何帮助,非常感谢。
由于
您可以假设椭圆周围的边界矩形(宽度/高度是常见的椭圆参数)并将其投影到一个正方形?!? – Micka 2014-10-04 10:17:03
@Micka由于在普通透视变换下方形不会变形为矩形,因此您必须检测比矩形更复杂的边界四边形。 – AldurDisciple 2014-10-04 17:28:57