DOI QR코드

DOI QR Code

Face Detection Using Shapes and Colors in Various Backgrounds

  • Lee, Chang-Hyun (Dept. of Material Processing and Engineering, Inha University) ;
  • Lee, Hyun-Ji (Dept. of Material Processing and Engineering, Inha University) ;
  • Lee, Seung-Hyun (Dept. of Material Processing and Engineering, Inha University) ;
  • Oh, Joon-Taek (Dept. of Material Processing and Engineering, Inha University) ;
  • Park, Seung-Bo (Software Convergence Engineering, Inha University)
  • Received : 2021.05.27
  • Accepted : 2021.07.12
  • Published : 2021.07.30

Abstract

In this paper, we propose a method for detecting characters in images and detecting facial regions, which consists of two tasks. First, we separate two different characters to detect the face position of the characters in the frame. For fast detection, we use You Only Look Once (YOLO), which finds faces in the image in real time, to extract the location of the face and mark them as object detection boxes. Second, we present three image processing methods to detect accurate face area based on object detection boxes. Each method uses HSV values extracted from the region estimated by the detection figure to detect the face region of the characters, and changes the size and shape of the detection figure to compare the accuracy of each method. Each face detection method is compared and analyzed with comparative data and image processing data for reliability verification. As a result, we achieved the highest accuracy of 87% when using the split rectangular method among circular, rectangular, and split rectangular methods.

본 논문에서는 영상 속 인물을 탐지하고 얼굴 영역을 검출하는 방법을 제안하며, 이 방법은 2가지 작업으로 구성한다. 첫째, 서로 다른 두 명의 인물을 구분하여 프레임 내 인물의 얼굴 위치를 탐지한다. 빠른 탐지를 위해 영상 내 물체를 실시간으로 검출하는 YOLO(You Only Look Once)를 이용하여 얼굴의 위치를 탐지하고 객체탐지상자로 나타낸다. 둘째, 객체탐지상자를 바탕으로 정확한 얼굴 면적을 검출하기 위해 3가지 영상처리 방법을 제시한다. 각 방법은 검출 도형으로 추정한 영역에서 추출한 HSV 값을 이용하여 인물의 얼굴 영역을 검출하였으며 검출 도형의 크기와 모양을 바꾸어 각 방법의 정확도를 비교하였다. 각 얼굴 검출 방법은 신뢰성 검증을 위해 비교 데이터와 영상처리 데이터로 비교 및 분석하였다. 그 결과 원형, 직사각형, 분할 직사각형 방법 중 분할된 직사각형 방법을 사용했을 때 87%로 가장 높은 정확도를 달성하였다.

Keywords

I. Introduction

