⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 18-6.cpp

📁 基于OpenCV的计算机视觉技术实现.rar
💻 CPP
字号:

// ************************* 程序 18-6 ****************************
/*** 程序功能:
    canny边缘检测

// ***************************************************************/


//
/*

#include "cv.h"
#include "cxcore.h"
#include "highgui.h"

int main ( int argc, char **argv )
{
    //声明IplImage指针
    IplImage *pImg = NULL; 
    IplImage *pContourImg = NULL;

    CvMemStorage *storage = cvCreateMemStorage ( 0 );
    CvSeq *contour = 0;
    int mode = CV_RETR_EXTERNAL;

    //创建窗口
    cvNamedWindow ( "src", 1 );
    cvNamedWindow ( "contour", 1 );

    //载入图像,强制转化为Gray
    if ( ( pImg = cvLoadImage ( "4.png", 0 ) ) != 0 )
    {
        cvShowImage ( "src", pImg );

        //为轮廓显示图像申请空间
        //3通道图像,以便用彩色显示
        pContourImg = cvCreateImage ( cvGetSize ( pImg ), IPL_DEPTH_8U, 3 );
        //将图像转换为BGR模式
        cvCvtColor ( pImg, pContourImg, CV_GRAY2BGR );

        //查找contour 提取黑色背景下的物品轮廓
        cvFindContours ( pImg,
                         storage,
                         &contour,
                         sizeof ( CvContour ),
                         mode,
                         CV_CHAIN_APPROX_SIMPLE );
    }
    else
    {
        //销毁窗口
        cvDestroyWindow ( "src" );
        cvDestroyWindow ( "contour" );
        cvReleaseMemStorage ( &storage );

        return -1;
    }




    //将轮廓画出    
    cvDrawContours ( pContourImg, contour, CV_RGB ( 0, 255, 0 ), CV_RGB ( 0, 0, 0 ), 1, 1, 8 );
    //显示图像
    cvShowImage ( "contour", pContourImg );

    cvWaitKey ( 0 );

    //销毁窗口
    cvDestroyWindow ( "src" );
    cvDestroyWindow ( "contour" );
    //释放图像
    cvReleaseImage ( &pImg ); 
    cvReleaseImage ( &pContourImg ); 

    cvReleaseMemStorage ( &storage );

    return 0;
}



  //*/

⌨️ 快捷键说明

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