網友提問 孔洞提取

2021-09-20 01:16:37 字數 2845 閱讀 3682

最近有網友諮詢相關演算法問題,我給了一些幫助,覺得比較典型,在經過他允許後將相關資料和思路進行整理,放出來大家共同學習!

一、問題:

圖中這個孔是兩個半圓加直線組成的,不同於普通的圓和橢圓,所以用hough變換檢測效果不好,

有沒有什麼方法可以把那個孔的輪廓給提取出來?

二、分析和解體:

如果對hough的原理和使用比較了解的話(可以翻看《學習opencv》),就知道想利用houghcircle取出這樣的輪廓使不可能的,此類問題首先是要把關鍵區域強化出來,然後可以考慮輪廓分析的方法。

基於基礎演算法,做到目前程度。取這樣乙個洞的影象,很容易被陰影干擾,需要在採集的時候有所注意。

connection圖

//根據輪廓的圓的特性進行選擇

vector

>  selectshapecircularity(mat src,mat

& draw,vector

> contours,

floatminvalue,

floatmaxvalue);

vector

>  selectshapecircularity(vector

> contours,

floatminvalue,

floatmaxvalue);

//計算輪廓的圓的特性

floatcalculatecircularity(vp contour);

//根據輪廓的圓的特性進行選擇

vector

> selectshapecircularity(mat src,mat

& draw,vector

> contours,

floatminvalue,

floatmaxvalue)

for(

inti

=0;i

++)returnresult_contours;

}

vector

> selectshapecircularity(vector

> contours,

floatminvalue,

floatmaxvalue)

returnresult_contours;

}

//計算輪廓的圓的特性

floatcalculatecircularity(vp contour)

fcompare

= fsum

/(float)contour.size();

returnfcompare;

}

int_tmain(

intargc, _tchar

* ar**)

所用gocvhelpe可以在我的github

elu 上找到,我的部落格位址為jsxyhelu.cnblogs.com

目前方向:影象拼接融合、影象識別 ****:[email protected]

由A網友的提問說開去

正在回家的路上,突然接到a的weixin訊息 truncate操作之後會不會釋放磁碟空間?我瞬間秒回到 當然。a接著問 開發那邊反應truncate執行完了,資料庫的伺服器磁碟空間沒有釋放反而增加了 我回 業務在執行,還有binlog生成,你看下truncate執行之後的資料增量和日誌增量就知道是怎...

一道網友提問的解法

有乙個這樣的模板函式 已知定義了一些類 class base class a public base class b public base class d public b template int loadseriesdata vector datalist,ts map params para...

劉翔部落格答即時通訊公司網友提問

即時通訊公司體育訊 北京時間3月23日訊息,中國飛人劉翔在即時通訊公司獨家官方部落格更新了日誌,逐一回答了即時通訊公司soso最關心的12個問題,劉翔表示自己下乙個目標是亞運會奪冠,並有信心在2012年倫敦奧運會獲得前三名。多哈室內田徑世錦賽後,翔飛人的未來比賽目標和前景如何,成為即時通訊公司sos...