Source-linked AI summary
Learning Feature Pyramids for Human Pose Estimation
Wei Yang, Shuang Li, Wanli Ouyang, Hongsheng Li, Xiaogang Wang
TL;DR
인간 자세 추정은 시점 변화와 심한 단축으로 발생하는 신체 부위의 스케일 변화를 처리해야 한다. 이 논문은 Pyramid Residual Module과 브랜치 인지형 초기화를 제안하며, MPII에서 92.0% PCKh를 포함해 두 자세 벤치마크에서 state-of-the-art 결과를 달성한다.
문제
시점 변화, 단축, 관절 구조, 가림으로 인해 신체 부위의 스케일이 일관되지 않게 변하며 위치 추정이 어려워지므로 인간 자세 추정은 여전히 어렵다.
방법
Pyramid Residual Module을 사용해 다중 스케일 feature pyramid를 학습하고, 다중 브랜치 네트워크를 위한 가중치 초기화 방식을 도출한다.
결과
MPII에서 92.0% PCKh를 달성해 새로운 state-of-the-art 결과를 확립했으며, 두 자세 벤치마크 전반에서 state-of-the-art 성능을 보고한다.
시사점 및 한계
제안한 모듈과 초기화 방식은 자세 추정 및 기타 CNN 작업을 지원할 수 있는 범용 구성 요소로 제시된다.
시사점 및 한계
초기화 도출은 가중치와 입력이 서로 독립이며 동일한 분포를 따른다고 가정하고, 활성화 미분과 입력에 대해서도 추가적인 독립성 가정을 둔다.
Abstract
from arXiv · showhide
Articulated human pose estimation is a fundamental yet challenging task in computer vision. The difficulty is particularly pronounced in scale variations of human body parts when camera view changes or severe foreshortening happens. Although pyramid methods are widely used to handle scale changes at inference time, learning feature pyramids in deep convolutional neural networks (DCNNs) is still not well explored. In this work, we design a Pyramid Residual Module (PRMs) to enhance the invariance in scales of DCNNs. Given input features, the PRMs learn convolutional filters on various scales of input features, which are obtained with different subsampling ratios in a multi-branch network. Moreover, we observe that it is inappropriate to adopt existing methods to initialize the weights of multi-branch networks, which achieve superior performance than plain networks in many tasks recently. Therefore, we provide theoretic derivation to extend the current weight initialization scheme to multi-branch network structures. We investigate our method on two standard benchmarks for human pose estimation. Our approach obtains state-of-the-art results on both benchmarks. Code is available at https://github.com/bearpaw/PyraNet.
1. 서론
Human pose estimation은 articulation, occlusion, viewpoint 변화, foreshortening으로 인해 whole-body scale normalization 이후에도 body part의 scale이 일관되지 않아 여전히 어렵다. 본 논문은 Pyramid Residual Module, multi-branch initialization scheme, activation-variance accumulation에 대한 해결책을 제시하고 두 benchmark에서 state-of-the-art 결과를 보고한다.
- 1. 서론: Body-part localization은 articulation, occlusion, viewpoint 변화, foreshortening으로 인해 whole-body scale normalization을 적용해도 part scale이 일관되지 않아 어렵다.이미지를 동일한 human-body 크기로 warp한 뒤에도 view에 따라 hand와 foot의 scale이 달라지는 경우처럼, 이러한 문제는 body-part detector의 성능을 저해한다.
- 1. 서론: Pyramid Residual Module은 input feature를 서로 다른 비율로 subsampling하고 여러 network level에서 convolutional filter를 학습해 multi-scale feature pyramid를 학습한다.이는 복잡도를 소폭만 증가시키면서 DCNN의 scale invariance를 향상시키도록 설계되었다.
- 1. 서론: 본 논문은 multiple input 또는 output branch를 갖는 DCNN layer를 위한 weight-initialization scheme을 도출하여 Inception model [30] [46]과 ResNet [25] [26] 같은 구조로 적용 범위를 확장한다.Pyramid Residual Module이 branch를 사용하므로, 기존 initialization scheme은 이러한 multi-branch network에 적합하지 않다는 점에서 이러한 필요성이 제기된다.
- 1. 서론: 저자들은 Hourglass network에서 identity-mapped residual output을 더할 때 발생하는 activation-variance accumulation 문제를 다룬다. 이때 summation으로 인해 output variance가 대략 두 배가 될 수 있다.추가 parameter가 거의 필요하지 않은 간단하고 효과적인 해결책을 도입한다.
- 1. 서론: 제안 방법은 두 human pose estimation benchmark에서 state-of-the-art 결과를 달성하며, ablation을 통해 pyramid module, initialization scheme, activation-variance solution을 검증한다.또한 standard image-classification task에서 generalization도 평가한다.
2. 관련 연구
기존 human pose estimation은 handcrafted graph-based feature와 image pyramid를 사용했으며, deep network와 multi-branch network는 성능과 scale modeling을 향상시켰다. 제안 방법은 Hourglass 기반 architecture 내에서 multi-scale feature를 효율적으로 학습하고 multi-branch network에 적합한 initialization을 정당화함으로써 이러한 방향을 발전시킨다.
- Human pose estimation: Graph-based pose estimator는 handcrafted feature로 신체 부위 간의 공간적 관계를 모델링하고 image pyramid에 크게 의존했다.이러한 방법에는 pictorial 및 loopy structure 와 HOG feature 가 포함된다.
- Human pose estimation: Deep model은 DeepPose 를 비롯한 최근 방법에서 human pose estimation의 state-of-the-art result를 달성했다.이 문맥에서는 DeepPose 를 이 연구 계열에서 최초로 제안된 deep model 중 하나로 지목한다.
- Human pose estimation: 세 가지 image-pyramid scale에서 multi-branch network를 학습하면 scale invariance가 강화되지만, 계산량과 메모리 사용량은 scale 수에 따라 선형적으로 increased linearly한다.제안된 pyramid residual module은 multi-scale feature를 학습하기 위한 저비용 대안으로 제시된다.
- 여러 층을 결합하는 DCNN: Multi-branch network는 일반적으로 plain network보다 우수한 성능을 보이며, 병렬 transformation을 사용해 다양한 context information을 포착한다. 제안 module은 이 원리를 Hourglass residual unit에 적용한다.이 접근법은 multi-layer prediction method [37] [6] [23] [4] [9]와 상호보완적이며, single-scale residual unit을 Pyramid Residual Module로 대체한다.
- Weight initialization: Weight initialization은 deep model 학습에 필수적이며, Xavier initialization 과 같은 이론적 근거를 갖춘 variance 추정을 필요로 한다.기존 Gaussian initialization 은 gradient instability [45] 때문에 매우 깊은 network의 학습을 어렵게 만들 수 있었다.
3. 프레임워크
이 프레임워크는 stacked Hourglass Network에 Pyramid Residual Module(PRM)을 삽입해 human pose estimation을 위한 multi-scale feature pyramid를 학습한다. PRM은 여러 해상도에서 feature를 변환하고, 그 결과 표현을 결합하며, 범용 CNN building block으로 기능한다.
- Hourglass Network: PRM은 stacked Hourglass Network에서 standard residual unit을 대체해 단일 scale의 feature가 아니라 multi-scale visual patterns와 semantics를 포착한다.Hourglass Network는 각 stack에서 intermediate supervision과 함께 bottom-up subsampling과 top-down upsampling을 반복 수행한다.
- Pyramid Residual Module: PRM은 DCNN level 전반에 걸쳐 feature pyramid를 학습하며, 서로 다른 해상도의 input feature에 filter를 적용해 primitive visual patterns부터 high-level semantics까지 포괄한다.pyramid transformation의 출력들을 합산한 뒤 subsequent filter로 convolution을 수행한다.
- Pyramid Residual Module: 각 PRM branch는 1 × 1 convolution으로 feature dimension을 줄이고, 3 × 3 convolution으로 subsampled input을 처리한 다음 결과 feature를 결합하는 bottleneck design을 사용한다.이 module은 computation 및 space complexity를 줄이도록 설계됐다.
- Pyramid Residual Module: M = 1 및 C = 4일 때, 구현된 pyramid는 original input resolution부터 input resolution의 절반인 lowest scale까지의 범위를 갖는다.c = 0 output은 input resolution을 유지하며, lowest-scale branch는 절반 해상도를 갖는다.
- PRM Variants and Generality: PRM은 stacked Hourglass pose network를 넘어 image classification을 위한 Wide Residual Nets와 ResNeXt를 포함하는 general CNN module로 제시된다.이 프레임워크는 fractional max-pooling, convolution 및 upsampling, shared weight, concatenation 또는 dilated convolution을 사용하는 variant로 pyramid를 구성하는 방법도 고려한다.
4. 학습 및 추론
학습에서는 각 관절을 Gaussian score map으로 표현하고 hourglass stack 전체에서 squared error를 최적화하며, 추론에서는 score가 최대인 위치를 선택한다. 또한 multi-branch 초기화 규칙을 유도하고, variance explosion을 방지하기 위해 일부 residual identity mapping을 대체한다.
- 학습 목적 함수: 네트워크는 K개 신체 관절에 대한 Gaussian score map을 예측하고 각 hourglass stack의 끝에서 squared-error loss를 적용한다.Ground-truth map은 관절 위치를 중심으로 하는 Gaussian으로 생성되며, 각 stack은 관절마다 하나의 score map을 예측한다.
- 추론: 추론에서는 마지막 hourglass stack이 생성한 score map에서 maximum-score position을 선택해 각 관절 위치를 복원한다.
- Multi-branch 초기화: 기존 초기화 방법 [24]은 branchless network를 가정하므로, 논문에서는 입력 및 출력 branch count를 고려하는 variance 기반 초기화 제약을 유도한다.이 유도는 weight와 activation이 independently and identically distributed라고 가정하며, activation-dependent α는 ReLU에서 0.5, Tanh와 Sigmoid에서 1이다.
- Multi-branch 초기화: 개입 연산 없이 multi-branch layer를 쌓으면 Xavier 또는 MSR [24] 초기화에서 output variance가 approximately Q^i times만큼 증가할 수 있다.따라서 parameter를 초기화할 때 input branch count와 output branch count를 고려해야 한다.
- Residual variance 제어: 합산되는 residual identity mapping을 BN-ReLU-1 × 1 convolution으로 대체하면 variance explosion을 멈추고 실험 성능을 향상시킨다.두 residual unit의 output을 합산할 때 이 대체를 사용하며, 논문은 variance explosion을 해소하면 Section 5.1.3에서 더 나은 성능을 얻는다고 보고한다.
5. 실험
제안 방법을 MPII 및 LSP human-pose benchmark에서 PCKh와 PCK metric으로 평가하고, complexity 및 ablation analysis도 수행한다. 또한 CIFAR-10에서 Wide ResNet과 ResNeXt의 pyramid branch를 검증한다.
- Human-pose 벤치마크: 이 접근법은 MPII와 LSP에서 각각 PCKh@0.5와 PCK@0.2를 사용해 평가되며, 결과는 Tables 1과 2에 보고된다.MPII에는 약 25k개의 이미지와 40k명 이상의 사람이 포함되며, LSP와 그 확장판에는 12k개의 난이도 높은 스포츠 포즈 이미지가 포함된다.
- Complexity: eight-stack model은 parameter를 23.7M에서 26.9M으로, computation을 41.2에서 45.9 GFLOPs로 증가시키는 반면, 더 깊은 hourglass network는 improvement가 거의 없는 것으로 보고된다.이는 256×256 RGB image에서 parameter가 13.5%, computation이 11.4% 증가한 것에 해당한다.
- PRM의 architecture: 시험한 모든 pyramid residual module은 baseline을 능가하며, 여러 대안과 비슷한 accuracy를 유지하면서 parameter가 더 적고 computational complexity가 더 낮기 때문에 PRM-B*를 선택한다.PRM-A/C는 PRM-B/B*/D보다 parameter 수가 많고, PRM-A/C/D는 PRM-B/B*보다 더 많은 GFLOPs를 요구한다.
- Ablation study: pyramid scale 수를 늘리면 일반적으로 performance가 향상되며, 제안한 initialization scheme은 Xavier 및 MSR initialization보다 우수하다.scale study에서는 model size를 고정한 채 pyramid scale을 3에서 5까지 변화시키며, training 및 validation curve에서 initialization method를 비교한다.
- Ablation study: variance explosion을 제어하면 validation performance가 baseline의 87.6 PCKh에서 88.0 PCKh로 상승하고, pyramid residual module을 추가하면 다시 88.5 PCKh까지 상승한다.이 ablation은 MPII validation set에서 2-stack hourglass network를 사용한다.
- CIFAR-10 실험: CIFAR-10에서는 제안한 pyramid branch를 Wide ResNet과 ResNeXt에 통합하며, 0.5에서 1까지의 scale을 갖는 네 개의 branch를 사용한다.이 dataset은 10개 class에 걸쳐 50k개의 training image와 10k개의 test image를 포함한다.
6. 결론
이 논문은 scale-invariant DCNN feature를 위한 Pyramid Residual Module을 제안하고 multi-branch network를 위한 초기화 방식을 도출한다. 또한 여러 identity mapping을 결합할 때 response variance가 폭발하는 것을 방지하는 방법을 제시한다.
- Pyramid Residual Module은 deep convolutional neural network에서 scale invariance를 향상한다.
- 이 논문은 multi-branch network를 위한 초기화 방식을 도출하고, 그 이론적 타당성과 효율성을 실험적으로 평가한다.
- 간단한 방법으로 여러 identity mapping의 output을 더할 때 response variance가 폭발하는 것을 방지한다.