DOI QR코드

DOI QR Code

Facial Landmark Detection by Stacked Hourglass Network with Transposed Convolutional Layer

Transposed Convolutional Layer 기반 Stacked Hourglass Network를 이용한 얼굴 특징점 검출에 관한 연구

  • Gu, Jungsu (Department of Digital Media, Graduate School, The Catholic University of Korea) ;
  • Kang, Ho Chul (Department of Media Technology and Media Contents, The Catholic University of Korea)
  • Received : 2021.08.07
  • Accepted : 2021.08.19
  • Published : 2021.08.30

Abstract

Facial alignment is very important task for human life. And facial landmark detection is one of the instrumental methods in face alignment. We introduce the stacked hourglass networks with transposed convolutional layers for facial landmark detection. our method substitutes nearest neighbor upsampling for transposed convolutional layer. Our method returns better accuracy in facial landmark detection compared to stacked hourglass networks with nearest neighbor upsampling.

Keywords

1. 서론

얼굴 정렬(Facial alignment) 기술은 현재 실생활에서 많이 사용되고 있다. 영상 속 사람의 얼굴을 인식하는 기술은 영상 촬영 시 얼굴 자동 초점 기능, 열화상 카메라에서 얼굴의 온도를 감지, 사람의 얼굴 영상 만으로 감정 상태를 추론하는 작업 등 여러 기술들의 토대가 된다. 그리고 얼굴 특징점 검출(Facial landmark detection)은 얼굴 인식에서 매우 중요한 역할을 수행한다[1, 2, 3]. 얼굴 특징점 검출은 매우 오래전부터 연구되었으며, 현재까지도 해결해야 할 과제가 남아있다.

얼굴 특징점 검출을 방해하는 요소는 객체 검출(Object detection)에서의 방해 요소와 크게 다르지 않다. 얼굴이 일부 가려진 경우, 정면이 아닌 다른 각도에서의 얼굴 영상, 영상의 밝기와 명암, 색상 편차가 큰 경우 검출 정확도가 크게 떨어질 수 있다.

딥 러닝 인공 신경망은 많은 발전을 이룩하였으며, 다양한 분야에 활용되고 있다. 얼굴 특징점 검출 분야 또한 마찬가지다. J. Yang 등[4]은 Stacked hourglass networks를 얼굴 특징점 검출에 적용하였고, 정확도를 높이기 위해 얼굴 영상을 매핑하는 알고리즘을 제안하였다. A. Bulat 등[5]은 Stacked hourglass networks와 bottleneck networks를 적용하여 단일 RGB 영상을 입력받아 3차원 얼굴 특징점을 추론하는 방법을 제안하였다. 본 연구에서는 Stacked hourglass networks 자체의 성능을 높이는 방법을 제안할 것이다.

본 논문에서는 Stacked hourglass networks의 upsampling process를 transposed convolution 연산으로 대체하여 성능을 높이는 방법을 제안한다. 기존의 Stacked hourglass networks보다 facial landmark detection에서 더욱 좋은 성능을 보였으며, 다른 tasks에서도 좋은 성능을 보일 것으로 기대된다.

본 논문의 구성은 다음과 같다. 2장에서 본 연구의 주제인 얼굴 특징점 검출과 Stacked hourglass net- works에 대해 설명하며 3장에서 Stacked hourglass networks의 성능 개선 방법을 제안한다. 4장에서는 학습과 검증에 사용된 데이터셋을 소개하고 실험 결과를 통해 본 연구의 객관적인 성능 평가를 하였고 5장에서 본 연구에 대한 결론을 맺는다.

2. 이론

2.1 얼굴 특징점 검출(Facial landmark detection)

