contour.cpp

来自「于仕琪的OpenCV基础+教程的程序实例」· C++ 代码 · 共 33 行

CPP
33
字号
#include "cv.h"#include "highgui.h"int main( int argc, char** argv ){    IplImage* src;    // 第一条命令行参数确定了图像的文件名。    if( argc == 2 && (src=cvLoadImage(argv[1], 0))!= 0)    {        IplImage* dst = cvCreateImage( cvGetSize(src), 8, 3 );        CvMemStorage* storage = cvCreateMemStorage(0);        CvSeq* contour = 0;        cvThreshold( src, src, 1, 255, CV_THRESH_BINARY );        cvNamedWindow( "Source", 1 );        cvShowImage( "Source", src );        cvFindContours( src, storage, &contour, sizeof(CvContour), CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE );        cvZero( dst );        for( ; contour != 0; contour = contour->h_next )        {            CvScalar color = CV_RGB( rand()&255, rand()&255, rand()&255 );            /* 用1替代 CV_FILLED  所指示的轮廓外形 */            cvDrawContours( dst, contour, color, color, -1, CV_FILLED, 8 );        }        cvNamedWindow( "Components", 1 );        cvShowImage( "Components", dst );        cvWaitKey(0);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?