小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

OpenCV讀取圖像顯示在MFC窗口上

 行走在理想邊緣 2019-05-09

                             OpenCV讀取圖像顯示在MFC窗口上

                 1.   在MFC上創(chuàng)建一個(gè)圖片控件,自己修改ID,比如IDC_PICTURE,并且添加對(duì)應(yīng)的變量 CStatic m_PictureControl

                 2.   在打開(kāi)圖片的按鈕觸發(fā)事件中添加如下代碼:

  1. namedWindow("ImageShow", CV_WINDOW_KEEPRATIO); // 用OpenCV創(chuàng)建一個(gè)窗口
  2. CRect cWindowRect;
  3. m_PictureControl.GetClientRect(&cWindowRect); // 獲取控件窗口大小
  4. int nWindowWidth = cWindowRect.Width();
  5. int nWindowHeight = cWindowRect.Height();
  6. resizeWindow("ImageShow", nWindowWidth, nWindowHeight);
  7. hPictureWindow = (HWND)cvGetWindowHandle("ImageShow"); // 獲取OpenCV窗口的句柄
  8. hParentWindow = ::GetParent(hPictureWindow);
  9. ::SetParent(hPictureWindow, GetDlgItem(IDC_PICTURE)->m_hWnd); // 關(guān)聯(lián)OpenCV窗口和MFC的控件窗口
  10. ::ShowWindow(hParentWindow, SW_HIDE);
  11. GetDlgItem(IDC_PICTURE)->ShowWindow(0); // 開(kāi)始不顯示圖片控件
  12. CFileDialog dlg(TRUE, _T("*,JPG"), NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, _T("image files (*.jpeg; *.jpg; *.bmp;*.png) |*.jpeg; *.jpg; *.bmp | All Files (*.*) |*.*||"));
  13. if (IDOK == dlg.DoModal())
  14. m_strPath = dlg.GetPathName();
  15. string strName = CT2A(m_strPath); // CString和string之間的類(lèi)型轉(zhuǎn)換
  16. sourceImage = imread(strName);
  17. // m_nChannels = sourceImage.channels();
  18. imshow("ImageShow", sourceImage);
  19. GetDlgItem(IDC_PICTURE)->ShowWindow(1); // 顯示圖片控件

                3.   在關(guān)閉圖像時(shí),只需要加入如下代碼:

  1. GetDlgItem(IDC_PICTURE)->ShowWindow(0);
  2. destroyWindow("ImageShow"); // 銷(xiāo)毀窗口

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多