五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【第17節(jié)】OpenCV輪廓初識(shí)

2022-11-22 12:39 作者:海鷗之道  | 我要投稿

目標(biāo)

  • 理解什么是輪廓

  • 學(xué)習(xí)找輪廓,繪制輪廓等

  • 函數(shù):CV2.findContours(),CV2.drawContours()

1、什么是輪廓

????????輪廓可以簡(jiǎn)單認(rèn)為成將連續(xù)的點(diǎn)(連著邊界)連在- -起的曲線,具有相同的顏色或者灰度。輪廓在形狀分析和物體的檢測(cè)和識(shí)別中很有用。

  • 為了更加準(zhǔn)確,要使用二值化圖像。在尋找輪廓之前,要進(jìn)行閾值化處理或者Canny邊界檢測(cè)。

  • 查找輪廓的函數(shù)會(huì)修改原始圖像。如果你在找到輪廓之后還想使用原始圖像的話,你應(yīng)該將原始圖像存儲(chǔ)到其他變量中。

  • 在OpenCV中,查找輪廓就像在黑色背景中超白色物體。你應(yīng)該記住,要找的物體應(yīng)該是白色而背景應(yīng)該是黑色。

????????讓我們看看如何在一個(gè)二值圖像中查找輪廓:

????????函數(shù)CV2.findContours() 有三個(gè)參數(shù),第一個(gè)是輸入圖像,第二個(gè)是輪廓檢索模式,第三個(gè)是輪廓近似方法。返回值有三個(gè),第一個(gè)是圖像,第二個(gè)是輪廓,第三個(gè)是(輪廓的)層析結(jié)構(gòu)。輪廓(第二個(gè)返回值)是一個(gè)Python列表,其中存儲(chǔ)這圖像中的所有輪廓。每一個(gè)輪廓都是一個(gè)Numpy數(shù)組,包含對(duì)象邊界點(diǎn)(x, y )的坐標(biāo)。

2、怎樣繪制輪廓

????????函數(shù)CV2.drawContours(可以被用來(lái)繪制輪廓。它可以根據(jù)你提供的邊界點(diǎn)繪制任何形狀。它的第一個(gè)參數(shù)輪廓,一個(gè)Python列表;第二個(gè)參數(shù)是輪廓的索引(在繪制獨(dú)立輪廓是很有用,當(dāng)設(shè)置為-1時(shí)繪制所有輪廓)。接下來(lái)的參數(shù)是輪廓的顏色和厚度等。

????????在一幅圖像.上繪制所有的輪廓:

結(jié)果:

3、輪廓的近似方法

????????這是函數(shù)CV2.findCountours()的第三個(gè)參數(shù)。它到底代表什么意思呢?

????????上邊我們已經(jīng)提到輪廓是一個(gè)形狀具有相同灰度值的邊界。它會(huì)存貯形狀邊界上所有的(x,y)坐標(biāo)。但是需要將所有的這些邊界點(diǎn)都存儲(chǔ)嗎?這就是這個(gè)參數(shù)要告訴函數(shù)CV2.findContours的。這個(gè)參數(shù)如果被設(shè)置為CV2.CHAIN APPROX NONE,所有的邊界點(diǎn)都會(huì)被存儲(chǔ)。但是我們真的需要這么多點(diǎn)嗎?例如,當(dāng)我們找的邊界是一條直線時(shí)。你用需要直線上所有的點(diǎn)來(lái)表示直線嗎?不是的,我們只需要這條直線.的兩個(gè)端點(diǎn)而已。這就是CV2.CHAIN APPROX_ SIMPLE要做的。它會(huì)將輪廓_上的冗余點(diǎn)都去掉,壓縮輪廓,從而節(jié)省內(nèi)存支。

?

【第17節(jié)】OpenCV輪廓初識(shí)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
阿克| 三门峡市| 梁山县| 宜州市| 金川县| 黄梅县| 天峨县| 德格县| 丹东市| 甘谷县| 库尔勒市| 融水| 峨山| 屯门区| 黔东| 民和| 保康县| 恩施市| 东阿县| 嘉祥县| 拉萨市| 尉氏县| 长丰县| 滦平县| 工布江达县| 襄城县| 永康市| 广灵县| 旅游| 富顺县| 兰考县| 鞍山市| 南溪县| 合作市| 开阳县| 望奎县| 通榆县| 弥渡县| 梁平县| 太仆寺旗| 永平县|