因为我是学机械出身, 机械行业最常见的零件就是回转件, 所以就先写个椭圆检测吧. 回转件大部分是圆形, 由于视角的关系, 圆形可能就变成了椭圆, 如何检测椭圆? 首先得二值化吧(canny threshold什么的) 然后findcontours 下一步应该用个什么算法, 判定哪些点是椭圆, 然而我暂时还不会, 所以就没有写, 估计一个月内能写出吧, 所以这一步就暂时用了约束条件, 一个是构成椭圆的最少点数, 一个是椭圆的长轴短轴要在一个范围内. 其实还可以再用面积约束一下, 这几个约束是糊弄人的, 我就没弄 下一步该干什么? 来个fitellipse~ 算法写的好, 可能都不用这样, 直接进行下一步 最后drawellipse 这就完成了
程序代码在github上 传送门 --------------------------------------------------------------------------------------------------------------------------------- 2016.4.11 20:00 代码更新
传送门 |
|