HRNet 논문 리뷰

Choi재혁
|2024. 7. 22. 14:12
반응형

Pose Estimation 설명

  • body part를 예측하는 분야로써 2D, 3D로 나눌수 있음
    • 2D는 single person, multi person으로 나눔
  • 신체의 머리, 어깨, 관절 등의 keypoint를 예측하는 방법으로 Direct Regression, Heatmap regression으로 나눌수 있음
  • Direct regression
    • 2차원 이미지 픽셀 값을 입력값으로 이용해 바로 좌표를 추정하는 방식
    • 빠른 학습이 가능, 다수의 사람이 존재할 경우 적용이 어려움
    • keypoints 위치가 비선형적임으로 적합하게 매핑하기 어렵다는 문제가 존재
  • Heatmap regression
    • 신체 부위중 keypoints가 존재할 만한 위치를 확률적으로 heatmap으로 계산하고 keypoints 위치를 추정
    • 시각적으로 객관적이며 사람이 다수일 경우도 적용 가능
    • Direct regression보다 일반적으로 성능이 좋음
  • Multi person task
    • Topdown
      • 먼저 사람을 찾고 각각의 대상으로 keypoint detection을 진행
        • 일반적으로 detection model을 통해 detection된 이미지를 crop한 후 이미지 내부에서 pose estimation 수행
      • bbox 후에 keypoints detection은 객체당 순차적으로 진행, 연산량이 커짐
    • Bottomup
      • keypoints를 먼저 찾는 방식으로 진행, 이미지 상에서 모든 keypoints를 찾은 후 각각의 keypoints를 이어서 사람의 pose에 맞게 연결하는 방식
      • Topdown 방식은 상대적으로 느리지만 정확도가 높음

HRNet

  • Topdown 방식 사용
  • 이전에 사용했던 방법들
    • high-low-high 의 고해상도에서 저해상도 다시 고해상도로 복원하는 autoencoder같은 방법을 사용
    • keypoints를 마지막 고해상도에서 찾음, 이런 방법을 직렬적인 시퀀셜 구조라고 표현
    • 대표적으로 stacked hourglass, simple baseline 둘다 고->저->고 방식
    • 고->저->고 단계를 진행하면서 local 정보의 손실이 발생
    • keypoints를 찾는 과정은 오직 마지막 저->고 단계에서 진행되기 때문에 upsampling과정의 의존성이 커짐

HRNet은 이러한 문제를 해결하기 위해 직렬구조 -> 병렬구조로 변경

HRNet 구조

  • 위 구조를 보면 1x row에서 동일한 해상도가 유지되는 층과 평행하게 아래에서 downsample되는 구간이 분리됨
    • 이 과정을 통해 최종적으로 heatmap단계에서 downsample/upsample 되지 않은 input 해상도 feature map이 영향을 줘서 정확도가 올라감
  • 병렬구조의 각 layer에서 정보를 계속 주고받는 형태
    • 같은 depth의 유사한 level의 low-resolution 정보를 사용함으로써 최종적인 heamap 예측에서도 정확도가 높아짐

병렬적 구조로 구성된 네트워크간 Fusion을 통해서 high resolusion을 유지하면서 global, local 정보를 학습

1단계

    • 원래의 resolution 과 down-sampling으로 나뉘는 단계
    • 하나의 resolution이 유지되는 단계
    • residual unit을 반복후 2개의 resolution으로 나누는 과정 수행
      • down-sampling 수행시 가로/2, 세로/2 적용

2단계

  • residual unit 진행후 down-sampling, up-sampling을 진행
  • 원래의 해상도 정보가 작은 해상도에 반영되고 반대로 작은 해상도 정보가 높은 해상도에도 반영
  • 3번째 resolution은 다시 절반에 해당되는 크기로 down-sampling

3단계

  • 3단계, 4단계는 2단계와 동일한 과정으로 진행
  • 차이점으로는 Exchange unit이 2단계는 1개, 3단계는 4개, 4단계는 2개로 fusion이 반복되는 횟수의 차이가 존재
    • Exchange Unit이란 병렬 subnetowrk간에 정보를 전달해주는 역할을 하는 유닛
  • 2~4까지는 multi resolution fusion이 진행 resolution scale 확장이 이루어짐

4단계

  • 4단계를 지나게 되면 원본 이미지 shape에 맞게 up-sampling 단계를 수행
  • 최종 이미지의 shape이 x,y,channel 이고 이때의 channel이 17이라고 소개되는데 이는 coco dataset의 keypoints가 17개 개수와 같아짐
    • 하나의 heatmap이 하나의 keypoint 예측값이 되는 것

Heatmap Estimation

  • Loss Function은 평균 제곱 오차 MSE를 사용한다. 여기에 사용되는 GT heatmap은 각 keypoint에 2D 가우시안 분포를 적용해서 계산

OKS (Object keypoint similarity)

  • OKS 참조

  • 객체에 대한 key point는

    형태로 존재

  • 이때 x, y는 평면상의 위치를 나타내는 좌표

  • v=0 : 레이블 되어있지 않음, v=1 : 레이블 되어있지만 화면상에서 보이지 않음, v=2 : 레이블 되어있고 화면상에서 보임

  • Object Keypoint Similarity (OKS) 공식

  • : Ground Truth keypoint와 detection keypoint 사이의 Euclidean distance

  • : Ground Truth의 visibility flag (

    = 0,1,2)

  • s : 객체 세그먼트 영역의 제곱근

  • : keypoint 마다 존재하는 상수값

전반적으로 heatmap regression과 top-down 방식을 사용해 Pose estimation을 수행하는 HRNet

가장 흥미로운 점은 병렬연결과 fusion을 통해 원본해상도와 down-sampling된 해상도 사이의 up,down sampling을 통해 다양한 정보를 얻고 이를 통해 resolution scale 이 확장되가는 방식이 가장 인상깊은 논문이었습니다.

최종적으로 x,y,channel의 channel 수가 keypoints 수가 되고 heatmap 1개당 1개의 keypoints로 결정되어 Pose Estimation을 수행하는 점도 확인할 수 있었습니다.

반응형

'Study > Paper' 카테고리의 다른 글

On The Convergence of Adam and Beyond 논문 리뷰  (6) 2024.07.22
Mask R-CNN 논문 리뷰  (2) 2024.07.22
YOLO 논문 리뷰  (2) 2024.07.22
Faster R-CNN 논문 리뷰  (0) 2024.07.22
Fast R-CNN 논문 리뷰  (1) 2024.07.09