中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Opencv處理圖像之輪廓提取

發布時間:2020-10-17 02:26:20 來源:腳本之家 閱讀:107 作者:代碼敵敵畏 欄目:編程語言

本文實例為大家分享了Opencv處理圖像之輪廓提取,使用cvfindContours對圖像進行輪廓檢測,供大家參考,具體內容如下

#include<iostream>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
int main()
{
 
 IplImage* img = cvLoadImage("E:\\test.bmp",0); 
 IplImage* imgColor = cvCreateImage(cvGetSize(img),8,3);
 IplImage* contoursImage = cvCreateImage(cvSize(img->width,img->height),8,1);
 
 cvNamedWindow("hui");
 cvShowImage("hui",img);
 cvThreshold(img,img,100,255,CV_THRESH_BINARY); //二值化圖像以100為閥值
 cvNamedWindow("2");
 cvShowImage("2",img);
 
 CvSeq* contours = 0,* contoursTemp =0; 
 cvZero(contoursImage);
 
 cvCvtColor(img,imgColor,CV_GRAY2BGR); //顏色轉化函數
 
 
 //img :需要提前的圖片需要二值
 //storage:存放的空間
 //contours:指向輪廓提取的第一個輪廓
 //sizeof(CvContour):采用的是哪一種結構以及大小
 //CV_RETR_LIST:輪廓存儲方式
 //CV_CHAIN_APPROX_NONE:采用坐標集表示輪廓
 CvMemStorage* storage = cvCreateMemStorage(0);
 int total = cvFindContours(img,storage,&contours,sizeof(CvContour),CV_RETR_LIST,CV_CHAIN_APPROX_NONE,cvPoint(0,0)); 
 printf("%d",total); //輸出總的輪廓數
 contoursTemp = contours;
 
 while(contoursTemp!=0){
 for(int i = 0;i<contoursTemp->total;i++){
 CvPoint *pt = (CvPoint*)cvGetSeqElem(contoursTemp,i);
 cvSetReal2D(contoursImage,pt->y,pt->x,255.0);
 cvSet2D(imgColor,pt->y,pt->x,cvScalar(0,0,255.0));
 }
 contoursTemp = contoursTemp->h_next; 
 }
 cvNamedWindow("img");
 cvShowImage("img",imgColor);
 cvNamedWindow("contoursImage");
 cvShowImage("contoursImage",contoursImage);
 cvWaitKey(0);
 return 0;
}

Opencv處理圖像之輪廓提取

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肇东市| 岚皋县| 肥西县| 石阡县| 垦利县| 彰武县| 高州市| 长岭县| 古交市| 南阳市| 嫩江县| 屏南县| 高陵县| 长兴县| 汉川市| 黔南| 吴江市| 商丘市| 东城区| 北川| 启东市| 齐齐哈尔市| 信丰县| 建宁县| 利川市| 靖宇县| 阿鲁科尔沁旗| 定陶县| 虎林市| 岱山县| 屯留县| 泸西县| 甘南县| 屏东市| 桐梓县| 交口县| 永宁县| 陈巴尔虎旗| 洪雅县| 临夏市| 华亭县|