Nowadays many people have an interest in facial expression and the behavior of people. These are human-robot interaction (HRI) researchers utilize digital image processing, pattern recognition and machine learning for their studies. Facial feature point detector algorithms are very important for fac...
Nowadays many people have an interest in facial expression and the behavior of people. These are human-robot interaction (HRI) researchers utilize digital image processing, pattern recognition and machine learning for their studies. Facial feature point detector algorithms are very important for face recognition, gaze tracking, expression, and emotion recognition. In this paper, a cascade facial feature point detector is used for finding facial feature points such as the eyes, nose and mouth. However, the detector has difficulty extracting the feature points from several images, because images have different conditions such as size, color, brightness, etc. Therefore, in this paper, we propose an algorithm using a modified cascade facial feature point detector using a convolutional neural network. The structure of the convolution neural network is based on LeNet-5 of Yann LeCun. For input data of the convolutional neural network, outputs from a cascade facial feature point detector that have color and gray images were used. The images were resized to $32{\times}32$. In addition, the gray images were made into the YUV format. The gray and color images are the basis for the convolution neural network. Then, we classified about 1,200 testing images that show subjects. This research found that the proposed method is more accurate than a cascade facial feature point detector, because the algorithm provides modified results from the cascade facial feature point detector.
Nowadays many people have an interest in facial expression and the behavior of people. These are human-robot interaction (HRI) researchers utilize digital image processing, pattern recognition and machine learning for their studies. Facial feature point detector algorithms are very important for face recognition, gaze tracking, expression, and emotion recognition. In this paper, a cascade facial feature point detector is used for finding facial feature points such as the eyes, nose and mouth. However, the detector has difficulty extracting the feature points from several images, because images have different conditions such as size, color, brightness, etc. Therefore, in this paper, we propose an algorithm using a modified cascade facial feature point detector using a convolutional neural network. The structure of the convolution neural network is based on LeNet-5 of Yann LeCun. For input data of the convolutional neural network, outputs from a cascade facial feature point detector that have color and gray images were used. The images were resized to $32{\times}32$. In addition, the gray images were made into the YUV format. The gray and color images are the basis for the convolution neural network. Then, we classified about 1,200 testing images that show subjects. This research found that the proposed method is more accurate than a cascade facial feature point detector, because the algorithm provides modified results from the cascade facial feature point detector.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
또한 크기만 다른 두 이미지를 입력으로 사용할 경우 같은 이미지에도 불구하고 다른 출력 값을 얻을 수 있다. 본 논문에서 이러한 단점을 보완하기 위해 컨볼루셔널 신경망을 사용하여 오분류의 결과를 수정하도록 하였다.
본 논문에서는 이러한 문제점을 보완하기 위해 컨볼루셔널 신경망(CNN: Convolutional Neural Network)을 활용흐卜였다. 컨볼루셔널 신경망은 케스케이드 안면 특징점 검출기로 추출된 특징점 영역인 눈, 코, 입 이미지를 사용하여 학습되며, 테스트 이미지의 눈, 코, 입을 추출하였을 때 오분류가 발생할 경우 이를 수정한다.
본 논문에서는 케스케이드 안면 특징점 검출기의 오분류를 보완하기 위해 컨볼루셔널 신경망을 결합하여 분류하고 수정하는 방법에 대하여 제안하였다. 각 학습 횟수마다 학습데이터의 경우 좋은 결과가 나왔지만, 실제로 이미지에 적용하였을 때 오분류가 완전히 수정되지 않음을 확인할 수 있었다.
휘도 이미지를 알고리즘 초기에 추출하지 않은 이유는 이미지가 클수록 연산량이 많아지고, 이미지 처리속도에 큰 영향을 미치기 때문이다. 휘도 이미지와 색상이 있는 눈, 코, 입을 비교하는 이유로는 피부 색상 혹은 밝기에 의해 결과가 변경될 수 있기 때문에 결과를 비교판단하기 위해서 진행하였다.
제안 방법
추출하여 분류를 진행한다. 그 다음 각 부위별 최댓값을 갖는 이미지를 선택하여 분류를 진행하는 방법으로 진행하였다. 그림 9는 컨볼루셔널 신경망을 사용하여 검출기를 통해 나타난 오분류 결과를 수정하는 예시이다.
먼저 RGB 데이터의 경우 케스케이드 안면 특징점 검출기를 통해 출력된 눈, 코, 입의 RGB 데이터의 크기를 변환하여 사용하였고, 흑백데이터는 크기가 변환된 RGB 데이터에 식 (2)를 적용하여 YUV포맷으로 변환하였다[22].
의미한다[19-21]. 본 논문에서는 케스케이드 안면 특징점 검출기를 통해 검출한 눈, 코, 입의 이미지 데이터를 학습하고 분류하는 방법으로 사용하였다.
기반이 되었던 Yarn LeCun의 LeNet-5이다. 실험에서 사용한 LeNet-5의 경우 입력 데이터는 32x32x1의 형태로만 입력 받을 수 있도록 하였고, 5x5의 커널을 사용하여 28x28% convolution 증을 구성하고 subsampling을 통해 14시4x6로 subsampling 층을 만들었고、다음 층 역시 Yarn LeCun의 LeNet-5에서 제시한 방법을 통해 convolution 층과 subsampling 중을 구성한 뒤 convolution을 적용하고 fully comected 층으로 분류를 흐卜고, 눈과 코, 입, 잘못된 검출 결과를 분류하도록 구성하였다[17]. 컬러 이미지인 경우 입력의 컨볼루션의 커널 크기를 5x5x3으로 하여 적용하였다.
실험은 Mathworks사의 Matlab을 기반으로 케스케이드 안면 특징점 검출기와 컨볼루셔널 신경망을 구현하였다. 실험에 사용한 이미지는 University of Massachusetts, Am 血 erst에서 제공하는 Labeled Faces in the Wild와 웹에서 다운로드한 이미지를 사용하였다.
원본 이미지에서 얼굴을 추출하고 300x280으로 크기를 변경한 다음 눈, 코, 입의 이미지를 검출하기 위해 최소 사이즈와 최대 사이즈를 정하여 추출하고, 32x32 사이즈로 변경하였다. 그림 7의 아래쪽 부분은 32x32 사이즈의 눈, 코, 입의 데이터를 YUV포맷을 사용하여 흑백 이미지로 변환한 내용이다.
의미 없는 이미지를 추출하는 것을 막기 위해 먼저 눈, 코, 입을 검출하기 위한 최소 사이즈를 정한 뒤 케스케이드 안면 특징점 검출기를 실행하였다. 실험은 약 2, 300개의 얼굴 이미지를 사용하였고, 케스케이드 안면 특징점 검출기를 통해 눈 이미지 약 2, 800개, 코 이미지 약 2,000개, 입 이미지 약 2,000개, 오분류 이미지 500개를 추출하였다.
위해 전처리 과정을 진행한다. 전처리는 컨볼루션신경망에서 RGB 데이터 혹은 흑백 이미지 두 가지 경우를 학습 데이터로 사용하여 분류 결과를 확인하였다.
컨볼루셔널 신경망은 케스케이드 안면 특징점 검출기로 추출된 특징점 영역인 눈, 코, 입 이미지를 사용하여 학습되며, 테스트 이미지의 눈, 코, 입을 추출하였을 때 오분류가 발생할 경우 이를 수정한다. 이러한 방법은 로봇 혹은 머신 비전의 신뢰도가 높아져 비용과 정확도에서 개선이 될 것이다.
그림 7의 아래쪽 부분은 32x32 사이즈의 눈, 코, 입의 데이터를 YUV포맷을 사용하여 흑백 이미지로 변환한 내용이다. 컨볼루셔널 신경망의 입력 데이터로 그림 7의 하단의 색상이 있는 누 코, 입 이미지와 흑백 눈 코、 입 이미지를 사용하여 결과를 비교하였다. 휘도 이미지를 알고리즘 초기에 추출하지 않은 이유는 이미지가 클수록 연산량이 많아지고, 이미지 처리속도에 큰 영향을 미치기 때문이다.
케스케이드 안면 특징점 검출기를 통해 출력된 눈, 코, 입의 RGB 데이터를 컨볼루셔널 신경망의 입력 데이터로 사용하기 위해 전처리 과정을 진행한다. 전처리는 컨볼루션신경망에서 RGB 데이터 혹은 흑백 이미지 두 가지 경우를 학습 데이터로 사용하여 분류 결과를 확인하였다.
학습데이터를 수집했던 방법과 다르게 분류를 위해서 케스케이드 안면 특징점 검출기에 사용했던 최소 사이즈와 최대 사이즈를 없애고, 눈, 코、입을 포함한 모든 유사한 이미지들을 추출하여 분류를 진행한다. 그 다음 각 부위별 최댓값을 갖는 이미지를 선택하여 분류를 진행하는 방법으로 진행하였다.
대상 데이터
실험에 사용한 이미지는 University of Massachusetts, Am 血 erst에서 제공하는 Labeled Faces in the Wild와 웹에서 다운로드한 이미지를 사용하였다.
특징점 검출기를 실행하였다. 실험은 약 2, 300개의 얼굴 이미지를 사용하였고, 케스케이드 안면 특징점 검출기를 통해 눈 이미지 약 2, 800개, 코 이미지 약 2,000개, 입 이미지 약 2,000개, 오분류 이미지 500개를 추출하였다. 이미지는 피험자 3명의 사진 1,000장과 영국의 스털링대학교에서 제공하는 1, 300장의 이미지를 사용흐!.
였다. 이미지는 142명의 다양한 인종을 포함하고 있으며, 남성이 101명 여성이 41 명이다.
피험자 3명의 얼굴이 있는 이미지를 사용했다. 이미지의 개수는 1188장을 사용했으며, 각각의 이미지를 직접 확인하여 오분류 혹은 미분류를 계산하였다. 이상적인 검출기일 경우 눈은 2396 개.
각 표의 TP (True Positive)와 TN (True Negative), FP (False Positive), FN (False Negative), ACC (Accuracy, (TP + TN) / Total), PRE (Precision, TP / (TP + FP)), SEN (Secsitivity, TP / (TP + FN)), 100개의 이미지의 검출 평균 속도의 각각의 값을 나타낸다. 피험자 3명의 얼굴이 있는 이미지를 사용했다. 이미지의 개수는 1188장을 사용했으며, 각각의 이미지를 직접 확인하여 오분류 혹은 미분류를 계산하였다.
데이터처리
예를 들면 공장에서 불량품을 검출해야 할 경우 오분류에 따른 손실을 최소화할 수 있을 것이고, 감정인식의 경우 로봇이 사람의 표정을 추출할 때의 정확도 또한 향상될 것이다. 이러한 방법의 실효성을 확인하기 위해 Matlab을 기반으로 구현된 안면 특징점 검출 프로그램을 이용하여 결과를 도출하고 이를 분석하여 확인하였다.
이론/모형
Forward propagation을 진행할 때는 활성함수가 적용되는데, 본 논문에서는 활성함수로 softmax 방식을 사용하였다. Softmax를 활성함수로 사용할 경우 확률도 표현되어 가장 높은 확률이 나타난 출력노드를 선택하는 방식이다.
YUV 포맷은 흑백의 이미지로 변환하기 위해 적용하였다.
눈, 코, 입을 추출하는 내용은 기존의 학습데이터를 얻을 때의 내용과 동일하지만, 만약 분류의 결과가 케스케이드 안면 특징점 검출기에서 출력된 결과와 다를 경우 결과를 수정하는 알고리즘이 포함되어있다. 본 논문에서는 분류 알고리즘으로 컨볼루셔널 신경망을 사용하였다.
성능/효과
방법에 대하여 제안하였다. 각 학습 횟수마다 학습데이터의 경우 좋은 결과가 나왔지만, 실제로 이미지에 적용하였을 때 오분류가 완전히 수정되지 않음을 확인할 수 있었다. 이러한 원인으로는 YIW로 변환하여 명암으로밖에 구분을 할 수 없었던 점이 가장 크다고 할 수 있다.
값을 사용하여 나타냈다. 그 결과 컬러 이미지의 경우 49회 학습 때 2.06%의 가장 낮은 오차율을 보였고, 흑백 이미지의 경우 39회 때 2.28%의 가장 낮은 오차율을 보였다. 컬러 이미지가 더 좋은 결과가 나온 이유로는 이미지의 숫자가 적당했고, 컨볼루션 층에서 이미지의 특징을 잘 찾았기 때문일 것이다.
그 결과 케스케이드 안면 특징점 검출기만 사용하였을 때보다 더 좋은 성능 결과를 확인할 수 있었다. 이러한 연구는 머신비전을 사용하여 물체 혹은 얼굴 등을 검출해야 하는 산업에서 중요한 역할을 할 것이라 생각한다.
하지만 이러한 방법들은 눈, 코, 입이 아닌 얼굴을 중점으로 개선하였고, 그로인해 눈, 코, 입의 성능을 향상시키기에는 한계가 있다. 또한 기존의 케스케이드 안면 특징점 검출기의 성능보다 월등이 높아지지 않았다.
먼저 PRE와 ACC의 결과로부터 검출기의 정확도가 개선이 됐음을 확인할 수 있었다. 하지만 SEN의 결과로 민감도는 대상에 따라서 감소를 보였으며 속도부분에서는 연산량이 많아 지연이 됨을 확인할 수 있었다.
표 1, 2의 결과로부터 컨볼루셔널 신경망을 추가한 케스케이드 안면 특징점 검출기의 성능이 개선됨을 확일 수 있었다. 먼저 PRE와 ACC의 결과로부터 검출기의 정확도가 개선이 됐음을 확인할 수 있었다.
먼저 PRE와 ACC의 결과로부터 검출기의 정확도가 개선이 됐음을 확인할 수 있었다. 하지만 SEN의 결과로 민감도는 대상에 따라서 감소를 보였으며 속도부분에서는 연산량이 많아 지연이 됨을 확인할 수 있었다. TN의 경우 케스케이드 안면 특징점 검출기 같은 경우 확인할 수 없기 때문에 0으로 하였지만, 컨볼루셔널 신경망을 포함한 케스케이드 안면 특징점 검출기 같은 경우 기존에 케스케이드 안면 특징점 검출기에서 나타난 출력을 사용하여 분류를 진행하였기 때문에 값을 포함하고 있다.
후속연구
계획이다. 이 연구의 결과는 서비스 로봇의 가장 핵심적인 기술로 적용될 수 있을 것이다.
컨볼루셔널 신경망은 케스케이드 안면 특징점 검출기로 추출된 특징점 영역인 눈, 코, 입 이미지를 사용하여 학습되며, 테스트 이미지의 눈, 코, 입을 추출하였을 때 오분류가 발생할 경우 이를 수정한다. 이러한 방법은 로봇 혹은 머신 비전의 신뢰도가 높아져 비용과 정확도에서 개선이 될 것이다. 예를 들면 공장에서 불량품을 검출해야 할 경우 오분류에 따른 손실을 최소화할 수 있을 것이고, 감정인식의 경우 로봇이 사람의 표정을 추출할 때의 정확도 또한 향상될 것이다.
더 좋은 성능 결과를 확인할 수 있었다. 이러한 연구는 머신비전을 사용하여 물체 혹은 얼굴 등을 검출해야 하는 산업에서 중요한 역할을 할 것이라 생각한다.
받고 있다. 이러한 연구는 인간-로봇 상호작용(HRI: Human-Robot Interaction)을 구현하기 위한 핵심 과정으로서 디지털 영상처리 기술과 더불어 패턴인식 및 기계학습에 대한 포괄적인 연구를 필요로 한다.
추후에는 복잡하고 크기가 작은 이미지도 고려하여 눈, 코, 입의 특징을 확인하는 내용을 진행할 계획이고, 추출한 눈, 코, 입의 데이터로 사용자의 감정을 추출하는 방법을 연구할 계획이다. 이 연구의 결과는 서비스 로봇의 가장 핵심적인 기술로 적용될 수 있을 것이다.
참고문헌 (22)
J. H. Yu, S. M. Park, K. E. Ko, and K. B. Sim, "Face classification using cascade facial detection and convolutional neural network," Proc. of Korean Institute of Intelligent Systems Fall Conference, vol. 25, no. 2, pp. 157-159, 2015.
R. Cowie, E. Douglas-Cowie, N. Tsapatsoulis, G. Votsis, S. Kollias, W. Fellenz, and J. G. Taylor, "Emotion recognition in human-computer interaction," IEEE Signal Processing Magazine, vol. 18, no. 1, pp. 32-80, Jan. 2001.
M. Valstar, B. Martinez, X. Binefa, and M. Pantic, "Facial point detection using boosted regression and graph models," Proc. of 2010 IEEE Conference on Computer Vision and Pattern Recognition, pp. 2729-2736, 2010.
M. F. Valstar, I. Patras, and M. Pantic, "Facial action unit detection using probabilistic actively learned support vector machines on tracked facial point data," Proc. of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 76-83, Jun. 2005.
Y. Sun, X. Wang, and X. Tang, "Deep convolutional network cascade for facial point detection," Proc. of 2013 IEEE Conference on Computer Vision and Pattern Recognition, pp. 3476-3483, Jun. 2013.
S. Berretti, B. B. Amor, M. Daoudi, and A. Del Bimbo, "3D facial expression recognition using SIFT descriptors of automatically detected keypoints," The Visual Computer, vol. 27, pp. 1021-1036, Jun. 2011.
J. Wang, R. Xiong, and J. Chu, "Facial feature points detecting based on Gaussian mixture models," Pattern Recognition Letters, vol. 53, no. 1, pp. 62-68, Feb. 2015.
E. Owusu, Y. Zhan, and Q. R. Mao, "An SVM-AdaBoost facial expression recognition system," Applied Intelligence, vol. 40, no. 3, pp. 536-545, Apr. 2014.
Y. M. Hong, I. S. Lee, J. S. Park, Y. S. Jo, and C. B. Kim, "Improvement in viola-jones method for real-time face recognition system," The Korean Institute of Electrical Engineers (in Korean), vol. 61, no. 1, pp. 143-147, 2012.
W. Burgin, C. Pantofaru, and W. D. Smart, "Using depth information to improve face detection," Proc. of the 6th International Conference on Human-Robot Interaction, NewYork, USA, pp. 119-120, 2011.
A. Jain, J. Bharti, and M. K. Gupta, "Improvements in OpenCV's viola jones algorithm in face detection-tilted face detection," International Journal on Signal and Image Processing, vol. 5, no. 2, pp. 21-28, 2014.
P. Viola and M. Jones "Rapid object detection using a boosted cascade of simple features," Proc. of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, vol. 1, pp. 511-518, 2001.
R. Lienhart, A. Kuranov, and V. Pisarevsky, "Empirical analysis of detection cascades of boosted classifiers for rapid object detection," Pattern Recognition, vol. 2781, pp. 297-304, Sep. 2003.
A Jain, J. Bharti, M. K. Gupta, "Improvements in OpenCV's viola jones algorithm in face detection-tilted face detection," International journal of Signal and Image Processing, vol. 5, pp. 21-28, 2014.
W. Wang, J. Yang, J. Xiao, S. Li and D. Zhou, "Face recognition based on deep learning," Human Centered Computing, vol. 8944, pp. 812-820, Mar. 2015.
Y. K. Park, J. K. Park, H. I. On, and D. J. Kang, "Convolutional neural network-based system for vehicle front-side detection," Journal of Institute of Control, Robotics and Systems (in Korean), vol. 21, no. 11, pp. 1008-1016, 2015.
Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner, "Gradient-based learning applied to document recognition," Proc. of the IEEE, vol. 86, no. 11, pp. 2278-2324, Nov. 2015.
D. M. Kwak, S. W. Park, and H. N. Lee, Machine Learning to Deep Learning, PubPle, Seoul, 2015.
Y. L. Boureau, J. Ponce, and Y. LeCun, "A theoretical analysis of feature pooling in visual recognition," Proc. of the 27th International Conference on Machine Learning, pp. 1-8, 2010.
Y. Bengio, "Learning deep architectures for AI," Foundations and $Trends^{(R)}$ in Machine Learning, vol. 2, no. 1, pp. 1-127, Jan. 2009.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.