Pose Estimation model 리뷰 모음

한량·2022년 4월 13일
0

Pose Estimation

목록 보기
3/3

논문 리뷰나 짧게 둘러본 정도라도 일단 계속 추가할 예정

Single-Person

Direct Regression

BlazePose

  • OnDevice, Realtime이 가능한 light한 모델
  • Heatmap과 regression을 모두 이용

  • Face detector를 사용해 사람을 찾아 기준으로 삼아 tracker를 실행

  • Backbone에서는 heatmap, offset, regression을 결합한 방식을 이용, encoder-decoder heatmap-based network 뒤에 regression network가 따라오는 구조를 stack
  • Heatmap과 offset loss는 train에만 이용해 경량화
  • 지원하는 angle, scale, translation의 범위를 일부로 제한해 모델을 경량화함


Heatmap based

Fast Human Pose Estimation

  • Computation, model size 줄이기와 performance 높이기에 집중
  • 이를 해결하기 위해 Fast Pose Distillation이라는 기법을 제시
    1. lightweight hourglass network 사용: 기존 hourglass를 절반으로 줄임
    2. SOTA hourglass로 teacher network 학습
    3. Knowledge distillation 사용, teacher network를 보고 student network가 추론

  • 다른 SOTA와 성능 차이가 거의 없는 편

Multi-Person

Top-down

  • X

Bottom-up

OpenPose

  • Keypoint 간 관계의 정보를 갖는 2차원 vector field인 Part Affinity Field(PAF)을 backbone으로 찾고, PAF를 기반으로 keypoint를 예측
  • 찾은 keypoint는 hungarian algorithm을 이용해 연결

  • 2017년 논문에서는 병렬적으로 예측했으나 직렬로 변경하면서 속도, 정확도를 높임 --> PAF는 keypoint에 대한 정보도 포함하고 있기 때문에

  • 발에 대한 keypoint를 추가해 SMPL에서 candy wrapper effect를 방지

  • OpenPose는 정확도보다는 multi-person을 realtime이 가능하도록 하게 했다는 점에 중점을 둠

HigherHRNet

  • Bottom-up 방식은 정확도가 낮고 scale에 따라 영향을 많이 받음
    특히 작은 scale일수록 정확도가 매우 낮음
  • Image pyramid는 1/4 ~ 1/32 크기에서 예측해야 되기 때문에 bottom-up 방식에는 적합하지 않음
  • 이를 개선하기 위해 1/4 정도의 고화질 pyramid feature만 사용해 고화질 heatmap을 생성

  • Backbone은 HRNet을 사용하고 deconv로 1/2 feature map을 생성
  • 처음부터 1/2 feature map을 만들면 computation이 너무 커져 처음엔 HRNet으로 1/4를 사용

  • Medium person에 대한 정확도가 특히 높아짐 --> 아마 high resolution feature를 유지해서 그런듯?
profile
놀고 먹으면서 개발하기

0개의 댓글