您的位置:首页 > 运维架构

opencv:边缘特征

2015-11-20 10:54 155 查看
越来越发现,英文技术资料的质量逼中文的好太多了。以后尽量不看中文的

本文是这一帖子的笔记:http://opencv-python-tutroals.readthedocs.org/en/latest/py_tutorials/py_imgproc/py_contours/py_contour_features/py_contour_features.html

内容提要:

一.opencv中常用的边缘特征有哪些

二.上述特征用什么语句可以求出

1. Moments(矩)

2. Contour Area

Contour area is given by the function cv2.contourArea() or
from moments, M[‘m00’].

3. Contour Perimeter 周长

 cv2.arcLength()

4. Contour Approximation 近似轮廓,明明不是方形可以匹配成方形,具体算法Ramer–Douglas–Peucker algorithm (https://en.wikipedia.org/wiki/Ramer%E2%80%93Douglas%E2%80%93Peucker_algorithm)

5.Convex Hull 

cv2.convexHull()

得到凸形的轮廓,进而还能计算凹进去的部分,即图中箭头部分。

 

6.Checking Convexity 检查一个curve是不是凸形的

cv2.isContourConvex()

7. Bounding Rectangle 框住目标的矩形

7.a. Straight Bounding Rectangle 竖直的

7.b. Rotated Rectangle 角度可旋转的

8. Minimum Enclosing Circle 框住目标的最小圆形

9.Fitting an Ellipse 与目标最匹配的椭圆,但是不知如何匹配的

10.Fitting a Line 与目标最匹配的直线,但也不知是如何匹配的

总结:在我们识别项目里可以用到哪些呢?

1.矩可以用来识别,区分目标

4.可以用来将有小的边缘波动的目标与样本进行匹配?并衡量匹配程度?

5.包括目标的凸形可以用来分辨目标,因为粗看看轮廓

10.可否用来提取目标的主轴?

下一步的计划:

1.Contour Approximation 近似轮廓的具体算法Ramer–Douglas–Peucker algorithm,可以学一学

2.Fitting a Line 与目标最匹配的直线,但也不知是如何匹配的,可以了解下

3.同一系列的下一篇帖子:轮廓的属性:http://opencv-python-tutroals.readthedocs.org/en/latest/py_tutorials/py_imgproc/py_contours/py_contour_properties/py_contour_properties.html(已完成)

4.同一系列其他帖子,知道opencv都有哪些操作:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: