用opencv统计运动物体的个数

1.使用vibe算法、高斯算法等等去对视频进行运动物体的提取,继而得到一帧帧的只包含黑色(背景)和白色(前景)的图片。

2.使用cvFindContours函数对步骤1中得到的图片进行处理,比如我是这样用的cvFindContours(src, storage, &seq, sizeof(CvContour), CV_RETR_EXTERNAL, CV_CHAIN_APPROX_SIMPLE, cv::Point(0, 0)),这个函数的返回值是物体的个数,src是步骤1中得到的图片。

3.步骤2中的seq可以依次访问到每一个物体,比如获取一个物体的最小外接矩形的面积:double areaSeq = fabs(cvContourArea(seq));继而可以使用诸如面积、周长等信息进行进一步的过滤和计算。

 

你可能感兴趣的:(用opencv统计运动物体的个数)