我希望能夠處理芒果樹的特寫圖像,以便我可以識別和計數芒果。芒果大致呈橢圓形或橢圓形,與圖像中的樹葉和樹枝獨特不同。我希望能夠對可能被其他對象覆蓋20%的芒果進行計數(但人眼仍然很明顯)。我相信在MatLab中有一種算法可以做到這一點,我將不勝感激任何幫助或建議。形狀識別 - 計數芒果
回答
我認爲針對該問題的更強大的解決方案是將背景中的芒果(即樹葉)按顏色分段,並在產生的二值圖像中統計出connected components的數量。正如btown指出的那樣,您可以使用bwconncomp和labelmatrix函數獲取二進制映像的連接組件。
要按照顏色對芒果進行分割,首先將圖像轉換爲HSV color space,然後使用色相組件進行二值化。我相信芒果的色調成分會與圖像的其他部分不同。 This blog post給出了一些關於如何在Matlab中做到這一點的見解。
也許你可以:
- 前處理後的圖像(灰度/門限等)。
- 從二進制圖像中提取所有的countours/connected組件。
- 計算每個輪廓/連接組件的面積和周長。
- 使用計算形狀因子/圓度:
形狀因子 - (4 * PI *面積)/(周長^ 2)。這給出了關於對象形狀的指示 。圈子的最大面積爲 周長比率,並且此公式對於 完美圈子的值接近1。正方形大約是0.78。細線狀物體 將具有接近0的最低形狀因子。
圓度 - (周長^ 2)/ 4 * PI *面積)。這給了那些習慣使用它的形狀因子的倒數值 。 圓形的值將略大於或等於1.其他 形狀的值將增加。
所以你可以近似一個「理想」芒果的形狀因子,看看是否有任何組件位於近似值內?
查看this瞭解更多詳情。
在此特定情況下使用形狀測量可能會有點難,因爲有些物體(芒果)可能會被葉子部分遮擋。 – 2012-02-07 18:41:21
正確;您可以使用這種方法與您一起驗證不規則形狀(芒果模糊),通過返回並獲取色調顏色信息給出不規則的「潛在芒果」輪廓的位置。事實上,您可以對所有等值線進行驗證。你必須知道什麼樣的色調值範圍可以看作是芒果。 +1爲您的方法! – Jeb 2012-02-07 18:56:03
- 1. 幾何/形狀識別(奇數形狀)
- 2. 識別形狀用Matlab
- 3. 簡單的形狀識別
- 4. 圖像識別(形狀識別)
- 5. 識別手寫體形狀
- 6. 形狀識別框架?
- 7. 基於任意點數識別形狀
- 8. 形狀識別(識別手繪基本形狀 - 矩形,橢圓形,三角形等)?
- 9. Swing(AWT)識別繪製的形狀
- 10. 計數形狀
- 11. 如何識別畫布中的形狀?
- 12. 感知器和形狀識別
- 13. SIFT方法給我不好的結果,識別4個形狀
- 14. 手寫自定義形狀識別
- 15. 幾何形狀識別使用c + +
- 16. 2D形狀識別和解析算法
- 17. 形狀識別算法/ Java的代碼
- 18. 圖像中的形狀識別
- 19. 如何計算由芒果查詢
- 20. propertycollection - 芒果WP7
- 21. 用於通過相機進行形狀識別的iPhone庫
- 22. 圖形控制,wp7中的數據虛擬化芒果
- 23. 來自攝像頭的對象和形狀識別
- 24. 人物圖形識別
- 25. iPhone - 識別波形/頻率
- 26. 形狀識別與numpy/scipy(也許是分水嶺)
- 27. 如何通過形狀識別來對人進行分類?
- 28. 識別上傳狀態
- 29. 如何識別一組線條是否與形狀相似
- 30. 如何識別CGPoint是否包含在形狀中?
http://opencv.willowgarage.com – 2012-02-04 04:01:49
也http://stackoverflow.com/questions/6307263/ellipse-detection-using-hough-transform – 2012-02-04 04:08:26