딥 러닝의 발전과 함께 얼굴 인식에 적용하는 시도 또한 많이 이루어졌다[6]. 본 논문은 얼굴 인식의 기반이 되며, 중요한 역할을 수행하는 얼굴 특징점 검출에 대해 연구한다. 딥 러닝을 사용한 특징점 검출 방법 중 회귀(regression) 방법은 딥 러닝 기반회귀 모델을 사용하여 입력 영상을 특징점의 좌표값으로 대응(mapping)시키는 것이다. 특징 영역 검출 방법(local part-based detection)은 딥 러닝 모델을 통해 영상에서 특징점이 존재할 가능성이 있는 영역(heatmap or probability map)을 추론하여 특징점의 좌표값을 검출한다. 하나의 특징점에 대해 하나의 heatmap 추론이 요구된다. 본 연구에서 사용하는 딥러닝 모델은 Stacked hourglass networks이다.

2.2 Stacked Hourglass Networks

Stacked hourglass networks는 본래 Human pose estimation을 위해 제안된 딥 러닝 모델이다[7]. 그러나 top-down process와 bottom-up process가 반복되는 구조적 특성으로 인해 영상에서 특징(features) 를 뽑아내고 추론하는데 안정적인 성능을 보여 다양한 분야에 적용되었으며, 얼굴 특징점 검출에도 사용되고 있다.

Stacked hourglass networks(Fig. 1)는 오토 인코더(Auto encoder) 형태의 convolutional neural net- works를 여러 개 쌓아 구성한 네트워크이다. 그 형태가 마치 여러 개의 모래시계를 쌓은 것과 같다 하여 Stacked hourglass networks라 명명되었다. 또한 Hourglass networks 간 residual connection[8]이 존재한다.

MTMDCW_2021_v24n8_1020_f0001.png 이미지

Fig. 1. Stacked Hourglass Networks. We stacked 4 hourglass networks. Hourglass-shaped model is hourglass network

Hourglass network는 top-down, bottom-up pro- cessing을 수행한다. Top-down processing에선 convolutional layers와 max pooling layers로 구성되어 입력 데이터를 특징을 추출하고 처리하여 매우 작은 해상도로 출력한다. Bottom-up processing에선 최근접 이웃 보간법(nearest neighbor upsam- pling)을 수행하여 데이터를 출력 해상도에 도달하도록 한다. Hourglass networks는 대칭 구조이기 때문에 top-down 단계와 bottom-up 단계의 각 과정이 서로 쌍을 이룰 수 있다. 그래서 top-down 단계와 bottom-up 단계에서 각각 대응하는 layers는 residual connection[8]이 수행된다. 이로 인해 여러 scale에서의 특징(features)를 보존하기 용이하다. 네트워크의 최종 출력 해상도에 도달하면 1×1 convolution layers를 적용하여 heatmaps을 추론한다. 입력 영상의 해상도는 256×256이며 heatmaps의 해상도는 64×64이다. heatmaps의 해상도가 입력 영상과 동일할 경우 모델의 학습 파라미터 수가 매우 증가하며, 연산 속도도 오래 소요된다. 64×64 해상도의 heatmaps을 통해 특징점을 검출하더라도 정확도엔 문제가 되지 않았다.

MTMDCW_2021_v24n8_1020_f0002.png 이미지

Fig. 2. Hourglass network.

2.3 Transposed convolution

Transposed convolution 연산은 입력 데이터를 upsampling 하여 원하는 크기의 데이터로 매핑(mapping)하기 위해 사용된다. 우선 입력 데이터를 출력 데이터 크기의 공간에 대응시킨다. 입력 데이터를 더 큰 크기의 공간에 매핑시켰기 때문에 정보가 없는 공간이 발생하는데, 이 공간을 0으로 채우고 convolution 연산을 수행한다. 최근접 이웃 upsam- pling이나 선형 보간(linear interpolation)에 비교해 features를 추론하는 성능이 더 뛰어나다. 이러한 특성으로 인해 오토 인코더 구조의 딥 러닝 모델을 활용한 segmentation task[9]와 적대적 생성 모델(Generative adversarial Networks)[10]에서 일반적으로 사용된다.

3. 제안한 방법

3.1 최근접 이웃 upsampling을 대체하는 Transposed convolution 연산 적용

