亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

基于MFC和OpenCV實現角點檢測

2020-01-26 13:30:32
字體:
來源:轉載
供稿:網友

本文實例為大家分享了MFC和OpenCV實現角點檢測的具體代碼,供大家參考,具體內容如下

// 角點檢測 // 根據《基于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)          // 滑動條響應函數{ int  i,x,y,xl,yu,xr,yd,k; int  radius = 5; int  thickness = 1; double quality_level = (double) qualityLevel / 100 + 0.02; double min_distance = (double) minDistance;  cornerCount=cornerCount0;        // 設置最大角點數 cvGoodFeaturesToTrack(grayImage,    // 角點檢測 corners1,corners2,corners,&cornerCount, quality_level,min_distance,NULL);  if (cornerCount>0) {          // 測到角點 xl=ROI_rect.x;   yu=ROI_rect.y;  // 設置初始測試范圍 xr=ROI_rect.x+ROI_rect.width; yd=ROI_rect.y+ROI_rect.height; cvCopy(srcImage,ImageShow);     // 恢復源圖像 for (i=0,k=0;i<cornerCount;i++) {  x=(int)corners[i].x;  y=(int)corners[i].y;  if ((xl<x)&&(x<xr)&&(yu<y)&&(y<yd)) { // 范圍檢查  corners[k].x=corners[i].x; // 保存范圍內角點  corners[k].y=corners[i].y;  k++;  } } cornerCount=k;           // 范圍內角點數 cvCopy(srcImage,ImageShow); for (i=0;i<cornerCount;i++) {  x=(int)corners[i].x;  y=(int)corners[i].y;  cvCircle(ImageShow,cvPoint(x,y),  // 角點處畫圈  radius,color,thickness,CV_AA,0); } cvRectangle(ImageShow,cvPoint(xl,yu),cvPoint(xr,yd),  CV_RGB(0,255,0),thickness,CV_AA,0); // 畫矩形 cvShowImage("image", ImageShow);  // 顯示畫圈圖像 }} void on_mouse2(int event,int x,int y,int flags,void* param){                      // 鼠標響應函數 int thickness = 1; CvPoint point1,point2;  if (event == CV_EVENT_LBUTTONDOWN) {  // 鼠標左鍵按下 ROI_rect.x = x;           // 記錄檢測窗口一角坐標 ROI_rect.y = y; chek_area_state = 1;        // 設置狀態標志 } else if (chek_area_state && event == CV_EVENT_MOUSEMOVE) { // 鼠標移動 cvCopy(srcImage,ImageShow);     // 恢復原始圖像 point1 = cvPoint(ROI_rect.x, ROI_rect.y); point2 = cvPoint(x,y);       // 當前坐標 cvRectangle(ImageShow,point1,point2,CV_RGB(0,255,0),  thickness,CV_AA,0);     // 畫矩形 cvShowImage("image", ImageShow);  // 顯示檢測結果 cvWaitKey(20);           // 延時 } else if (chek_area_state && event == CV_EVENT_LBUTTONUP) { // 鼠標左鍵抬起 ROI_rect.width = abs(x - ROI_rect.x); // 記錄檢測窗口對角坐標 ROI_rect.height = abs(y - ROI_rect.y);  re_find_corners(0);         // 角點檢測 chek_area_state = 0;        // 恢復狀態標志 cvWaitKey(20);  }} void CCVMFCView::OnCornersTest()      // 角點檢測{ if (workImg->nChannels>1) {       // 原圖為真彩色圖像==3 srcImage = cvCloneImage(workImg); } else {                 // 原圖為灰階圖像 srcImage = cvCreateImage(cvGetSize(workImg),IPL_DEPTH_8U,3); cvCvtColor(workImg,srcImage,CV_GRAY2BGR); } 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);        // 設置顯示窗口 cvResizeWindow("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();}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产在线久久久| 久久777国产线看观看精品| 色伦专区97中文字幕| 国产一区二区三区毛片| 黑人精品xxx一区| 91精品国产成人www| 庆余年2免费日韩剧观看大牛| 亚洲第一页中文字幕| 亚洲第一福利网| 91精品国产高清| 亚洲色图偷窥自拍| 爽爽爽爽爽爽爽成人免费观看| 日韩免费看的电影电视剧大全| 欧美综合在线观看| 亚洲国产日韩欧美在线图片| 亚洲国产一区二区三区在线观看| 91性高湖久久久久久久久_久久99| 福利精品视频在线| 成人免费福利视频| 91免费人成网站在线观看18| 亚洲国产精品人久久电影| 欧美日韩国产一区在线| 国产欧美va欧美va香蕉在线| 国产欧美久久久久久| 中文字幕日韩av电影| 国产在线播放91| 欧美激情xxxx性bbbb| 国内外成人免费激情在线视频| 丝袜美腿精品国产二区| 国产一区欧美二区三区| 久久中文久久字幕| 狠狠色狠色综合曰曰| 国产日韩一区在线| 欧美精品18videosex性欧美| 国产午夜精品免费一区二区三区| 亚洲欧美国产制服动漫| 高清一区二区三区四区五区| 欧美不卡视频一区发布| 亚洲美女视频网| 91精品视频观看| 91热福利电影| 色综合久久久久久中文网| 尤物yw午夜国产精品视频明星| 国产亚洲精品久久久久久| 欧美中在线观看| 国产精品第3页| 亚洲视频欧美视频| 操日韩av在线电影| 精品色蜜蜜精品视频在线观看| 在线一区二区日韩| 亚洲人在线观看| 欧美性高潮在线| 色噜噜久久综合伊人一本| 亚洲国产一区二区三区四区| 日本精品免费一区二区三区| 日韩视频在线免费观看| 亚洲在线免费观看| 久久在线精品视频| 亚洲伊人第一页| 欧美俄罗斯性视频| 欧美日韩精品在线视频| 精品亚洲一区二区| 亚洲va男人天堂| 成人免费在线视频网址| 日韩免费电影在线观看| 久久久久久久久亚洲| 一区二区在线视频播放| 国产小视频91| 在线观看欧美成人| 91免费看国产| 色偷偷噜噜噜亚洲男人的天堂| 亚洲激情国产精品| 国产精品成人免费电影| 欧美一级bbbbb性bbbb喷潮片| 国内精品美女av在线播放| 欧美视频二区36p| 青草青草久热精品视频在线观看| 国产丝袜视频一区| 91免费在线视频网站| 国产丝袜一区二区| 亚洲韩国青草视频| 国产精品一区二区三区成人| 亚洲精品少妇网址| 91精品国产99久久久久久| 亚洲精品乱码久久久久久按摩观| 欧美美女操人视频| 日本久久中文字幕| 久久色免费在线视频| 色yeye香蕉凹凸一区二区av| 亚洲女人天堂视频| 日韩欧美极品在线观看| 日韩av免费在线观看| 91高清视频免费观看| 91精品视频观看| 久久久视频免费观看| 精品视频—区二区三区免费| 亚洲第一区在线| 久久91精品国产91久久久| 国产精品白嫩美女在线观看| 国产精品白嫩初高中害羞小美女| 亲爱的老师9免费观看全集电视剧| 精品亚洲aⅴ在线观看| 中文字幕欧美日韩va免费视频| 国产精品视频自拍| 国外成人在线视频| 亚洲欧洲成视频免费观看| 欧美成人精品在线| 国产在线精品一区免费香蕉| 国产福利精品在线| 18性欧美xxxⅹ性满足| 精品久久久久久久久国产字幕| 日韩欧美在线第一页| 中文字幕欧美精品日韩中文字幕| 欧美国产日韩中文字幕在线| 亚洲最大福利视频| 色偷偷9999www| 亚洲福利视频二区| 日韩国产中文字幕| 亚洲国产精品久久久久| 自拍偷拍亚洲欧美| 国产成+人+综合+亚洲欧洲| 国产亚洲欧洲高清一区| 中文字幕在线亚洲| 国产精品视频26uuu| 亚洲网址你懂得| 国产欧美亚洲视频| 亚洲欧美成人网| 亚洲偷熟乱区亚洲香蕉av| 欧美激情一区二区三区成人| 中文字幕欧美精品日韩中文字幕| 国产精品爽黄69天堂a| 深夜福利国产精品| 91沈先生在线观看| 激情av一区二区| 最近2019年中文视频免费在线观看| 日韩欧美aⅴ综合网站发布| 久久久久www| 日韩视频免费在线观看| 亚州成人av在线| 久久久中精品2020中文| 亚洲精品一区二三区不卡| 91精品久久久久久久久青青| 欧美性一区二区三区| 欧美成人h版在线观看| 日本欧美一二三区| 美女视频久久黄| 国产精品一区二区av影院萌芽| 福利精品视频在线| 国产一区二区丝袜高跟鞋图片| 久久777国产线看观看精品| 亚洲精品久久久久中文字幕二区| 久久精品成人欧美大片古装| 亚洲精品电影网| 亚洲第一黄色网| 992tv成人免费视频| 国产精欧美一区二区三区| 91久久中文字幕| 中文字幕免费精品一区高清| 九九精品视频在线| 亚洲free性xxxx护士hd| 中文字幕亚洲欧美日韩高清| 久久久久久久国产精品| 在线播放日韩专区| 欧美特级www|