모션 키포인트 검출 AI 경진대회

앞/뒤 모습을 구분할 수 있는 방법이 있을까요 ?

2021.03.09 18:44 5,821 Views

이미지 하나씩 보면서 든 생각이 keypoint는 좌/우 구분되어 있는 부위가 있습니다.

ex) left_shoulder_x, left_shoulder_y, right_shoulder_x, right_shoulder_y


뒤돌아 있는 사람, 정면인 사람을 예측할 때 서로 완전 반대로 예측해 버리면 왼쪽/오른쪽 keypoint는 완전 반대 방향이기 때문에 loss가 엄청 크게 오르겠죠.


모델이 앞/뒤 모습을 구분할 수 있도록 좋은 아이디어가 있을까요 ?


시도는 안해보았지만 생각해 본것은 얼굴 검출을 하여 얼굴이 검출되면 앞 아니면 뒤 이런식으로도 할 수 있겠네요. 하지만 얼굴을 숙인 동작이 있다면 또 완전 반대로 예측하게 되겠죠? ...



아니면 따로 구분하는 것을 모델의 파이프라인에 포함하지 않더라도 모델은 잘 예측할 수 있을까요 ?


여러분들 생각은 어떤가요 ?

로그인이 필요합니다
0 / 1000
최정명
2021.03.09 19:27

추가로 사람의 좌측을 비추고 있는 시점, 우측을 비추고 있는 시점 에서도 아주 약간의 차이가 발생할 수 있을것 같네요.
이러한 부분을 어떻게 처리할 수 있을지... 궁금하네요.

킹왕짱정혁
2021.03.10 13:13

저도 공감합니다. 테스트 셋에 대해 keypoint 예측 후 이미지에 예측된 keypoint를 입혀 몇 가지 살펴본 결과.. 각 keypoint들의 edge의 연결 형태(스켈레톤)는 사람와 비슷하나 앞 모습, 뒷 모습에 따라서 left와 right를 잘 구별하지 못하더라구요.. 이 방법에 대해서는 좀 더 생각해봐야 할 것 같습니다

최정명
2021.03.10 16:04

맞습니다. 그리고 애매한 키포인트는 좌우의 중앙 부분으로 결과를 내는 것 같더라고요.
이러한 문제를 저는 처음 접해보는데 이미 이러한 문제들은 다 해결하지 않았을까 라는 생각으로 열심히 검색해보고 있습니다.
관련 연구들을 검색해보면 좌우 구분도 잘하고 결과도 좋더라고요. 이미 연구된 내용을 보고 잘 적용 해봐야겠네요.

의견 감사합니다. ㅎㅎ 

JY!
2021.03.11 09:57

제 경험으로는 특히 고개를 숙이는 경우 성능이 제일 불안정했습니다. 보통 논문에서는 이를 따로 다루지는 않고, 데이터의 다양성 문제로 보는 것 같습니다.

최정명
2021.03.11 15:17

해당 부분의 학습 전략을 잘 짜야겠네요 !

의견 감사합니다.

우주대마왕
2021.03.12 09:57

학습 데이터셋 크기는 적고 키포인트 개수는 다른 벤치마크 MPII (16개), COCO (17개)에 비해서 훨씬 많기 때문에 발생하는 문제라고 보시면 될 것 같습니다.  저는 실험을 Augmentation 안한 것, 전체 Flip 한것, 선택해서 Flip 한것과 점수 차이는 전체 데이터셋 Flip한게 더 좋았습니다. 

최정명
2021.03.12 14:19

좋은 정보 감사합니다.

Flip 할 때 질문이 있습니다.
좌우 flip 할 때는 keypoint도 좌, 우 flip이 될것 같은데 그대로 진행 하셨나요?

예를 들어 <앞모습> 사진에서 human의 1인칭 시점에서 우측은 우측 그대로입니다. 만약 keypoint도 같이 flip 했다면 human의 1인칭 시점에서 우측에 right keypoint있던것들이 좌측으로 옮겨집니다. 이 부분에서 좌우flip에 대해서는 따로 전처리를 했는지 궁금하네요 !

그리고 저도 flip을 전체 적용했을 때가 성능이 더 잘 나왔던것 같습니다.
위 문제를 생각해보고 flip을 적용 안 했을때 성능이 오히려 조금 떨어지는 것 같더라고요.