最近有網友諮詢相關演算法問題,我給了一些幫助,覺得比較典型,在經過他允許後將相關資料和思路進行整理,放出來大家共同學習!
一、問題:
圖中這個孔是兩個半圓加直線組成的,不同於普通的圓和橢圓,所以用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
目前方向:影象拼接融合、影象識別 ****:jsxyhelu@foxmail.com
由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...