opencv函数 cvContourArea 计算轮廓面积

来源:互联网 发布:单身男女约会软件 编辑:程序博客网 时间:2024/05/29 18:26

我也不知道这算不算原创,但又不是转载和翻译,如果不算请谅解。在csdn里有好多大神贡献了自己的研究,让我学到了不少东西,非常感激!今天我也把知道的一点点分享出来,共同进步!好了废话不说了!

最近研究视频运动目标提取,在提取目标的时候需要将面积小的目标屏蔽掉,于是就想到了opencv的这个函数  cvContourArea,发现这个函数很诡异,它到底返回的是什么面积?鼓捣了好几天终于搞清楚了。


这个面积指的是连通域轮廓线所包含的区域的面积(别喷我,这不是废话)。轮廓线包含N个顶点,这些顶点的位置是对应像素的中心点,面积就是从这些个中心点开始算的。下面我上个简易图(比较烂,但是聪明如你会明白的)。


上图中左侧7个小方格表示一个连通区域(目标),黑点表示轮廓线的顶点,虚线就表示轮廓线,那么这个轮廓的面积计算方法就是图右侧。以左上角第一个方格为例,顶点和轮廓线与这个像素的相交部分为1/8个像素,因此该方格区域的面积取1/8,其他同理,最后计算面积为2.5,大家可以试试。

1 0
原创粉丝点击