본 연구에서는 Stacked hourglass networks의 bottom-up processing에서 최근접 이웃 알고리즘을 사용한 upsampling 대신 transposed convolutional layers를 적용하였다. 최근접 이웃 알고리즘을 이용한 upsampling의 경우, residual block의 해상도를 단순히 2배 증가시킨 후 인접한 픽셀 값으로 보간한것에 불과하다. 그러나 transposed convolution 연산을 적용한다면 residual block의 pooling으로 인해 작아진 해상도에서 손실된 데이터를 추론하여 학습 가능한 upsampling을 수행하게 된다. 이로 인해 stacked hourglass networks 내 top-down process의 결과값인 latent vector로부터 기존보다 더욱 많은 특징 정보들을 추출할 수 있다. Transposed convolutional layers의 추가로 모델의 파라메터가 증가하였으며, 객관적 비교를 통해 정확도의 향상을 확인할 수 있다.

모델의 학습 시 손실 함수(loss function)는 MSE(Mean Squared Error)를 사용하였다. 최적화 함수(optimization)는 RMSProp을 사용하였다.

4. 실험 결과 및 고찰

4.1 비교에 사용된 데이터셋(Training dataset)

모델 간 성능 비교에는 300W[11] 데이터셋이 사용되었다. 300W는 얼굴 특징점 검출에서 가장 대중적으로 사용되는 데이터셋이며, 학습 데이터와 테스트 데이터를 모두 제공한다. 300W의 학습 데이터셋은 LFPW[12], AFW[13], HELEN[14]와 iBUG에서제공하는 별도의 학습 데이터로 구성되어 있다. 300 W의 테스트 데이터셋은 테스트를 위해 별도로 수집된 300개의 실내 이미지, 300개의 실외 이미지로 이루어져 있다.

4.2 데이터 증강(Data augmentation)

학습 모델의 정확도를 높이기 위해 데이터 증강 기법이 사용되었다. 이는 비교를 위한 모델 학습 시에도 동일하게 적용되었다. 매 영상마다 무작위 상수에 기반하여 영상 회전(Rigid body Transform), HSV 색공간의 S 값 조절, 영상 밝기값을 조절하였다.

4.3 기존 모델과의 비교

stacked hourglass networks with transposed convolutional layers 모델의 성능을 비교하기 위해 VGG-16[15], stacked hourglass networks를 학습하였다. VGG-16 모델은 ImageNet을 학습한 p retrained model을 불러와 모델의 말단에 있는 fully connected layers를 새로 쌓아 fine tuning transfer learning을 수행하였다. Evaluation metric은 RMSE(Root Mean Square Error)(1)를 사용하였다.

\(R M S E=\sqrt{\frac{1}{n} \sum_{i=1}^{n}\left(x_{i}-y_{i}\right)^{2}}\)       (1)

여기서 x는 predicted landmarks이고, y는 ground- truth이며, n는 number of images이다.

MTMDCW_2021_v24n8_1020_f0003.png 이미지

Fig. 3. Data augmentation process.

MTMDCW_2021_v24n8_1020_f0004.png 이미지

Fig. 4. Evaluation results from 300W dataset. (a) Stacked hourglass networks, (b) Stacked hourglass networks with Transposed convolution (ours), and (c) VGG-16.

Table 1. The performance for proposed algorithm and conventional algorithms.

MTMDCW_2021_v24n8_1020_t0001.png 이미지

5. 결론

본 논문에서는 stacked hourglass networks의 bottom-up process에서 사용되는 nearest neighbor upsampling을 transposed convolutional layers로 대체하여 성능을 개선할 수 있는 알고리즘을 제안하였으며, 이를 얼굴 특징점 검출에 적용하였다.

※ This work was supported by Korea Institute of Planning and Evaluation for Technology in Food, Agriculture and Forestry(IPET) and Korea Smart Farm R&D Foundation(KoSFarm) through Smart Farm Innovation Technology Development Program, funded by Ministry of Agriculture, Food and Rural Affairs(MAFRA) and Ministry of Science and ICT(MSIT), Rural Development Administration(RDA) (grant number: 421024-04). And this work was supported by Korea Institute of Planning and Evaluation for Technology in Food, Agriculture and Forestry(IPET) funded by Ministry of Agriculture, Food and Rural Affairs(MAFRA) (grant number: 321092-03- 1-HD030).

