Swimmer

곡률 (Curvature) 본문

개념공부/기타

곡률 (Curvature)

Zach Choi 2022. 2. 10. 21:22

경로 생성 알고리즘을 개발하다 보면, 곡률은 정말 많이 사용하게 되는 개념이다. 경로가 부드럽기 위해서는 곡률이 연속돼야 하고, Non-holonomic 모빌리티의 경우 Kinematic Constraint 상 곡률 제한이 존재하기 때문이다. 그런데 경로 포인트에 Noise가 조금이라도 있으면 곡률값의 정확도가 떨어진다. 그래서 거리가 먼 포인트를 선정해 곡률을 계산하기도 하고, 이동 평균을 내기도 한다. 어쨌든 곡률을 계산하는 방법을 정리해보자.

 

1. 원을 사용한 곡률 계산

3개의 포인트가 입력되면, 이 점들을 지나는 원의 반지름과 원의 중심을 결정할 수 있다. 이렇게 계산한 원의 반지름은 3개 포인트 중 두번재 포인트의 곡률 반지름이 된다. 그리고 이 값을 역수로 취하면 곡률 값이 된다. 이 방법은 경로 포인트 간 간격이 좁을 때 값이 부정확해진다.

 

2. 곡률의 정의 활용

곡률이란 d헤딩 / d포인트간 거리 이다. 즉, 경로가 이동한 거리에 따라 헤딩이 얼마나 바뀌었는지를 나타낸다.

Comments