opencv 轮廓的长度,面积,外接矩形(平行坐标轴),处接最小矩形,处接圆 , 椭圆

代码如下:

#include 
#include 
#include 
#include 
using namespace std;

int main()
{
	IplImage *src = cvLoadImage("f:\\images\\test2.bmp",CV_LOAD_IMAGE_GRAYSCALE);
	CvMemStorage *storage = cvCreateMemStorage();
	CvSeq *seq = NULL;
	int cnt = cvFindContours(src,storage,&seq);
	seq = seq->h_next;
	double length = cvArcLength(seq);
	double area = cvContourArea(seq);
	CvRect rect = cvBoundingRect(seq,1);
	CvBox2D box = cvMinAreaRect2(seq,NULL);
	
	cout<<"Length = "<

输入图像 为bmp格式(自己用纯黑画的,已经是二值了), 如果用我下面的图片直接另存为,则就先载入图像,然后灰度化,再二值化



结果:





你可能感兴趣的:(opencv)