www.tjgcgs88.cn-狠狠久久亚洲欧美专区不卡,久久精品国产99久久无毒不卡,噼里啪啦国语版在线观看,zσzσzσ女人极品另类

  • <strike id="qgi8o"><td id="qgi8o"></td></strike>
  • <ul id="qgi8o"><acronym id="qgi8o"></acronym></ul>
  • <li id="qgi8o"></li>
    <ul id="qgi8o"></ul>
    <strike id="qgi8o"><rt id="qgi8o"></rt></strike>
    <ul id="qgi8o"><center id="qgi8o"></center></ul>
  • <kbd id="qgi8o"></kbd>

    opencv(3):findcontours講解及實(shí)例

    findContours函數(shù)在圖像處理中主要用于輪廓查找。其函數(shù)原型為void findContours(InputOutputArray image, OutputArrayOfArrays contours, OutputArray hierarchy, int mode, int method, Point offset=Point())。

    參數(shù)解釋如下:

    - InputOutputArray image:參數(shù)必須為二值單通道圖像,定義黑色為背景,白色為識別目標(biāo);即單通道圖像、灰度圖像,更常用的為canny邊緣檢測算子處理后的圖像。

    - OutputArrayOfArrays contours:contours參數(shù)為檢測的輪廓數(shù)組,每一個輪廓用一個point類型的vector表示,每一個元素為一個3維數(shù)組(其形狀為(n,1,2),其中n表示輪廓點(diǎn)個數(shù),2表示像素點(diǎn)坐標(biāo)),表示一個輪廓。

    - OutputArray hierarchy:hiararchy參數(shù)和輪廓個數(shù)相同,每個輪廓contours[ i ]對應(yīng)4個hierarchy元素hierarchy[ i ][ 0 ] ~hierarchy[ i ][ 3 ],分別表示后一個輪廓、前一個輪廓、父輪廓、內(nèi)嵌輪廓的索引編號,如果沒有對應(yīng)項(xiàng),該值設(shè)置為負(fù)數(shù)。

    - int mode:mode表示輪廓的檢索模式,具體相關(guān)如下表所示:

    - CV_RETR_EXTERNAL:只檢測外輪廓
    - CV_RETR_LIST:檢測的輪廓不建立等級關(guān)系,都是同級。不存在父輪廓或內(nèi)嵌輪廓
    - CV_RETR_CCOMP:建立兩個等級的輪廓。上面一層為外邊界,里面一層為內(nèi)孔的邊界信息
    - CV_RETR_TREE:建立一個等級樹結(jié)構(gòu)的輪廓

    - int method:method表示為輪廓的近似辦法。具體參數(shù)如下表所示:

    - CV_CHAIN_APPROX_NONE:存儲所有的輪廓點(diǎn),相鄰的兩個點(diǎn)的像素位置差不超過1。即max(abs(x1-x2),abs(y2-y1))==1
    - CV_CHAIN_APPROX_SIMPLE:壓縮水平方向,垂直方向,對角線方向的元素,只保留該方向的終點(diǎn)坐標(biāo),例如一個矩形輪廓只需4個點(diǎn)來保存輪廓信息
    - CV_CHAIN_APPROX_TC89_L1、CV_CHAIN_APPROX_TC89_KCOS:使用teh-Chinl chain 近似算法

    - Point offset=Point():offset:輪廓點(diǎn)的偏移量,格式為tuple,如(-10,10)表示輪廓點(diǎn)沿X負(fù)方向偏移10個像素點(diǎn),沿Y正方向偏移10個像素點(diǎn)。

    返回值及相關(guān)提示:根據(jù)上面介紹,返回值為contours、hiararchy;提示:findContours函數(shù)處理后會對輸入圖像進(jìn)行修改。若保留原圖像,應(yīng)先copy一份圖像,對copy的圖像進(jìn)行處理,這里一般先用Mat來存放一張臨時圖像。

    findcontours函數(shù)一般會搭配approxPolyDP函數(shù)、contourArea函數(shù)、drawContours函數(shù)、convexHull函數(shù)、boundingRect函數(shù)、minAreaRect函數(shù)、minEnclosingCircle函數(shù)、fitEllipse函數(shù)、ellipse函數(shù)來使用。

    使用findContours函數(shù)處理之后的輪廓信息contours可能過于復(fù)雜不平滑,可以用approxPolyDP函數(shù)對該多邊形曲線做適當(dāng)近似;contourArea函數(shù)可以得到當(dāng)前輪廓包含區(qū)域的大小,方便輪廓的篩選;findContours經(jīng)常與drawContours配合使用,用來將輪廓繪制出來。得到了復(fù)雜輪廓往往不適合特征的檢測,這里再介紹一個點(diǎn)集凸包絡(luò)的提取函數(shù)convexHull,輸入?yún)?shù)就可以是contours組中的一個輪廓,返回外凸包絡(luò)的點(diǎn)集;還可以得到輪廓的外包絡(luò)矩形,使用函數(shù)boundingRect,如果想得到旋轉(zhuǎn)的外包絡(luò)矩形,使用函數(shù)minAreaRect,返回值為RotatedRect;也可以得到輪廓的外包絡(luò)圓,對應(yīng)的函數(shù)為minEnclosingCircle;想得到輪廓的外包絡(luò)橢圓,對應(yīng)的函數(shù)為fitEllipse,返回值也是RotatedRect,可以用ellipse函數(shù)畫出對應(yīng)的橢圓;如果想根據(jù)多邊形的輪廓信息得到多邊形的多階矩,可以使用類moments,這個類可以得到多邊形和光柵形狀的3階以內(nèi)的所有矩,類內(nèi)有變量m00,m10,m01,m20,m11,m02,m30,m21,m12,m03,比如多邊形的質(zhì)心為 x = m10 / m00,y = m01 / m00;如果想獲得一點(diǎn)與多邊形封閉輪廓的信息,可以調(diào)用pointPolygonTest函數(shù),這個函數(shù)返回值為該點(diǎn)距離輪廓最近邊界的距離,為正值為在輪廓內(nèi)部,負(fù)值為在輪廓外部,0表示在邊界上。

    通過使用findContours函數(shù),可以對二值圖像中的輪廓進(jìn)行查找和提取,為后續(xù)的圖像處理和分析提供基礎(chǔ)。使用不同參數(shù)可以調(diào)整輪廓的檢測精度和效率,通過配合其他函數(shù),可以實(shí)現(xiàn)輪廓的近似、面積篩選、繪制、凸包提取、邊界矩形和圓的計(jì)算、矩計(jì)算以及與點(diǎn)的關(guān)系判斷等功能,為圖像特征提取和識別提供支持。

    相關(guān)評說:

  • 揣親18522446149: 如何在Eclipse中配置OpenCV開發(fā)環(huán)境 -
    定結(jié)縣軸承: ______ 首先去官網(wǎng)下載OpenCV并安裝,接著新創(chuàng)建一個Java項(xiàng)目:OpenCV12. 配置Java Build Path: 2.1 右擊項(xiàng)目OpenCV1 -> Build Path -> Configure Build Path -> Libraries -> AddLibrary; 2.2 選擇 User Library,依次點(diǎn)擊Next -> User Libraries -> New;...
  • 揣親18522446149: python opencv3中如何查看是否有backgroundsubtractormog -
    定結(jié)縣軸承: ______ BackgroundSubtractorMOG2就在cv命名空間中,所以可以正常使用.對于使用BackgroundSubtractorMOG,這個函數(shù)在cv::bgsegm中,如果你沒有正確導(dǎo)入頭文件,就會出現(xiàn)未定義問題.如果你想正確使用BackgroundSubtractorMOG這個函數(shù),你應(yīng)該在頭文件中引入!
  • 揣親18522446149: win怎么安裝opencv環(huán)境 -
    定結(jié)縣軸承: ______ 下載opencv for windows安裝包,我下的是目前最新的安裝包opencv-2.4.8版本.雙擊打開解壓,我的解壓目錄為D:\Program Files.2 解壓后D:\Program Files下多了一個opencv文件夾,里面只有兩個文件,如下圖所示:3 右鍵單擊計(jì)算機(jī)-屬性-...
  • 揣親18522446149: 如何在ubuntu14.04中安裝opencv3 -
    定結(jié)縣軸承: ______ OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安裝cmake.ubuntu下安裝cmake比較簡單,apt-get install cmake apt-get install libgtk2.0-dev(下面兩步安裝編譯必須的庫) apt-get install pkg-config 然后你們下載openc-2.4....
  • 揣親18522446149: opencv3.0.0怎樣寫載入圖像 -
    定結(jié)縣軸承: ______ Mat color,gray; gray = imread("main.bmp" , CV_LOAD_IMAGE_GRAYSCALE);//讀取灰度圖 color = imread("main.bmp");//讀取彩圖
  • 揣親18522446149: opencv3.3.0附加依賴項(xiàng)怎么配置 -
    定結(jié)縣軸承: ______ OpenCV3.0環(huán)境變量配置 1 選擇計(jì)算機(jī),右鍵屬性->高級系統(tǒng)設(shè)置->環(huán)境變量->系統(tǒng)變量->找到PATH->在變量值中添加相應(yīng)路徑 小編的路徑是“D:\opencv3.0\opencv\build\x64\vc12\bin”注意不要在路徑最后加分號,但兩條路徑間就得加上分號.
  • 揣親18522446149: linux opencv 怎么看源代碼 -
    定結(jié)縣軸承: ______ 1、找到Opencv的安裝目錄,例如安裝目錄在F盤,找到相應(yīng)的安裝目錄如下所示2、可以看到上圖中有兩個目錄文件夾,而要找的源代碼就在source這個文件夾下,打開這個目錄3、在上圖中找到modules,打開后可以看到很多文件夾,每個文件夾下都存放了不同類型領(lǐng)域的源代碼.
  • 揣親18522446149: opencv用c語言怎樣識別出一片區(qū)域的紅綠燈并判別顏色
    定結(jié)縣軸承: ______ 判別顏色:取某區(qū)域內(nèi)顏色的RGB各分量數(shù)值(或YUV分量數(shù)值)和,分別判斷各分量之間的比例關(guān)系,當(dāng)滿足一個自己定義的范圍時,實(shí)現(xiàn)判定.比如:RGB的比例中R...
  • 揣親18522446149: OPenCV中累加一個三通道矩陣中的所有元素: -
    定結(jié)縣軸承: ______ mat->data.ptr 是指向 mat中數(shù)據(jù)的指針,是char 的而mat中的數(shù)據(jù),是float的所以,在前面進(jìn)行了強(qiáng)制轉(zhuǎn)換 (const float*)mat->step,是mat中,每行數(shù)據(jù)的長度不過,感...
  • 揣親18522446149: anaconda安裝opencv3擴(kuò)展庫怎么進(jìn)行呢,如opencv -
    定結(jié)縣軸承: ______ 首先用Anaconda是因?yàn)榉奖?管理方便,包安裝真心不方便).下面是我的安裝過程: 首先使用如下命令安裝opencv conda install -c
  • GOGOGO高清在线观看中文版| 伊人久久久综在合线久久在播| 欧美国产一区二区三区激情无套| 亚洲人成桃花岛久久久久久| 日韩精品人妻系列一区二区三区| 精品久久久久久无码人妻热| 欧美性大战XXXXX久久久| 99久久综合精品五月天| 国产成人无码精品久久二区三区| 少妇人妻精品一区二区三区|