簡體   English   中英

檢測圖像中圓圈和十字架的位置

[英]Detecting the locations of circles and crosses in an image

我是OpenCV的新手,並且想知道是否有人可以指導我使用最合適的算法來解決識別圖像中圓圈和十字架位置的挑戰,如下所示。

[ 在此輸入圖像描述

有時會有連線。

[ 在此輸入圖像描述 在此輸入圖像描述

他們甚至可能像這樣手繪。

在此輸入圖像描述

到目前為止,我已經查看了模板匹配示例,但它可能不是正確的方法,並且它不會將模板的大小縮放到圖像。

所以給出以下觀察。

  • 十字架和圓圈可能重疊。
  • 如果圖表是彩色的,則十字架的顏色相同,圓圈的顏色相同。
  • 有時它們會被線條加入,有時則不會。
  • 圖中可能還有其他形狀符號
  • 它們的符號大小和形狀相似,但可能不是計算機生成的,因此不一定相同。

我應該去哪里開始冒險?

這不是一件容易的事。

對於彩色外殼,您應該首先分離顏色平面。 您有可能將標記分開。

但對於黑白的情況,沒有逃脫,你必須更深入。

我會首先嘗試檢測網格線,例如使用霍夫線檢測器,盡可能准確。 然后刪除那些行。

然后嘗試找到十字架,它們是短的斜線段(大部分時間被前面的操作打破)。

可以使用小范圍半徑的霍夫圓檢測器檢測圓圈。

或者,可以使用rige或邊緣檢測器來獲得短段和短弧形弧。 您可能必須添加一些過濾條件以避免連接線。

如上所述,這不是一件容易的事。 一種可能的方法是機器學習。 我認為級聯分類器(又名Viola Jones方法)非常適合檢測對象。 使用openCV很容易實現,但需要了解它是如何工作的以及大量的樣本。

您可以嘗試使用幾個想法:

1)FFT可以幫助刪除網格。 這樣的東西。

2)標記(十字和圓)是具有漸變角度的對象,與直角不同。 它可能有助於本地化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM