신승희 2022. 3. 2. 17:29

 

 Motion vector를 만들기 위해서 line함수를 사용했다. line 함수는 pt2-pt1으로 motion vector를 생성하는 것이기 때문에 일단 x1 += pt1.x, x2 += pt2.x, y1 += pt1.y, y2 += pt2.y 코드로 각각의 point를 다 더했다. 그 후 x = abs(x2-x1), y = abs(y2-y1)로 절댓값을 씌워 크기를 구했다. 만약 x>y 이면 x 방향으로의 크기 변화가 큰 것이기 때문에 motion vector는 오른쪽 아니면 왼쪽일 것이고 if문 안에서 x2x1의 크기를 비교해 오른쪽인지 왼쪽인지 구분했다. 같은 방법으로 x<y이면 y 방향으로의 크기 변화가 큰 것이기 때문에 motion vector는 위쪽 아니면 아래쪽이고 if문 안에서 y2y1의 크기를 비교해 위쪽인지 아래쪽인지 구분했다. 일단은 방향 구분이 되는지 확인하기 위해서 방향을 publish했다. catkin_make로 빌드에 성공했고 책을 움직일 때마다 motion vector를 통해 방향이 구분되는 것을 확인할 수 있었다.