halcon拓展系列—判定二維點集順逆時針算子judge_points_order

一、算子說明

judge_points_order( : : RowsCols : bClockwise)

** 功能:判斷二維點集的順逆時針排列順序
** 輸入
** Rows,Cols                          輸入Contour的採樣點
**
** 輸出
** bClockwise                         順逆時針:0:逆時針  1:順時針  -1無法判定
** written by guke
**--------------------------------------------------------------------------------------

拓展系列—自動擬合非規則區域弧邊算子fit_contour_base_region留了一個作業《如何判斷閉合Contour中的points的排列順序,順時針還是逆時針》,這個拓展系列將解決這個問題

使用場景:

1、halcon像素點操作時,可能會遇到求解點A的法向量,法向量有兩個方向,如果確定哪個方向,就需要知道點集的排列順序,整體過程如下

1)判斷二維點集排列順序

2)求解二維點集在A的切線方向角度tangentAngle

3)根據二維點集的順逆時針求解法向量,eg:

如果想求點集內側的法向量,且點集時順時針排列,則normalVectorAngle := tangentAngle-deg(90)  (halcon逆時針角度爲正)

如果想求點集內側的法向量,且點集時逆時針排列,則normalVectorAngle := tangentAngle+deg(90) 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章