專案名稱: OpenCVLoadImage

應用程式類型: 單一文件介面

基底類別:下拉選單選擇CFormView

 

----------------------------------------分隔線----------------------------------------

 

方案組態: 下拉選單選擇Release

設定專案屬性

-> C/C++ -> 其他Include目錄 -> C:\OpenCV2.1\include\opencv

-> 連結器 -> 其他程式庫目錄 -> C:\OpenCV2.1\lib

-> 連結器 -> 其他相依性 -> cxcore210.lib cv210.lib highgui210.lib

-> 組態屬性 -> 一般 -> 字元集 -> 使用多位元組字元集

 

----------------------------------------分隔線----------------------------------------

類別檢視 -> COpenCVLoadImageDoc滑鼠雙擊開啟OpenCVCameraDoc.h

1. 加入#include "highgui.h"

2. 加入成員變數

public:
CImage m_image;                  //  CImage即CvvImage

 ----------------------------------------分隔線----------------------------------------

資源檢視 -> Menu -> 滑鼠雙擊IDR_MAINFRAME ->

選擇[檔案]-> 選擇[開新檔案] -> 按滑鼠右鍵 -> [加入事件處理常式]->

訊息類型->COMMAND->類別清單COpenCVLoadImageView->按下[加入並編輯]

自動開啟 OpenCVLoadImageView.cpp

void COpenCVLoadImageView::OnFileNew()
{
    // TODO: 在此加入您的命令處理常式程式碼
    Invalidate();                                               // 清空畫面
    COpenCVLoadImageDoc *pDoc = GetDocument();
    pDoc->m_image.~CvvImage();                   // 刪除圖片  
}

 

----------------------------------------分隔線----------------------------------------

資源檢視 -> Menu -> 滑鼠雙擊IDR_MAINFRAME ->

選擇[檔案]-> 選擇[開啟舊檔] -> 按滑鼠右鍵 -> [加入事件處理常式]->

訊息類型->COMMAND->類別清單COpenCVLoadImageView->按下[加入並編輯]

自動開啟 OpenCVLoadImageView.cpp

void COpenCVLoadImageView::OnFileOpen()
{
    // TODO: 在此加入您的命令處理常式程式碼
    COpenCVLoadImageDoc *pDoc = GetDocument();
    CFileDialog fileDlg(true);
    if(fileDlg.DoModal() == IDOK)
    {
       Invalidate();                              // 清空畫面
       string szFileName = fileDlg.GetFileName(); // 圖片路徑+檔名
       pDoc->m_image.Load(szFileName.c_str());    // 載入圖片       
    }

}

在OpenCVLoadImageView.cpp這個檔案前幾行中(最後一個#include之後)

加入using namespace std;

 

----------------------------------------分隔線----------------------------------------

類別檢視 -> COpenCVLoadImageDView -> 按滑鼠右鍵出現選單後選擇[屬性]

->點選[訊息]按鈕 -> 選擇WM_PAINT下拉選單 -> 加入OnPaint事件

void COpenCVLoadImageView::OnPaint()
{
    CPaintDC dc(this); // device context for painting
    // TODO: 在此加入您的訊息處理常式程式碼
    // 不要呼叫圖片訊息的 CFormView::OnPaint()
    COpenCVLoadImageDoc *pDoc = GetDocument();
    CRect r;                                        // 矩形繪製範圍:r
    r.left = 0;
    r.top = 0;
    r.right  = pDoc->m_image.Width();
    r.bottom = pDoc->m_image.Height();
    pDoc->m_image.DrawToHDC( dc.GetSafeHdc(), r);
}

原始程式: OpenCVLoadImage

arrow
arrow
    全站熱搜

    me1237guy 發表在 痞客邦 留言(0) 人氣()