b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

stretchdibits_halcon himage bitmap_dibrgbcolors(5)

电脑杂谈  发布时间:2017-02-04 08:10:18  来源:网络整理

void CCVMFC0View::OnCannyBorddetec() // Canny 边缘检测 { // 根据《学习OpenCV》例 2-6 改编 // 定义工作位图 IplImage* pImage; IplImage* pImg8u = NULL; IplImage* pImg8uSmooth = NULL; IplImage* pImgCanny = NULL; //** 输入待处理图像 ** // 修改部分 1 pImage = workImg; // 建立辅助位图 pImg8u =cvCreateImage(cvGetSize(pImage),IPL_DEPTH_8U,1); pImg8uSmooth=cvCreateImage(cvGetSize(pImage),IPL_DEPTH_8U,1); pImgCanny =cvCreateImage(cvGetSize(pImage),IPL_DEPTH_8U,1); // 图像处理 cvCvtColor(pImage, pImg8u,CV_BGR2GRAY); cvSmooth(pImg8u, pImg8uSmooth,CV_GAUSSIAN,3,0,0); cvCanny(pImg8uSmooth, pImgCanny,100,200,3); // 释放位图 cvReleaseImage(&pImg8u); cvReleaseImage(&pImg8uSmooth); //** 输出处理结果 ** // 修改部分 2 m_dibFlag = ImageReplace(pImgCanny, &workImg); //** 设置标志及刷新窗口 ** m_ImageType=1; Invalidate(); }

形参书写顺序

演示程序CVMFC是Windows API系统与OpenCV两种体系函数的混合使用,而它们的函数参数的书写习惯是不同的,极容易引起混淆。这里作一简要说明,请看下面例子:

目标参数Dest <-- 源参数Src

C: memcpy( pDest, pSrc, size); Windows API: BitBlt( hDestDC, 0, 0, wid, hei, hSrcDC, 0, 0, SRCCOPY); VC++: pDestDC->BitBlt( 0, 0, p->wid, p->hei, pSrcDC, 0, 0, SRCCOPY);

源参数Src --> 目标参数Dest

OpenCV: cvCvtColor( pSrcImg, pDestcImg, CV_BGR2GRAY); cvSmooth( pSrcImg, pDestcImg, CV_GAUSSIAN, 3, 0, 0);

演示程序中除了OpenCV函数采用后一书写形式外,其他函数都采用前一书写形式,千万注意不能混淆。OpenCV函数很容易辨认,都以前缀cv-开头,如cvCvtColor、cvSmooth。新增函数ImageClone与imageReplace因为调用OpenCV函数,故也采用后一书写形式。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-30453-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...