2009-05-28 105 views
4

我有一組筆畫(來自墨跡),並希望找到那些參與線條,方形,圓形,三角形等幾何形狀的筆觸,並識別它們。C#中的簡單幾何形狀識別#

到現在爲止,我已經看到了許多在位圖上工作的算法。

我的問題是更容易因爲我已經有了很好的觀點。 但仍然需要找到最接近的幾何形狀。 謝謝 約翰

回答

4

筆劃轉換爲載體(例如角度)。例如:272,93,42,179 現在將這些角度與要識別的存儲角度表進行比較:

例如,形狀:{{0,90,180,270},{270,90,45,180}}

爲每個表項執行以下操作: 每角執行以下 採取兩個角度之間的絕對差,以及添加他們一個跑步總數 存儲運行總數

最少的runningtotal,是它最接近的形狀。

小心順便找出兩個角度之間的差異。這是環繞的問題。 角度:359和1是非常接近的分開......但如果你簡單地將它們相減,它們相距358度。

希望這是可以理解的

+1

如果筆劃的方向並不重要,不要忘記將所有的角度包裹在180度。 (所以角度%= 180)。這種方式上下筆畫是一樣的 – Toad 2009-05-28 20:13:07