基於MFC和OpenCV實現角點檢測

2022-09-28 01:48:13 字數 2115 閱讀 8919

// 角點檢測

// 根據《基於opencv的計算機視覺技術實現》

#define max_corners 200; // 限定的最大角點數

iplimage* srcimage = 0; // 待處理的源影象

iplimage* imageshow = 0; // 儲存顯示帶角點的影象

iplimage* grayimage = 0; // 原始影象轉換成的灰階影象

iplimage* corners1 = 0; // 臨時影象

iplimage* corners2 = 0; // 臨時影象

int cornercount0 = max_corners;

int cornercount; // 實際測得角點數

int qualitylevel = 0; // 最小質量因子

int mindistance = 15; // 角點最小距離

cvscalar color = cv_rgb(255,0,0); // 繪圖顏色

cvpoint2d32f corners[200]; // 角點座標

cvrect roi_rect; // 測試範圍

char chek_area_state = 0; // 滑鼠狀態

void re_find_corners(int) // 滑動條響應函式

else

cvflip(srcimage);

grayimage = cvcreateimage(cvgetsize(srcimage),ipl_depth_8u,1);

cvcvtcolor(srcimage,grayimage,cv_bgr2gray); // 轉換為灰階影象

imageshow = cvcloneimage(srcimage);

roi_rect.x =0;

roi_rect.y =0;

roi_rect.width = grayimage->width;

roi_rect.height = grayimage->height;

corners1 = cvcreateimage(cvgetsize(grayimage),ipl_depth_32f,1);

corners2 = cvcreateimage(cvgetsize(grayimage),ipl_depth_32f,1);

cvnamedwindow("image",0); // 設定顯示視窗

cvresizewindozizufsw("image",325,350); // 改變視窗尺寸

cvcreatetrackbar("角點最小距離", "image", // 設定距離滑動條

&mindistance, 200,re_find_corners);

cvcreatetrackbar("最小質量因子","image", // 設定質量滑動條

&qualitylevel,100,re_find_corners);

re_find_corners(0); // 角點檢測

cvsetmousecallback("image",on_mouse2,0); // 設定滑鼠響應函式

cvwaitkey(0); // 等待鍵輸入

cvdestroywindow( "image" ); // 關閉視窗

cvreleaseimage(&srcimage); // 釋放影象儲存單元

cvreleaseimage(&grayimage);

cvreleaseimage(&corners1);

cvreleaseimage(&corners2);

cvflip(imageshow);

m_dibflag=imagereplace(imageshow,&workimg); // 輸出檢測結果

m_imagetype=-2;

invalidate();

}本文標題: 基於mfc和opencv實現角點檢測

本文位址:

MFC 基於OpenCV的魔鏡

最近半個月事情太多了,參加了泰迪杯資料探勘,參加學院的科技節,科技節裡面總共我參加了數學建模 ps 軟體設計製作 電子設計大賽這4個。還有期中考。英語 作業。今天終於忙的差不多,有時間來總結一下前段時間的收穫了。魔鏡是我用來參加這個軟體製作比賽的。該程式用vs 2013進行程式設計,基於mfc框架,...

MFC 基於OpenCV的魔鏡

最近半個月事情太多了,參加了泰迪杯資料探勘,參加學院的科技節,科技節裡面總共我參加了數學建模 ps 軟體設計製作 電子設計大賽這4個。還有期中考。英語 作業。今天終於忙的差不多,有時間來總結一下前段時間的收穫了。魔鏡是我用來參加這個軟體製作比賽的。該程式用vs 2013進行程式設計,基於mfc框架,...

opencv實現Harris角點檢測

include include include include include includeusing namespace std using namespace cv harris角點檢測 blocksize是鄰域大小,對每個畫素,考慮blocksize blocksize大小的鄰域,計算鄰域上...