References

  1. W. Li and E. Lee, "Online Face Avatar Motion Control Based on Face Tracking," Journal of Korea Multimedia Society. Vol. 12, No. 6, pp. 804-814, 2009.
  2. X.L. Huang, C.Z. Kim, and S.H. Choi, "An Automatic Strabismus Screening Method with Corneal Light Reflex Based on Image Processing," Journal of Korea Multimedia Society Vol. 24, No. 5, pp. 642-650, 2021. https://doi.org/10.9717/KMMS.2021.24.5.642
  3. J.N. Song, H.I. Kim, and Y.M. Ro. "Fast and Robust Face Detection Based on CNN in Wild Environment," Journal of Korea Multimedia Society Vol. 19. No. 8, pp. 1310-1319, 2016 https://doi.org/10.9717/kmms.2016.19.8.1310
  4. J. Yang, Q. Liu, and K. Zhang, "Stacked Hourglass Network for Robust Facial Landmark Localisation," Proceedings of Electrical and Electronics Engineers Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), pp. 79-87, 2017.
  5. A. Bulat and G. Tzimiropoulos, "How Far are We from Solving the 2D & 3D Face Alignment problem? (and a Dataset of 230,000 3D Facial Landmarks)," Proceedings of Electrical and Electronics Engineers International Conference on Computer Vision (ICCV), pp. 1021- 1030, 2017.
  6. I. Masi, Y. Wu, T. Hassner, and P, Natarajan, "Deep Face Recognition: A Survey," 31st SIBGRAPI Conference on Graphics, Patterns and Images, pp. 471-478, 2018.
  7. A. Newell, K. Yang, and J. Deng, "Stacked Hourglass Networks for Human Pose Estimation," European Conference on Computer Vision (ECCV) 2016, Part VIII, LNCS 9912, pp. 483-499, 2016.
  8. K. He, X. Zhang, S. Ren, and J. Sun, "Deep Residual Learning for Image Recognition," Proceedings of the Institute of Electrical and Electronics Engineers(IEEE) Conference on Computer Vision and Pattern Recognition, pp. 770-778, 2016.
  9. O. Ronneberger, P. Fischer, and T. Brox, "U-Net: Convolutional Networks for Biomedical Image Segmentation," International Conference on Medical Image Computing and Computer-Assisted Intervention, Springer, Cham, pp. 234-241, 2015.
  10. I.J. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair et al., "Generative Adversarial Nets," Proceedings of the 27th International Conference on Neural Information Processing Systems (NIPS'14), Vol. 2, pp. 2672-2680, 2014.
  11. C. Sagonas, G. Tzimiropoulos, S. Zafeiriou, and M. Pantic. "300 Faces in-the-Wild Challenge: The First Facial Landmark Localization Challenge," IEEE International Conference on Computer Vision Workshops, pp. 397-403, 2013.
  12. P.N. Belhumeur, D.W. Jacobs, D.J. Kriegman, and N. Kumar, "Localizing Parts of Faces Using a Consensus of Exemplars," IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 35, Issue 12, pp. 2930-2940, 2013. https://doi.org/10.1109/TPAMI.2013.23
  13. X. Zhu and D. Ramanan, "Face Detection, Pose Estimation, and Landmark Localization in the Wild," IEEE Conference on Computer Vision and Pattern Recognition, pp. 2879-2886, 2012.
  14. V. Le, J. Brandt, Z. Lin, L. Bourdev, and T.S. Huang, "Interactive Facial Feature Localization," European Conference on Computer Vision (ECCV) 2012, Part III, LNCS 7574, pp. 679-692, 2012
  15. K Simonyan and A Zisserman, "Very Deep Convolutional Networks for Large-Scale Image Recognition," Computational and Biological Learning Society, pp. 1-14, 2015.