色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenCV二值圖像分析

OpenCV學堂 ? 來源:OpenCV學堂 ? 作者:OpenCV學堂 ? 2023-10-20 12:25 ? 次閱讀

輪廓屬性

二值圖像分析最常見的一個主要方式就是輪廓發現輪廓分析,其中輪廓發現的目的是為輪廓分析做準備,經過輪廓分析我們可以得到輪廓各種有用的屬性信息、常見的如下:

輪廓面積

輪廓周長

輪廓幾何矩

輪廓的最小外接矩形

輪廓的最大外接矩形

輪廓的最小外接圓

輪廓的最小外接三角形

輪廓擬合(支持擬合直線、橢圓、圓)

輪廓的凸包

輪廓層次信息提取

多邊形逼近

計算歐拉數

函數介紹

OpenCV中提供大量輪廓分析函數,通過這些函數我們可以方便快捷的得到輪廓的各種有用屬性信息、高效完成各種二值圖像分析需求,下面是我總結的一些常用的函數列表與說明。

OpenCV中輪廓發現函數如下:

voidcv::findContours(
InputArrayimage,
OutputArrayOfArrayscontours,
OutputArrayhierarchy,
intmode,
intmethod,
Pointoffset=Point()
)

參數解釋如下:

image: 輸入圖像、八位單通道的,背景為黑色
contours: 得到的輪廓圖像
hierarchy: 層次圖像,根據需要提取輪廓層次信息
mode: 決定提取到層次信息內容,是多層還是單層
method: 每個輪廓的編碼信息
offset: 表示輪廓偏移,默認為0

輪廓分析相關的常用函數

//計算輪廓面積
doublecv::contourArea(
InputArraycontour,
booloriented=false
)
//計算輪廓周長
doublecv::arcLength(
InputArraycurve,
boolclosed
)
//計算幾何矩與中心距
Momentscv::moments(
InputArrayarray,
boolbinaryImage=false
)
//計算最小外接矩形
RotatedRectcv::minAreaRect(
InputArraypoints
)
//計算最大外接矩形
Rectcv::boundingRect(
InputArrayarray
)
//計算最小外接圓/擬合圓
voidcv::minEnclosingCircle(
InputArraypoints,
Point2f¢er,
float&radius
)
//計算最小外接三角形/擬合三角形
doublecv::minEnclosingTriangle(
InputArraypoints,
OutputArraytriangle
)
//擬合直線
voidcv::fitLine(
InputArraypoints,
OutputArrayline,
intdistType,
doubleparam,
doublereps,
doubleaeps
)
//擬合橢圓
RotatedRectcv::fitEllipse(
InputArraypoints
)
//計算凸包
voidcv::convexHull(
InputArraypoints,
OutputArrayhull,
boolclockwise=false,
boolreturnPoints=true
)
//多邊形逼近-逼近真實形狀
voidcv::approxPolyDP(
InputArraycurve,
OutputArrayapproxCurve,
doubleepsilon,
boolclosed
)

靈活使用上述輪廓屬性信息,可以實現對二值圖像的幾何形狀判別、測量、面積過濾、獲取每個對象的幾何屬性包括面積、周長、編碼點、形狀、層次/位置信息、歐拉數、中心位置、傾斜角度。

綜合運用代碼演示

2020年 以前我分享過一些綜合使用的例子,列表如下(都看過你就贏了):

二值圖像分析案例精選

OpenCV二值圖像案例分析精選 | 第二期

OpenCV輪廓層次分析實現歐拉數計算

OpenCV尋找復雜背景下物體的輪廓

如何識別出輪廓準確的長和寬

OpenCV中幾何形狀識別與測量

OpenCV中BLOB特征提取與幾何形狀分類

OpenCV直線擬合檢測

OpenCV中實現曲線與圓擬合

這里再分享一個硬幣計數的例子!

代碼如下:

//加載圖像
Matimg=imread("D:/CoinsB.png");
imshow("OriginalImage",img);

//閾值化操作
Matgray,binary;
cvtColor(img,gray,COLOR_BGR2GRAY);
floatt=threshold(gray,binary,0,255,THRESH_BINARY|THRESH_OTSU);
imshow("binary",binary);
imwrite("D:/binary1.png",binary);

//形態學操作
Matse=getStructuringElement(MORPH_RECT,Size(3,3));
morphologyEx(binary,binary,MORPH_OPEN,se,Point(-1,-1));

//輪廓發現
vectorhireachy;
vector>contours;
bitwise_not(binary,binary);
findContours(binary,contours,hireachy,RETR_EXTERNAL,CHAIN_APPROX_SIMPLE,Point());
Matresult=img.clone();
Point2fcenter;
floatradius;

