zoukankan      html  css  js  c++  java
  • 将OpenCV捕获的摄像头加载到picture控件中

    CRect rect;
     CStatic* pStc;
     CDC* pDC;
     HDC hDC;


     pStc = (CStatic*)GetDlgItem(IDC_CAM);//IDC_CAM是Picture控件的ID

    //拿到控件的大小
     pStc->GetClientRect(&rect);

    //获取控件的句柄
     pDC = pStc->GetDC();
     hDC = pDC->GetSafeHdc();
     //声明IplImage指针
     IplImage* pFrame = NULL;
     //获取摄像头
     CvCapture* pCapture = cvCreateCameraCapture(-1);

     while(1)
     {
      pFrame = cvQueryFrame(pCapture);
      if(!pFrame)break;

    //CvvImage.h和CvvImage.cpp在OPENCV2.2之后的版本就没了,自己去下载个就行了
      CvvImage m_Cvv;
      m_Cvv.CopyOf(pFrame,pFrame->nChannels);
      m_Cvv.DrawToHDC(hDC,&rect);

    //等待30秒或按ESC键退出
      char c = cvWaitKey(30);
      if(c==27)break;
     }

    //释放
     cvReleaseCapture(&pCapture);
     cvDestroyWindow("video");

  • 相关阅读:
    hw笔试题-01
    tcp
    linux schedule
    arm架构学习
    skyeye
    RTOS
    systemdump相关
    sdio
    linux kernel 多线程
    linux内核同步
  • 原文地址:https://www.cnblogs.com/dengpeng1004/p/3539850.html
Copyright © 2011-2022 走看看