色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美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

    文章

    4327

    瀏覽量

    62573
  • OpenCV
    +關注

    關注

    31

    文章

    634

    瀏覽量

    41338
  • 圖像分析
    +關注

    關注

    0

    文章

    82

    瀏覽量

    18676

原文標題: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 ?5351次閱讀
    <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 ?1985次閱讀

    基于OpenCV如何提取中心線

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

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

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

    圖像分析最常見的方式

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

    圖像分析的典型案例

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

    圖像連通區域的標記原理

    圖像是一種由黑白兩色組成的圖像,其像素只有兩種可能,分別對應黑色和白色。在
    的頭像 發表于 01-05 14:28 ?834次閱讀
    主站蜘蛛池模板: 青青青手机视频| OLDMAN老头456 TUBE| 亚洲乱亚洲乱妇在线观看| 日韩美一区二区| 日本妈妈在线观看中文字幕| 日本精品在线观看视频| 秋葵app秋葵官网18在线观看| 免费国产福利| 久久综合九色| 欧美极限扩肛| 任你懆视频 这里只有精品| 色mimi| 亚州AV人片一区二区三区99久| 小妇人电影免费完整观看2021| 无码中文字幕热热久久| 不卡人妻无码AV中文系列APP| 边做边爱BD免费看片| 国产精品亚洲电影久久成人影院| 国产精品久久久久影院嫩草| 好男人午夜www视频在线观看| 精品久久久噜噜噜久久7| 嫩草影院地址一二三| 日日啪在线影院百度| 亚洲欧美在无码片一区二区| 在线看免费毛片| 东热rq大乱交| 久久毛片基地| 网友自拍成人在线视频| 中国女人逼| 国产三级精品三级在线观看| 久久中文字幕无码A片不卡| 色婷婷五月综合中文字幕 | 亚洲色图激情小说| 99久久中文字幕伊人情人| 国产成人在线视频网站| 久久伊人草| 亚洲AV无码乱码国产精品品麻豆| 97色色极品av影院| 幻女FREE性俄罗斯学生| 日韩爽爽影院在线播放| 18亚洲男同gay1069|