//輪廓分析
for(size_tt=0;t

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4345

    瀏覽量

    62867
  • OpenCV
    +關注

    關注

    31

    文章

    635

    瀏覽量

    41455
  • 圖像分析
    +關注

    關注

    0

    文章

    82

    瀏覽量

    18699

原文標題:OpenCV | 二值圖像分析的技巧都在這里

文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學堂】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Vivado HLS實現OpenCV圖像處理的設計流程與分析

    本文通過對OpenCV圖像類型和函數處理方法的介紹,通過設計實例描述在vivadoHLS中調用OpenCV庫函數實現圖像處理的幾個基本步驟,完成從
    發表于 07-08 08:30

    使用opencv進行圖像處理

    使用opencv進行圖像處理_于仕琪,感興趣的可以看看。
    發表于 05-03 14:45 ?0次下載

    圖像對比度、亮度調整_《OpenCV3編程入門》書本配套源代碼

    OpenCV3編程入門》書本配套源代碼:圖像對比度、亮度調整
    發表于 06-06 15:39 ?2次下載

    圖像對比度、亮度調整_OpenCV3編程入門-源碼例程

    OpenCV3編程入門-源碼例程全集-圖像對比度、亮度調整,感興趣的小伙伴們可以瞧一瞧。
    發表于 09-18 16:55 ?2次下載

    opencv圖像去噪學習總結

    OpenCV于1999年由Intel建立,如今由Willow Garage提供支持。OpenCV是一個基于BSD許可(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、Windows和Mac
    發表于 11-29 16:03 ?5w次閱讀

    圖像 FPGA腐蝕算法解析

    圖像的腐蝕算法過程中我們使用圖像3x3圖像
    發表于 03-21 11:14 ?5390次閱讀
    <b class='flag-5'>二</b><b class='flag-5'>值</b><b class='flag-5'>圖像</b> FPGA腐蝕算法解析

    如何才能提取圖像中的最大輪廓OpenCV程序免費下載

      本文檔的主要內容詳細介紹的是如何才能提取圖像中的最大輪廓OpenCV程序免費下載。
    發表于 10-10 16:49 ?3次下載
    如何才能提取<b class='flag-5'>二</b><b class='flag-5'>值</b><b class='flag-5'>圖像</b>中的最大輪廓<b class='flag-5'>OpenCV</b>程序免費下載

    如何使用OpenCV訪問Mat圖像中每個像素的

    本文檔的主要內容詳細介紹的是如何使用OpenCV訪問Mat圖像中每個像素的
    發表于 11-26 16:13 ?4次下載

    LabVIEW:如何顯示化后的圖像

    LabVIEW中常見的圖像預處理操作化的結果比較特殊,圖像實際上也是一種U8
    的頭像 發表于 12-06 09:40 ?1w次閱讀

    基于OpenCV擴展模塊與skimage包來提取中心線

    顯然OpenCV中常見的輪廓分析無法獲得上面的中心紅色線段,本質上這個問題是如何提取對象的骨架,提取骨架的方法在OpenCV的擴展模塊中
    的頭像 發表于 04-26 13:49 ?2016次閱讀

    基于OpenCV如何提取中心線

    問題 前幾天有個人問了我一個問題,問題是這樣的,他有如下的一張圖像: 怎么得到白色Blob中心線,他希望的效果如下: 顯然OpenCV中常見的輪廓
    的頭像 發表于 04-26 13:51 ?3804次閱讀

    OpenCV中實現了圖像形態學什么常見操作?

    圖像形態學是圖像處理的分支學科,在圖像處理中占有重要地位、OpenCV中實現了
    的頭像 發表于 05-27 14:11 ?1482次閱讀
    <b class='flag-5'>OpenCV</b>中實現了<b class='flag-5'>圖像</b>形態學什么常見操作?

    圖像分析最常見的方式

    圖像分析最常見的一個主要方式就是輪廓發現與輪廓分析,其中輪廓發現的目的是為輪廓分析做準備,經
    的頭像 發表于 08-12 10:45 ?1262次閱讀

    圖像分析的典型案例

    最近一直有人向我提問很多圖像分析相關的問題,特別選擇了兩個典型的輪廓分析問題。進行分析與編碼
    的頭像 發表于 12-06 10:54 ?558次閱讀

    圖像連通區域的標記原理

    圖像是一種由黑白兩色組成的圖像,其像素只有兩種可能,分別對應黑色和白色。在
    的頭像 發表于 01-05 14:28 ?909次閱讀
    主站蜘蛛池模板: 谁有成人网站地址| 色欲精品国产AV久久久| 国产白丝精品爽爽久久蜜臀| 99久久精品国产免费| 中文字幕乱码一区AV久久| 亚洲伊人国产| 亚洲欧洲日产国产 最新| 婷婷久久无码欧美人妻| 色久天| 日本aaaa| 乳巨揉みま痴汉电车中文字幕动漫| 欧美牲交A欧美牲交| 飘雪在线观看免费完整版 | 99热这里只有精品视频2| 最新男同鸭子ktv| 91av影院| tobu中国日本高清| 大桥未久电影在线观看| 国产CHINESE HD精品| 国产精品乱码色情一区二区视频| 国产精品嫩草影院| 吉吉影音先锋av资源网| 久久欧洲视频| 欧美精品九九99久久在观看| 日本漫画母亲口工子全彩| 忘忧草秋观看未满十八| 亚洲精品视频免费看| 永久免费观看视频| 99久久免费国内精品| 国产成人亚洲精品老王| 久久国产亚洲精品AV麻豆| 欧美大片免费| 我与旗袍老师疯狂床震| 亚洲偷自拍精品视频在线观看| 最新黄色在线| 国产激情精品久久久久久碰| 花蝴蝶高清观看免费| 蜜柚免费视频高清观看在线| 日韩一级精品久久久久| 在线观看免费视频a| 二级特黄绝大片免费视频大片|