OpenCV函数 cvFindContours提取轮廓
提取元素的轮廓及形状描述子
提取轮廓的点坐标
轮廓提取后,它是用关键点组成的,下面提取出这些关键点。
1.先输出所有关键点的个数cout<<"elements"<<contour->total<<endl;
2.for(int i=0;i<contour->total;++i)
{
CvPoint* p = CV_GET_SEQ_ELEM(CvPoint,contour,i);
cout<<p->x<<","<<p-y<<endl;
}
求轮廓的面积和周长
for(contour;contour!=NULL;contour=contour->h_next)
{
double s=cvContourArea(contour,CV_WHOLE_SEQ);
double l=cvArcLength(contour,CV_WHOLE_SEQ,-1);//后面参数0表示轮廓不闭合,正数表示闭合;负数表示计算序列组成的面积;提取的角点以list形式时,用负数。
cout<<"面积s:"<<s<<‘ ‘<<"周长L:"<<L<<endl;
}
OpenCV提取图像轮廓总结
时间: 2024-11-04 23:01:48