얼굴 검출 기술(Facial Recognition Technology)은 4 차 산업의 관심 분야 중 하나로 표정검출, 안면검출, 감정검출 등 얼굴 검출에 관한 연구가 활발히 진행되고 있다. 특히 Soohwan Kang et al. 논문에서는 얼굴 검출 기술을 활용하여 영화 속 등장인물들의 얼굴 면적의 크기를 계산하고 영화를 분석하였다[1]. 얼굴 검출 기술은 더욱 다양한 분야에 활용하기 위해서는 여러 영상에 적용하였을 때 편차 없이 높은 정확도를 보일 수 있어야 한다. 따라서 영상마다 다른 값을 가지는 파라미터들에 영향을 받지 않고 얼굴을 정확하게 검출하는 것이 중요하다. 하지만 기존의 얼굴 검출과 관련한 영상처리 논문에서는 얼굴 검출의 편리성을 위해 얼굴 영역 내부의 색상이 균일하고 배경과 구분하기 쉬운 이미지를 사용하여 실제 영상에 적용하기에 적합하지 않다[2]. 따라서 이 논문에서는 실제 영상에도 적용할 수 있는 얼굴 검출 기술 개발을 위해 다양한 조건과 변수를 가지는 영화를 선택하여 영화 속 인물의 얼굴 검출정확도를 확인하고자 하였다. 영화에서는 줄거리의 흐름에 따라 배경과 조명이 바뀌기 때문에 얼굴 각도에 따라 조명을 받는 얼굴 내부의 색상이 균일하지 않고 얼굴과 배경은 조명에 의해 색상이 유사해진다. 또한, 시∙공간적 특징을 갖는 영화에서는 햇빛과 조명과 같은 상황적 요인으로 인해 얼굴 영역의 색상이 국부적으로 차이가 나게 된다. 따라서 다양한 색상 변수를 가지는 영상에서는 얼굴 검출 기술을 적용하기 위해서 조명과 배경에 의한 악영향을 받지 않는 색상영역 변화에 강한 얼굴 검출 방법이 필요하다. 이에 본 논문은 얼굴 검출 기술이 배경 색상에 국한되는 한계를 벗어나 다양한 배경에서도 얼굴을 정확히 탐지하고 얼굴 색상 검출을 통해 자동으로 얼굴 영역의 범위를 검출해주는 얼굴 검출 알고리즘에 대해 초점을 두고 실험을 진행하였다. 실험에 사용한 영상은 톰 후퍼 감독이 제작한 King`s speech라는 영화이며 주요 등장인물 2명에 대해 인물 얼굴 영역의 위치를 판단하기 위해 딥러닝 기반인 YOLO(You Only Look Once)를 사용하였고 다양한 배경에서도 얼굴 영역을 검출하기 위해 Open CV를 활용하였다. 얼굴 영역의 검출 방법으로는 원형, 직사각형, 분할 직사각형 방법으로 총 3가지의 검출 도형 방법을 고안하였고 실험 단계는 총 4단계로 구성하였다.

첫째, 영화 내에서 주요 등장인물 탐지를 위해 빠른 속도로 프레임을 처리하는 딥러닝 기반의 YOLO를 통해 영화 속 주요 등장인물들을 학습시켰다. 둘째, 학습한 모델에 영상을 입력하여 관심 영역(ROI:Region of Interest) 에객체탐지상자(Bounding Box)를 씌워 주요 등장인물들을 탐지하였다[3-5]. 셋째, 탐지한 데이터에서 얼굴 영역을 구하기 위해 검출 도형 방법을 이용하였고 여러 이미지 처리기법을 통해 얼굴 영역을 검출한다. 넷째, Shot에 따라주요 등장인물들의 얼굴 면적의 값을 구한 후 비교 데이터를 사용하여 각 검출 도형 방법의 정확도를 평가하였다.

II. Preliminaries

1. Related Works on Face Detection

1.1 Face Detection Method Using Color Space

얼굴 검출 및 검출에 관한 연구들은 다양한 분야에서 활용하고 있고 얼굴 영역의 검출 알고리즘은 일반적으로 얼굴 색상과 구별하기 쉬운 균일한 배경을 가정한 상태에서 얼굴 영역을 RGB, HSV, YCrCb 색 공간을 이용하여 검출하였다[6,7]. Do, J. H.에서는 다양한 조명과 배경 조건에서 얼굴 윤곽선을 검출하기 위해 입력 영상의 히스토그램 분석을 얼굴 영역을 검출하였다[8]. Chae et al.에서는 노이즈를 고려하여 손에 해당하는 피부색을 검출하기 위해 이미지를 HSV 색상영역으로 변환하여 알고리즘에 적용하였으며 활용한 색 공간이 조도 및 상황적 요인에서도 높은 검출률을 보였다[9].

1.2 YOLO(You Only Look Once)

YOLO는 딥러닝을 이용한 객체 검출 방법 중 뛰어난 처리 속도로 빠르게 객체 탐지(Object Detection)를 수행하며 객체에 대한 일반적인 특징을 학습하기 때문에 다른 Detection System보다 높은 성능을 보여준다. Fig 1과같이 S x S 격자로 분할된 입력 이미지는 객체를 판단하기 위해 각 Grid Cell에 포함된 객체의 정중앙에 Boundary-Box가 위치할 수 있도록 조정하며 객체의 유무를 예측하고 Boundary-Box를 씌운다. Boundary-Box 의 정보는 YOLO 네트워크 마지막 Layer에 담겨있으며 Boundary-Box의 중심점 좌표 (x, y)와 너비, 높이, Confidence Score(객체 유무를 나타내는 값)까지 총 5개의 인자로 단 1번의 연산을 통해 객체를 검출하기 때문에 빠른 연산 속도의 장점이 있다.

CPTSCQ_2021_v26n7_19_f0001.png 이미지

Fig. 1. SxS Characters Detected in Grid Segmented Image

각 셀 격자는 객체탐지상자에 대해 각 클래스를 예측하기 위해 설정한 IOU(Intersection Over Union)값을 통해서 얼굴 영역에 대해 예측하고 해당 객체에 객체 탐지 상자를 씌우게 된다[10,11]. IOU는 Fig 2와 식 (1)에 나타난 것처럼 신경망이 예측한 상자와 사용자가 정의한 정답 상자를 토대로 두 상자의 합집합에 대한 교집합의 영역을 구하여 0~1의 값 사이로 설정한다. 이 임계값은 높게 설정할수록 셀 그리드 내에 객체가 존재하는지에 대해 신뢰성이 높은 탐지를 할 수 있다.

CPTSCQ_2021_v26n7_19_f0002.png 이미지

Fig. 2. IOU(Intersection Over Union) (a) Area of Union (b) Area of Overlap (c) Character Image Detected as An Overlapping area

 

\(I O U=\frac{\text { Areaof overlap }}{\text { Areaof union }}\)               (1)

III. Detection of Facial Regions Using Specific Figures

1. Work Steps of Face Detection Algorithm

이 논문에서는 얼굴 영역 감지 방법은 2가지 방법으로 구성되며 각 방법의 단계별로 작업을 진행하여 얼굴 영역을 검출하였다. 영화에서 스토리의 전개를 주도하는 주요 인물들의 얼굴 영역을 YOLO를 이용하여 얼굴 영역을 추정하였다. 얼굴 추정 데이터를 얻기 위한 작업 단계는 Fig 3과 같이 총 6단계로 구성되며 크게는 3단계로 진행하였다. 첫째, 영화 영상 데이터에서 주요 인물들의 검출 및 분류 작업을 위해 학습데이터를 수집하였고 수집된 학습데이터를 토대로 YOLO 모델을 학습하여 등장인물들을 분류하는 모델을 구성하였다. 둘째, 학습된 모델을 토대로 영상 데이터를 입력하여 영상 내에 존재하는 주요 등장인물들의 얼굴 영역을 검출하였다. 셋째, 영상처리에 적용하기 위해 검출한 등장인물의 얼굴 영역을 각 Class가 갖는 Boundary-Box의 색상별로 등장인물들을 분류하고 시간의 순서에 따라 나열하였다.

CPTSCQ_2021_v26n7_19_f0003.png 이미지

Fig. 3. Work Steps of Face Estimation Data

Ft:Frame(F) over Time(t)

이미지 처리 작업은 얼굴 추정 데이터를 바탕으로 4단계 작업으로 구성하였고 3가지의 검출 도형 방법들을 영상처리 작업에 적용하여 얼굴 영역을 구했으며 각 검출 도형 방법의 정확성을 판단하고자 비교하였다. 4단계 작업은 Fig 4와 같다. 첫째, 상황적 요인과 조명에 따라 달라지는 피부색의 범위를 자동으로 검출하기 위해 각 검출 도형 방법을 적용하였다. 둘째, 검출 도형 방법으로 얻은 H, S, V 값들은 신뢰구간을 통해 프레임마다 등장인물의 피부 색상 범위를 검출하였다. 셋째, 얼굴 추정 데이터에서 피부색으로 정의한 범위 내에 존재하는 픽셀들을 추출하여 얼굴 윤곽을 그려주었다. 마지막으로 얼굴 영역의 윤곽에 관한 각 방법의 정확도를 확인하기 위해 전체 이미지를 장면이 전환되는 Shot을 기준으로 분류하고 shot 당 3장씩 추출하였다. 추출한 데이터는 정확성 검증을 위해 비교 데이터로 구한 면적과 각 검출 도형 방법으로 구한 윤곽선 내의 면적으로 비교하였다.

CPTSCQ_2021_v26n7_19_f0004.png 이미지

Fig. 4. Working Steps for Face Area Detection

2. Dataset

2.1 Train Data

영화 속 내용에서 스토리의 전개를 주도하는 주요 등장인물은 Protagonist(주인공)와 Antagonist(대립 인물) 로구성된다. 따라서 두 인물을 구별하여 학습시키기 위해 각인 물의 얼굴로 구성된 이미지를 학습데이터로 사용하였다. 학습데이터는 총 4, 284개로 구성되며 두 개의 클래스를 검출하여 주인공과 대립 인물을 각각 라벨링 하였다.

2.2 Output Data

학습한 YOLO 모델에 전체 영화 영상을 입력 데이터로 사용하여 Fig 5와 같이 주인공과 대립 인물을 탐지하였다. 주인공과 대립 인물의 객체 탐지 상자(Boundary-Box)는 흰색과 초록색으로 설정하였고, 얼굴 영역 색상 검출 시 얼굴 색상과 유사한 Boundary-Box는 얼굴 영역을 오검출할 우려가 있고 Boundary-Box에 의한 위험부담을 최소화하는 색상을 선택하였다. 객체 탐지 결과 총 8, 493개로 주인공 5, 507개, 대립 인물 2, 986개의 검출데이터를 얻었다.

Table 1. The Number of Face Estimation Dataset

CPTSCQ_2021_v26n7_19_t0001.png 이미지

CPTSCQ_2021_v26n7_19_f0005.png 이미지

Fig. 5. Face Estimation Data (a) Antagonist (b) Protagonist

2.3 Image Processing Data

영상처리 데이터는 얼굴 추정 이미지에 존재하는 얼굴 영역을 검출 도형 방법과 신뢰구간을 활용하여 얼굴 윤곽을 검출한 이미지 데이터이다. 검출 도형 방법은 얼굴 영역이 상황적 요인과 배경에서 뚜렷한 차이를 보이면 상대적으로 정확하게 얼굴 영역을 검출할 수 있다. 정확한 얼굴 영역 검출을 위해 색상영역을 변환하여 각 색 공간의 적합성을 확인하였다. Fig 6과 같이 RGB, YCrCb, Luv, HSV의 네 가지 색상영역을 비교하였을 때 HSV는 다른 색 영역과 달리 얼굴 영역 외 색상과 얼굴 영역 색상의 대비가 가장 큰 것을 확인하였다. 따라서 얼굴 영역을 검출하기 위한 색상영역으로 HSV가 가장 적합하다고 판단하였고 HSV 색 공간을 바탕으로 3가지 검출 도형 방법을 적용하여 얼굴 영역 검출에 대한 분석을 진행하였다.

CPTSCQ_2021_v26n7_19_f0006.png 이미지

Fig. 6. Image Output According to The Color Space of The Image Containing Noise (a) RGB (b) YCrCb (c) Luv (d) HSV

Fig 7은 도형 형태에 따른 방법으로 원형 영역, 직사각형 영역, 분할 직사각형 영역 방법으로 정의하였다. 검출도형 방법은 도형의 형태와 크기에 따라 이미지에 해당하는 얼굴 영역의 색상 값을 추출한다. 이 추출한 값은 얼굴 영역을 추정하기 위해 통계적 방법을 사용하여 얼굴 영역 범위를 추정하였다. 추가로 영상처리 방법의 신뢰성 검증을 위해 전체 데이터를 shot 별로 구분하고 각 shot 당 3 장의 프레임을 구성하였다. 각 shot 당 구성한 주요 인물 (주인공, 대립 인물)의 데이터는 각각 825, 638개로 총 1, 463개를 분류하였다.

CPTSCQ_2021_v26n7_19_f0007.png 이미지

Fig. 7. Detection Figure Method a: Circular Area b: Rectangular Area c: Split Rectangular Area

2.4 Comparison Data

본 논문에서 비교 데이터는 영상처리에서 추출한 이미지와 같은 이미지를 사용하여 영상처리 데이터의 신뢰성 검증을 위해 구성하였다. Fig 8(b)과 같이 사람이 얼굴이라 판단하는 얼굴 영역에 직접 그려 윤곽선을 포함하였고 비교 데이터로 구한 윤곽선의 내부 면적과 영상처리로 구한 윤곽선의 내부 면적을 비교하여 정확성을 평가하고자 하였다. 데이터 크기는 영상처리 데이터와 마찬가지로 각각 825, 638개로 총 1, 463개를 구성하였다.

CPTSCQ_2021_v26n7_19_f0008.png 이미지

Fig 8. Face Area Image (a) Image Processing Data (b) Comparison Data

Table 2. The Number of Open CV Dataset

CPTSCQ_2021_v26n7_19_t0002.png 이미지

3. Parameter Setting

본 논문에서 YOLO는 검출 도형 방법을 적용하기 위해 사전처리 방법으로 사용되었다. 검출 도형 방법은 인물 얼굴의 중심으로부터 색상 값들을 추출해야 하므로 YOLO를 통해 얼굴 영역의 위치를 판단하며 해당 Boundary-box 외 배경 영역은 제거함으로써 배경 색상이 얼굴 검출에 미칠 수 있는 악영향을 최소화하였다. 따라서 사전처리 방법을 통해 주요 등장인물들의 얼굴 영역(Boundary-box)을 영상 내에서 탐지하여 얼굴 추정 데이터를 추출하였다. 학습 모델은 Tensorflow을 이용하여 사전 정의된 모델을 사용하였다 [5]. 이미지에서 객체 탐지를 위한 Filters의 파라미터 값으로 셀 그리드 크기는 3x3, Boundary-Box 개수는 1개로 설정하였고 식(2)에 따라 필터의 크기를 설정하였다[9].

\(\text { Filters }=S \times S \times(B * 5+C)\)           (2)

추가로 학습 모델에 설정한 파라미터는 최적화 방법, 학습률, 학습 횟수이며 각각의 파라미터들은 학습 모델 성능에 영향을 미친다. 최적화 방법은 Adagrad와 RMSProp의장점을 섞어 안정적으로 최적화하는 Adam 최적화 방법을 사용하였다[12]. 학습 횟수는 총 Epoch 100, 학습률은 오차가 10% 이하가 될 때까지 10-4로 학습하였으며 그 외에는 10-5으로 설정하여 학습하였다. 모델 학습 완료 후에 영상 데이터를 입력하여 주인공과 대립 인물을 탐지하였다. YOLO 검출데이터는 Open CV를 이용한 영상처리 과정에서 인물 면적을 계산하기 위한 데이터로 사용되었다.

4. Detection Figure Method

4.1 Circular Area & Rectangular Area

해당 방법은 YOLO 출력 데이터를 통해 얼굴 영역의 중심 지점에 원형 영역 및 직사각형 영역 방법을 적용하여 H, S, V값을 추출하였다. 이 검출 영역에 해당하는 추출한 값은 신뢰구간을 통해 얼굴 색상 범위를 검출하였고 이미지 내에서 범위에 해당하는 얼굴 영역을 검출하였다. Fig 9(a) 와 Fig 10(a)은 직사각형 영역 방법의 과정을 통해 얼굴 영역으로 검출한 이미지이고, Fig 9(b)와 Fig 10(b)는 원형영역 방법의 과정을 통해 얼굴 영역을 검출한 이미지를 나타낸 것이다. 검출 도형 내부의 HSV 값을 추출한 후, 원활한 윤곽 검출을 위해 신뢰구간 내에 해당하는 HSV 값을 이용하여 얼굴 영역을 하얀색, 그 외에 영역은 검은색으로 나타내었다. Fig 9와 Fig 10은 침식과 팽창 연산을 반복하여컨투어 검출을 통해 얼굴 영역을 추출하는 과정을 나타내었다. 침식 연산은 배경에서 얼굴과 유사한 값을 가지는 HSV 값들을 제거하였고, 팽창은 검출하지 못한 부분에 대해 확장하여 사용되었다. 이러한 모폴로지 연산 후 얼굴 영역의 둘레는 컨투어 검출을 통해 파란색 윤곽선으로 표현하였다. 직사각형 영역 방법은 원형 영역 방법보다 비교적 공백없이 얼굴 영역에 해당하는 색상 검출이 좀 더 뚜렷한 것을 볼 수 있다. 또한, 원형 및 직사각형 검출 도형 방법은 얼굴 각도에 따라 인물이 받는 조도의 양이 달라지거나, 인물 얼굴의 중심점을 기준으로 좌∙우 얼굴의 밝기가 다를 때 얼굴 영역 색상 검출이 정확하지 않았다.

CPTSCQ_2021_v26n7_19_f0010.png 이미지

Fig. 9. Face Area Detection Using Circle and Rectangle Figure Detection (Antagonist) (a) Steps of Face Contour Detection Using Rectangle Figure (b) Steps of Face Contour Detection Using Circle Figure

CPTSCQ_2021_v26n7_19_f0011.png 이미지

Fig. 10. Face Area Detection Using Circle and Rectangle Figure Detection (Protagonist) (a) Steps of Face Contour Detection Using Rectangle Figure (b) Steps of Face Contour Detection Using Circle Figure

4.2 Split Rectangular Area

조명을 받는 얼굴 각도나 상황적 환경은 검출하고자 하는 얼굴 영역의 정확성과 직결된다. 따라서 앞서 말한 두 가지의 검출 도형 방법을 보완하기 위해 Fig 11과 Fig 12 와 같이 좌∙우 얼굴을 분할하여 얼굴 색상을 검출할 수 있는 분할 직사각형 방법을 고안하였다. 분할 직사각형 방법은 조명의 영향을 고려하여 이미지의 절반을 나누어 좌 ∙우 이미지에 대해 영상처리를 진행하였으며 얼굴의 국부적인 피부 색상 범위만 추출하는 오류를 줄이고, 더욱 정확한 결과를 얻을 수 있다. 이 방법은 좌측 이미지와 우측 이미지에 대한 HSV 속성값 구하기 위해 분할된 이미지에 대해 직사각형 영역을 추출하고 신뢰구간을 활용하여 HSV 속성값의 범위를 설정하였다.

CPTSCQ_2021_v26n7_19_f0012.png 이미지

Fig. 11. Steps of Face Contour Detection Using Split Rectangle (Antagonist)

CPTSCQ_2021_v26n7_19_f0013.png 이미지

Fig. 12. Steps of Face Contour Detection Using Split Rectangle (Protagonist)

4.3 Color Extraction Using Confidence Interval

얼굴 영역의 HSV 속성 범위를 추정하기 위해 해당 영역이 포함하는 HSV 표본평균의 연속확률 분포에 대해 모집단 평균 가 포함될 신뢰구간을 계산하였다. Fig 13과 같이 모평균에 대한 신뢰구간은 95%로 설정하여 상한과 하한 사이에 존재하는 H, S, V값은 얼굴 영역이라 판단하였다. 각 이미지의 픽셀은 HSV 값을 신뢰구간을 통해 얼굴 영역을 검출하며, 그에 해당하는 영역은 얼굴 영역 검출의 정확도를 높이기 위해 모폴로지 연산 방법 중 침식(Dilate) 과 팽창(Erode)을 반복하여 실행하였다[13]. 침식은 신뢰구간 범위에 존재하는 얼굴 영역 외에 비슷한 픽셀값을 가지는 오류들을 제거하기 위해 사용되었다. 반면에 팽창은 신뢰구간 내 존재하는 픽셀 주위의 값에 대해 설정한 커널로 연산하여 검출하지 못한 얼굴 영역에 대해서 연산하여 확장하였다. 윤곽선은 컨투어(Contour) 검출 및 특성에 따라 검출 영역이 달라지며, 본 논문에서는 얼굴 영역을 윤곽선 검출 후, 볼록한 얼굴 영역에 대해 Convex Hull 함수를 사용하여 얼굴 윤곽선의 둘레 내에 해당하는 면적은 Contour Area 함수를 통해 얼굴 면적을 계산하였다.

CPTSCQ_2021_v26n7_19_f0014.png 이미지

Fig. 13. Confidence Interval

\(\text { Limit }=m \pm(1.96 \times \sigma) \)               (3)

\(\text { Confidence Interval }=m \pm 1.96 \times(\sigma / \sqrt{n})\)      (4)

m : Sample Mean

\(\sigma\) : Standard Deviation of The Sample Mean

Z-Score : 1.96

5. Experimental Result

얼굴 영역 측정은 전체 Shot에서 3장씩 추출한 검증 데이터를 이용하여 서로 다른 3가지 방법으로 HSV 값을 추출하여 피부색 범위를 검출하며 진행되었다. 이러한 방법들에 대한 신뢰성을 판별하기 위해 방법별 정확도 분석을 진행하였고, 이 데이터들을 통해 사람의 시각으로 판별한 얼굴 면적과 영상처리로 측정한 얼굴 면적을 비교하였다. 사람의 시각으로 판별한 얼굴 면적은 Fig 14와 같이 Open CV를 통해 얼굴 영역의 기준에 준수하여 그렸으며, 좀 더 정밀한 분석을 위해 영상처리에서 적용했던 면적 함수인 Contour Area를 사용하여 얼굴 면적을 계산하였다.

CPTSCQ_2021_v26n7_19_f0015.png 이미지

Fig. 14. Comparison Data

\(\text { Accuracy }_{i}=1-A B S\left(X-Y_{i}\right) / X\)             (5)

X: Area of Comparison Data

Yi: Face Area Measured by Figure Detection Method(i)

제안한 방법 중 가장 높은 정확성을 가진 방법은 분할 직사각형 영역의 검출 방법으로 주인공과 대립 인물의 면적검출에서 각각 86.0, 87.0%의 정확도를 얻었다. 이 검출 방법은 각각 71.0%, 79.0%의 정확도를 보인 원형 영역의 검출 방법보다 우수한 성능을 보였지만 정확도 85.0%, 86.0%를 얻은 직사각형 영역의 검출 방법과 비교하였을 때 정확성 면에서 큰 차이를 보이지 않았다. 추가로 각 검출도형 방법의 면적 계산 결과에 대한 신뢰도를 평가하기 위해 Fig 15와 같이 정규분포의 형태로 나타내었다. x축은 비교 데이터 면적에 대한 도형 검출 면적의 비율을 의미하며 1에 가까울수록 두 면적이 일치하므로 정확도가 높다. 정규분포 그래프를 이용하여 평균을 중심으로 각각의 검출 방법에 대해 정확성의 분포를 확인하였다. 분할 직사각형, 직사각형, 원형 검출 방법의 편차는 각각 0.2273, 0.2706, 0.4039의 값을 보인다. 각 검출 도형 방법 중 분할 직사각형 영역 방법을 사용하였을 때 편차가 가장 낮으며 확률적으로 이산 값이 가장 적음을 볼 수 있다. 따라서 세 가지의 방법 중 분할 직사각형을 이용한 얼굴 면적 검출 방법으로 얻은 결과의 신뢰도가 가장 높다는 것을 알 수 있다.

Table 3. Comparisons of Accuracy among Measurement Methods

CPTSCQ_2021_v26n7_19_t0003.png 이미지

CPTSCQ_2021_v26n7_19_f0016.png 이미지

Fig. 15. Area Proportion Distribution

IV. Discussion on The Experiment

본 논문에서는 YOLO 출력 데이터 내 얼굴 영역으로 예측되는 일정 부분의 색상을 추출하고, 색상의 신뢰구간을 통해 관심 영역 내의 얼굴 영역 색상 범위를 검출하였다. 원형 영역 방법은 직사각형 검출 도형보다 색상 추출 범위가 상대적으로 좁아 얼굴 영역의 검출에서 낮은 성능을 보였다. 직사각형 방법은 색상 추출 범위가 넓고 조명에 영향받지 않는 얼굴 영역에 대해 정확성이 높았고, 반면에 인물의 얼굴 각도에 따라 국부적으로 얼굴이 받는 조도의 양이 차이가 나는 이미지에 대해서는 색상을 검출하는 데 어려움이 있었다. 분할 직사각형 영역의 검출 방법에서는 얼굴에 비치는 조명에 의한 노이즈를 고려하여 이미지를 분할 한 후 분할된 이미지에 각각 직사각형 도형을 사용하여 색상을 추출하였고 각 이미지에 추출된 두 가지의 HSV 색상 범위를 이용하여 얼굴 영역을 검출하였다. 따라서 분할 직사각형의 경우 노이즈에 의해 발생하는 오차를 크게 줄이고 원형과 직사각형 영역 방법보다 정확하게 얼굴 색 범위를 검출할 수 있었다. 하지만 분할된 이미지에 대해 2 개의 색 공간의 범위를 검출하다 보니 분할 전 이미지보다 넓은 범위의 HSV 색상이 추출되고 상대적으로 배경에 포함된 HSV 값이 많이 추출되어 얼굴 영역 외의 영역을 추출하였다. 따라서 직사각형 영역 검출 방법과 분할 직사각형 영역 검출 방법의 정확도는 큰 차이를 보이지 않았다. 하지만 세 방법의 성능을 비교했을 때 상대적으로 다른 방법보다 분할 직사각형 영역 방법이 얼굴 영역의 색 범위를 정확히 검출할 수 있고 노이즈에 의한 오차를 줄일 수 있어 좋은 성능 결과를 얻었음을 예측하였다.

V. Conclusions

본 논문에서는 얼굴 영역에 포함되는 상황적 요인이나 조명처럼 악영향을 미치는 다양한 환경에서도 자동으로 얼굴 영역의 피부색 범위를 검출하는 방법을 제안하였다. 제안된 방법은 검출 도형 방법을 통해 실시간으로 주요 등장인물의 얼굴을 빠르게 탐지하였다. Open CV를 이용한 3가지의 얼굴 검출 방법은 이미지 내에서 얼굴 영역에 해당하는 HSV 값 범위를 추출하고 얼굴 영역에 해당하는 색상 범위를 신뢰구간을 통해 검출하였다. 더불어 제안한 방법은 사전에 균일하게 처리된 배경에서 얼굴 영역을 검출할 뿐만 아니라 불균일한 배경에서도 확률적 기법을 통해 얼굴 색상 범위를 검출할 수 있었다. 추가로 제안한 방법들은 비교 데이터를 사용하여 각 해당 방법들의 정확도를 판별하였으며 그 결과 분할 직사각형 영역 방법이 87%의 정확성으로 다른 방법들에 비해 얼굴 HSV 값을 추출하는데 우수한 성능을 보였다. 하지만 제안한 방법은 얼굴 영역을 검출할 때 배경 및 조명에 따라 검출 영역 경계의 오차가 발생하였다. 따라서 더 정확한 결과를 얻기 위해 얼굴 영역 외에 배경색 정보와 얼굴 영역에 해당하는 특징점을 통해 얼굴 영역을 검출하고, 추가적인 색 공간을 같이 활용한다면 더 정확한 결과를 얻을 수 있을 것이다.

ACKNOWLEDGEMENT

This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (NRF-2020R1F1A1076156)

References

  1. Kang, S., Park, S. B., Kim, Y. H., & You, E. S. (2019). Quantification of The Conflict in Film Narrative: Focusing on Comparison of Characters' Face Area. Journal of Broadcast Engineering, 24(1), 153-163. https://doi.org/10.5909/JBE.2019.24.1.153
  2. Kwon, H. B., Kwon, D. J., Chang, U. D., Yun, Y. B., & Ahn, J. H. (2004). A Facial Region Detection using the Skin Color and Edge Information at YCbCr. Journal of Korea Multimedia Society, 7(1), 27-34.
  3. J. Redmon. Darknet: Open source neural networks in c. http://pjreddie.com/darknet/, 2013-2016
  4. Redmon, J., Divvala, S., Girshick, R., & Farhadi, A. (2016). You only look once: Unified, real-time object detection. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 779-788).
  5. Trieu, T. H. (2018). Darkflow. GitHub Repository. Available online: https://github.com/thtrieu/darkflow (accessed on 14 February 2019).
  6. Park, B.-J., Kim, W.-T., & Kim, H.-S. (2020). A study on face area detection using face features. Journal of Korea Institute of Information, Electronics, and Communication Technology 13(3), 206-211. https://doi.org/10.17661/JKIIECT.2020.13.3.206
  7. Chandrappa, D. N., Ravishankar, M., & RameshBabu, D. R. (2011, April). Face detection in color images using skin color model algorithm based on skin color information. In 2011 3rd International Conference on Electronics Computer Technology (Vol. 1, pp. 254-258). IEEE.
  8. Do, J. H., Kim, K. H., & Kim, J. Y. (2010). Histogram Analysis in Separated Region for Face Contour Extraction under Various Environmental Condition. Journal of the Institute of Electronics Engineers of Korea SP, 47(1), 1-8.
  9. Chae, S., &Jun, K. (2015). HSV color model based hand contour detector robust to noise. Journal of Korea Multimedia Society, 18(10), 1149-1156. https://doi.org/10.9717/kmms.2015.18.10.1149
  10. Joseph Redmon and Ali Farhadi. Yolov3: An incremental improvement. arXiv preprint arXiv:1804.02767, 2018
  11. Zhou, D., Fang, J., Song, X., Guan, C., Yin, J., Dai, Y., & Yang, R. (2019, September). Iou loss for 2d/3d object detection. In 2019 International Conference on 3D Vision (3DV) (pp. 85-94). IEEE.
  12. Kingma, D. P., & Ba, J. (2014). Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980.
  13. Jamil, N., Sembok, T. M. T., & Bakar, Z. A. (2008, August). Noise removal and enhancement of binary images using morphological operations. In 2008 International Symposium on Information Technology (Vol. 4, pp. 1-6). IEEE.