1. 서 론
영상 모핑은 한 영상에서 다른 영상으로 점진적으로 변형 또는 전환[1]하는 영상 처리 기술이다. 변형은 색상 보간과 워핑된 영상을 사용하는데, 영상 워핑은 영상에 2D 기하학적 변환을 적용하여 피쳐 간의 기하학적 정렬을 유지하는 반면 색상 보간은 색상을 혼합한다. 모핑은 다른 물체, 동물 또는 인간 등 서로 다른 영상을 이용하는데, 영화나 TV 드라마에서 많이 사용하는 기술이다. 인간과 동물의 영상 나 모 양 사이를 모핑하는 것을 의인화(Anthropomor- phism)라고 한다.영화나 TV드라마 같은 영상에서의 인화란 동물이나 인간이 아닌 어떤 대상에서 인간의 신체적 특성이나 감정 또는 의도가 느껴지도록 만드는 기술을 말한다. 모핑 기술은 영상 전환을 통해 새롭게 생성된 영상이 이질감이 느껴지지 않도록 부드럽게 전환하는 것이 주요 목표인데 최근까지도 의인화는 대상 간 유사성 요인을 고려하지 않고 대상 동물을 무작위로 선택하여 최대한 영상이 합쳐지도록 모핑을 적용하였다.
동물 얼굴 분류기는 '유사성' 찾기 문제에 대한 강력한 도구지만 다양한 조명 조건, 관점, 규모 및 모양 등 다양한 조건과 영상 상태를 가지고 있기 때문에 복잡한 프로세스를 가지고 있다. 객체 분류 방법은 매우 정확하게 확립되어 있지만 동물 분류의 경우 복잡한 클래스 내 변동성과 클래스 간 유사성을 갖는 동물 클래스의 다양성으로 인해 영상마다 최고의 방법을 가려내기 쉽지 않다 [2].최근에는 학습을 통해 스스로 최적화하는 뉴런으로 구성된 DCNN기반 분류기가 가장 뛰어나다고 평가[3] 받고 있는데, Alexnet, GoogleNet, VGG19등이 대표적이다. 하지만 해당 네트워크들은 특정 분류 대상에 관계없이 분류 작업 자체에 집중되어 있는 네트워크로, 동물분류에 특화된 연구는 TiborTrnovszky등[4], Guo- binChen등[5]등이 발표한 바 있다. 모핑 알고리즘의 경우 필드 모핑[6]등 몇 가지 모핑 알고리즘이 연구되었는데, 이러한 모핑 알고리즘은 일반적으로 애니메이터를 사용하여 메쉬 노드, 선분, 곡선, 점 등의 해당 위치를 설정하고 원본 영상과 모핑된 영상의 대응(correspondence) 역시 수동으로 위치를 지정한다.
본 논문에서는 모핑 프로세스가 시작되기 전에 입력 영상 간의 유사성을 확인하기 위해 입력 영상 중 가장 유사한 동물 얼굴을 찾는 병렬 DCNN(deep convolutionalneuralnetwork)기반 동물 분류기를 사용하는 밀집 시스템을 제안한다. 또한 수동으로 모핑 과정을 진행하는 기존 방법과 달리 동물과 대상의 텍스처 특징을 사용하여 자동으로 제어점을 선택하고 모핑 영상을 생성하는 기술을 제안한다. 이를 위해서는 모핑 과정 전에 입력 값으로 받을 동물 사진이 필요한데, 이 동물들의 분류를 위해서 지수함수형 선형 유닛(ExponentialLinearUnit, ELU)과 배치 정규화 함수로 구축된 병렬 DCNN을 분류기로 사용한다. 제안 방법의 전체 프로세스에 사용할 영상 데이터로 동물 10종의 얼굴 10, 000여장을 수집, 수정하였다. 본 논문은 2장에서 동물 분류, 영상 워핑 및 모핑과 관련된 기존 연구들을 소개하고 3장에서 동물 분류기에서 분류해낸 동물 영상들이 모핑 프로세스에서 어떻게 사용되는지를 포함한 제안 방법의 전체 프로세스를 설명한다. 특히 4장에서는 각 단계별로 진행한 실험 결과를 통해서 3장에서 설명한 전체 프로세스를 자세하게 설명하는 한편, 제안 방법의 성능도 증명한다. 마지막으로 5장에서는 실험 결과와 함께 제안 방법이 가지는 의의를 밝히는 것으로 끝을 맺는다.
2. 관련 연구
2.1 DCNN 기반 동물 얼굴 분류 시스템
영상 분류 시스템은 입력 영상의 클래스를 식별하는데, 영상을 입력으로 사용하고 영상에 포함된 것을 출력으로 반환한다[4].여기서 출력은 입력 동물 영상의 종류를 보여주는 클래스 레이블이다. DCNN기반 동물 분류 시스템도 마찬가지로, 아래에서 관련 연구를 간략하게 소개한다[4, 5].
2.1.1 Tibor Trnovszky의 DCNN 방법
Tibor Trnovszky 등[4]은 동물 얼굴 분류 전용으로 완전히 연결된 DCNN을 제안하였다. 해당 방법은 곰, 돼지, 사슴, 여우, 늑대를 분류하는 네트워크로, 입력으로 32×32 크기의 1024 픽셀 영상을 사용했다. 해당 방법은 총 8개의 블록으로 이루어져 있으며, 첫 번째 블록은 입력 레이어이고 나머지 블록은 5가지 동물 클래스에 대한 Softmax레이어가 있는 출력 레이어이다. 두 번째와 네 번째 블록은 2D Convolutio-nal 레이어와 ReLU(Rectified Linear Unit)레이어로, 세 번째와 다섯 번째 블록은 Max Pooling 레이어와 Dropout레이어로 구성되어 있다. 여섯 번째 및 일곱 번째 블록은 각각 완전 연결 계층, ReLU레이어및 Dropout레이어이다.Fig.1은 해당 방법의 전체구조를 나타낸다.
Fig. 1. The DCNN of Tibor Trnovszky [4].
이 네트워크의 주목할만한 특징은 ReLU를 활성화 함수로 사용하고 Dropout레이어를 사용하여 과적합을 줄였다는 것이다. 하지만, ReLU는 0이 아닌 값을 특징값으로 사용할 수 없고 Dropout 레이어를 사용하기 때문에 일부 유용한 특징값 역시 활용하지 못 한다는 단점이 있다.
2.1.2 Guobin Chen의 DCNN 방법
GoubinChen등[5]은 매우 까다로운 카메라 트랩 영상 데이터에 대한 야생 동물 분류를 위한 새로운 DCNN기반 종 인식 알고리즘을 제안하였다. 데이터세트는 동작 감지 카메라로 총 20종의 동물을 촬영했으며, 훈련용 영상 14, 346개와 테스트용 영상 9, 530개로 되어있다.3개의 컨볼루션 레이어와 3개의 최대풀링 레이어로 DCNN을 설계했으며, 모든 컨볼루션 레이어는 9×9 크기의 커널을, 풀링 레이어는 2×2 크기의 커널을 가지고 있다.Fig.2는 해당 방법의 구조를 나타낸다.
Fig. 2. The DCNN of Goubin Chen [5].
해당방법은 활성화 함수와 dropout레이어를 사용하지 않고 컨볼루션 레이어에서 추출한 모든 특징값을 분석하기 때문에 필요 없는 특징값을 모두 사용해야 하고 전체 시스템이 무겁다는 단점이 있다.
2.2 영상 모핑
모든 모핑 알고리즘의 목표는 소스 영상을 대상 영상으로 워핑하는 것으로, 모핑 과정에서 원본 영상의 워프(warp)된 버전은 점진적으로 변경되어 페이드 아웃되고 대상 영상의 워프(warp)된 버전은 원본 영상을 향해 왜곡된 형태로 천천히 변경되어 페이드 -인 된다[7].최종적으로, 이 모든 과정에서 만들어진 시작 영상과 마지막 영상은 각각 소스 영상과 목표 영상을 닮게 된다. 그리고 해당 과정의 중간 영상은 소스 영상의 페이드 아웃 버전과 목표 영상 페이드인이 각각 50%로 조작된 영상인 것을 확인할 수 있는데, 마이클 잭슨의 인기 뮤직 비디오 "Blackand White"에서 남성과 여성의 얼굴이 연속적으로 전환되는 장면을 보면 쉽게 이해할 수 있다[8]. 마이클잭슨의 뮤직 비디오 외에도 엔터테인먼트 산업에는 어린이에서 성인으로 전환되거나 인간에서 동물로 전환되는 등의 모핑 알고리즘의 과정과 결과를 볼 수 있는 많은 영상이 있다. 모핑은 픽셀의 위치와 입력 영상의 색상 보간을 이용하는 등의 방법으로 실행 가능하지만 모핑 방법의 평가나 모핑된 영상의 품질 및 현실성을 평가하기 위한 구체적인 기준이 정해져 있지 않고 현재로서는 보기에 좋으면 전체 프로세스가 잘 실행된 것으로 판단할 수 있다.모핑 프로세스는 Fig.3과 Fig.4에서 볼 수 있으며, 아래에서 모핑 프로세스의 각 단계를 간략하게 설명한다.
Fig. 3. Morphing consists of two warps followed by a blend [8].
Fig. 4. Example of an Image Morph [9].
2.2.1 제어점 선택
모핑 프로세스는 소스 및 대상 영상의 해당 제어점을 수집하기 때문에 모핑 영상은 제어점이 일치할수록 품질이 크게 좌우된다. 제어점은 컴퓨터 생성 애니메이터를 사용하여 수동으로 선택하고 수집하는데 원본 영상과 대상 영상에서 수집된 제어점은 각각 이동점과 고정점으로 분류된다.
이때, 각 점이 일치하려면 소스와 대상 영상 각각의 유사한 영역을 구분지어야 한다. 예를 들어 아래 Fig.5에서처럼 소스와 대상 영상 모두 양쪽 눈의 중심과 얼굴 윤곽, 코, 입, 얼굴 전체의 중심 등을 같은 수의 선택점을 설정해야 한다는 뜻이다[7].
Fig. 5. Manual control point selection using an animator.
2.2.2 영상 워핑
워핑이란 Fig.6과 같이 영상을 고무 시트에 인쇄한 다음 고무 시트에 힘을 가해서 왜곡된 영상을 생성[10]하는 것과 유사한 방법으로, 워프의 목적은 모핑을 적용하기 전 대상이 되는 두 영상의 주요 특징을 정렬하는 것이다. 다시 말해서 워프는 소스의 해당 제어점과 대상 영상 사이의 기하학적 관계를 정의하는 방법이다.기하학적 관점에서 2D변환은 소스 지점 [u, v]를 대상 지점 [x, y]에 매핑하여 2D소스 공간을 2D대상 공간으로 왜곡하는 것이라 할 수 있다.
일반적인 워프 함수는 식 (1)과 같이 표현할 수 있다.
Fig. 6. Example of an image morph.
[x,y] = [X(u,v), Y(u,v)] (1)
위 식을 통한 출력 좌표계는 식 (2)와 같이 표현된다.
[u,v] = [U(x,y), V(x,y)] (2)
여기서 [u,v]는 출력 좌표 [x,y]에 해당하는 입력좌표를 유추하고 X, Y, U, V는 공간 변환을 지정하는 워 핑 함수를 나타낸다. 함수 X, Y는 입력을 출력에 매핑하므로 순방향 워핑 함수라고 하고 U, V는 출력을 입력에 매핑하므로 역방향 워핑 함수라고 한다. 연구자들이 사용하는 워핑 함수는 순방향 워핑, 역방향 워핑, 동종 표기법, 일반 변환 행렬, 아핀 변환, 원근 변환 등이 있다[8].
2.2.3 모핑
워핑 작업이 완료된 직후 두 개의 뒤틀린 영상이 색상 혼합을 통해 함께 혼합되는데 이 혼합을 교차 용해(cross-dissolve) 또는 모핑(Morphing) 이라고 하며 두 영상이 모두 정렬되어 뒤틀릴 때 발생한다. 모든 영상 변형 기술은 유사한 방법을 사용하는데, 소스 및 대상 영상에서 제어점을 찾고 이러한 제어점을 사용하여 두 영상에서 해당하는 모든 점 사이의 공간적 관계를 결정하는 워핑 함수를 계산한다. 워핑함수는 모든 모핑 시퀀스에 대해 제어점의 모든 위치를 설정한다. 일반적으로 모핑 기술은 메쉬 또는 스플라인 기반 모핑과 선분 기반 모핑 두 가지 종류가 있다.
필드 모핑 방법을 처음 제안한 Beier와 Neely[6]는 대상 영상의 특징을 조정하기 위해 라인 세그먼트를 사용했다.필드 모핑은 워핑시 소스 영상으로부터 목적 영상에 대응시킬 화소의 표본을 취하는데, 소스 영상에서 취득한 화소를 대상 영상의 어떤 위치에 대응시킬지는 소스 영상과 대상 영상 간에 짝을 이루는 하나의 제어선 쌍들의 가중치 합으로 결정하는 방법이다.해당 방법에서 사용할 수 있는 선의 수는 고정되어 있지 않고, 많은 제어선 세그먼트를 사용할수록 모양 전환을 더 많이 제어할 수 있게 된다.Fig. 7(a)은 머리, 귀, 눈, 눈썹, 입술, 코 등 얼굴의 특징이 드러나는 각 부위에 선분을 127개 설정한 결과이다 [11].
Fig. 7. The method used in panel (a) of specifying line segments is more intuitive and provides more control over the morphing process than the method used in panel (b) by aligning a grid of points to key feature locations [11].
3. 제안한 방법
제안 방법은 딥 러닝을 사용하여 동물의 얼굴과 인간의 얼굴 사이의 유사성을 찾아내고 그들 사이에 자동 모핑 영상을 생성하는 시스템을 구축하는 것이다. 기존의 모핑 방법은 때때로 유사도를 고려하지 않고 무작위로 선택된 영상 간에 수행되거나, 모핑의 결과를 개선하기 위해 사람이 직접 수정해야 하는 번거로움이 있다. 하지만 제안 방법은 모핑 전 내장된 병렬 DCNN아키텍처를 사용하여 입력된 영상 속사람과 가장 유사한 동물을 찾기 위해 사람의 얼굴을 분석한다.제어점 선택 단계에서는 분류 단계에서 사람의 얼굴 크기를 조정했기 때문에 사람 얼굴과 동물 얼굴을 같은 크기로 재조정하고 텍스처 특징 알고리즘이 사람 얼굴의 제어점을 자동으로 설정할 수 있도록 한다. 워핑과 모핑을 적용할 동물 클래스는 입력된 사람과의 유사성을 고려하여 시스템에서 정해주지만, 동물 얼굴에 설정할 고정점은 사람의 얼굴에 설정된 제어점을 가져와서 사용자가 직접 맵핑하고 저장한다[7]. 제어점을 설정한 후에는 사람 얼굴과 동물 얼굴에 Delaunay삼각 측량 기반 맵핑 방법을 적용해서 사람 얼굴과 동물 얼굴에 설정된 모든 제어점을 연결하고 영역을 분할하여 워핑을 수행, 최종적으로 모핑을 수행한다. 원하는 모핑 영상을 생성하기 위해 전체 프로세스는 총 20프레임을 사용한다.Fig.8은 제안 방법의 전체 단계를 보여준다. 제안 방법은 병렬 DCNN기반 동물 얼굴 분류, 제어점 선택 시스템과 마지막으로 모핑까지 총 3단계로 수행된다. 전체프로세스를 아래에서 단계별로 자세하게 설명한다.
Fig. 8. Our proposed method in a block diagram.
3.1 제안한 제어점 선택 시스템
기존의 제어점 선택 시스템에서는 사용자가 컴퓨터에서 애니메이터를 사용하여 수동으로 제어점을 선택해야 했다. 제안 방법은 이 수동 선택 과정을 없애고 사용자의 개입 없이 제어점을 가져오는 자동시스템으로 대체한다. 제안된 텍스처 특징 기반 제어점 선택 알고리즘은 제어점을 찾기 위해 Viola-Jones 알고리즘[12]을 사용한다.소스 영상에서 얼굴 특징을 찾고 제어점을 수집하는데 소스 영상과 대상 영상에서 수집되는 제어점을 각각 이동점과 고정 점이라고 한다. 제안 방법은 인간의 얼굴 점은 이동점으로, 동물의 얼굴 점은 고정점으로 지정한다.
이동점을 설정하기 위해 얼굴, 눈, 코, 입과 같은 얼굴 특징을 찾고 Viola-Jones알고리즘을 이용해서 얼굴 특징 주위에 정사각형 모양을 그리고 해당 특징 주위의 사각형 모양을 원으로 변경한다. 그런 다음 해당 원에서 이동점을 수집한다. 제안 방법은 얼굴을 찾은 후 30도 간격으로 원을 그리며 점을 수집하고 오른쪽 눈, 왼쪽 눈, 코, 입에 대해 연속적으로 90도 간격으로 원을 그리며 점을 수집한다[7].제안 방법은 위 과정을 거쳐서 얼굴 특징의 연속성을 유지하는 32개의 이동점을 수집한다. 이 과정은 새로운 사람의 얼굴을 입력 영상나 소스 영상으로 가져올 때마다 반복된다.이 전체 프로세스를 Fig.9는 사람 얼굴에서 이동점을 찾는 과정을 보여준다.
Fig. 9. Control Points Selection from the source image.
반면 대상 영상인 동물 영상은 소스 영상인 사람의 제어점을 설정하는 방법과는 달리 수동으로 선택하고 수정하는 방법을 사용했다.10개의 동물 클래스에서 10개의 대상 영상을 미리 선택하고 고정 점을 수동으로 가져왔으며, 이동점의 순서를 동일하게 하여 고정점의 대응성을 유지하도록 했다. 즉, 사람의 얼굴 제어점과 같이 얼굴, 눈, 코, 입의 순서로 동물의 얼굴 제어점을 선택하고 번호를 사람의 얼굴 제어점과 같은 순서로 번호를 매겼다. 결과적으로 각 동물의 얼굴 윤곽에서 12개의 점과 중심점을 포함한 눈, 코, 입 등의 얼굴 특징 각각에서 5개의 제어점을 합한 총 32개의 고정점을 설정, 저장하였다.Fig.10은 32 개의 고정점이 설정된 동물들의 얼굴을 보여준다.
Fig. 10. Control Points Selection from destination images.
3.2 제안한 모핑 과정
제안한 모핑 프로세스는 Delaunay삼각 측량 기반워핑 시스템을 사용한다. 이 시스템은 주어진 데이터의 고정점을 모서리로 사용하여 지정된 공간을 적절한 삼각형 세트로 먼저 슬라이스한다[7].Delaunay 삼각 측량 방법은 각 점들을 삼각형으로 연결할 때, 각각의 삼각형들이 최대한 정삼각형에 가깝게 만든다. 영역을 정삼각형에 가깝도록 설정하는 이유는 만약에 둔각을 가진 홀쭉하고 긴 삼각형으로 워핑과모핑 영역을 설정할 경우, 모핑 성능에 영향을 미치게 되기 때문이다. 제안 방법은 소스 영상과 대상 영상에 제어점을 표시하여 모핑 프로세스를 시작한다. 이때, 소스 영상과 대상 영상의 가장자리를 따라 16 개의 주변 점을 설정하여 해당 점들을 모서리 점으로 하는 삼각형을 설정한다[13].이는 모서리를 중심으로 늘어나는 것을 방지하여 최대한 안정적으로 영상을 변형시키고 전체 시스템을 안정적으로 만들기 위해서다. Fig.11은 모든 제어점을 연결하는 Delaunay 삼각 측량 방법을 사람과 동물의 얼굴에 각각 적용한 결과를 보여준다.
Fig. 11. Delaunay triangulation applied to source and destination image.
Delaunay삼각분할을 적용한 후 시스템은 중간 점을 계산한다. 중간점의 공식은 식 (3)과 같다.여기서 α는 모핑 프로세스에 사용되는 프레임 수이다.
\(\begin{aligned} \text { intermPoints }=&(1-\alpha)^{*} \text { movingPoints } \\ &+\alpha^{*} \text { fixedPoints } \end{aligned}\) (3)
모든 중간 지점을 계산한 후 워핑 과정에서 모든 단일 프레임에 대해 변환 행렬이 계산된다.변환 행렬은 2차 행렬이며 소스 영상과 대상 영상 픽셀을 중간 지점에서 계산된 무게 중심 행렬로 나누어 계산한다[17]. 변환 행렬은 중간 점, 삼각형 및 해당 점의 인덱스에서 학습된 삼각형 인덱스를 사용하여 변환된 좌표를 출력한다. 각 삼각형의 변환된 좌표를 인덱스의 하위 집합에만 변환 행렬을 적용하여 계산하여 워핑 과정을 마무리하고 시스템은 워핑 프레임을 모두 학습한 후 간단한 교차 용해를 적용하여 원하는 변형된 영상을 찾는다. 변환된 좌표에서 이러한 교차 용해 픽셀 값을 계산기 위해서 식 (4)를 사용한다.
\(\text { Morphing }=(1-\alpha)^{*} i m 1 \text { Warp }+\alpha^{*} \operatorname{mim} 2 \text { Warp }\) (4)
식 4에서 im1과 in2는 각각 소스 영상과 대상 영상을 나타낸다. α값의 범위는 0에서 1이며, 만약 α = 0이면 프레임이 원본 영상과, α =1이면 프레임이 대상 영상과 유사하게 보이게 된다. 제안 방법에서 생성된 모든 프레임은 unit8로, 부드러운 영상 변환 결과를 보여주었다.
4. 실험 결과 및 고찰
제안 방법은 사람의 얼굴을 227×227로 재조정하고 병렬 DCNN으로 입력 영상과 일치하는 동물 클래스를 찾는다. 일치하는 동물을 찾으면 시스템은 저장된 제어점과 함께 미리 정의된 동물 영상을 수집한다. 이 동물과 모핑할 사람의 얼굴은 텍스처 특징 알고리즘으로 제어점을 수집한다. 제어점 수집 후 시스템은 모핑 작업으로 이어지는 워핑 기능을 진행한다. 4장 전체에서 병렬 DCNN과 제안된 모핑 프로세스에 대한 실험 결과를 제시하고 분석하여 제안 방법의 성능을 설명하고자 한다. 실험은 Intel Core i7CPU 3.70GHz, 16GB RAM 및 단일 NVIDIA GeForce RTX 2070 16GB GPU로 구성된 시스템에서 수행하였다.
4.1 제안한 병렬 DCNN의 실험결과
동물 얼굴 분류 실험 전, Google검색 및 기타 여러 웹사이트와 같은 다양한 비상업적 싸이트에서 영상을 수집하여 실험에 사용할 데이터 세트를 구성하였다. 데이터 세트는 곰, 고양이, 사슴, 개, 코끼리, 말, 사자, 토끼, 너구리 및 쥐와 같은 10가지 동물 영상[7] 이며, 각 동물 클래스에는 1000개의 영상이 포함되어있다. 본 실험에서는 해당 영상을 그대로 실험에 사용하지 않고 몇 가지의 수정을 가하였다. 다양한 배경 또는 전신이 모두 찍힌 영상의 경우, 제안 방법은 얼굴에 대해서만 적용하기 때문에 얼굴만 남기고 다른 부분은 자르는 수정 작업을 진행하였고 제안 네트워크에 입력하기 위해 차원이 다른 모든 영상의 크기를 227×227×3으로 조정하였다.Fig.12는 생성된 동물 데이터 세트 중 40개의 예제를 보여준다. 제안 방법의 성능을 객관적으로 설명하기 위해 기존 방법 중 TiborTrnovszky등[4]및 GuobinChen 등[5]이 제안한 방법과 같이 실험하고 결과를 비교하였다. 또한 제안 방법에 도달하기 전 고려되었던 여러 가지 방법들도 같이 실험하였다. 해당 실험은 본 논문에서 제안하는 방법을 최종적으로 결정하는 데 도움이 되었다. 본 연구에서 진행한 모든 실험에 대하여 아래에서 자세하게 설명하고자 한다.
Fig. 12. The example of the created animal database.
실험은 각 방법의 정확한 성능 비교를 위해 모든 네트워크에 대해 동일한 조건으로 진행하였다. 내장데이터 세트를 훈련과 테스트를 위해 각각 80%로 20%의 비율로 구분하여 훈련하고 테스트 하였다. 훈련 데이터 세트는 총 8000개의 영상으로 구성되어 있고 검증/테스트 데이터 세트는 총 2000개로 구성되어 있다.훈련 데이터 세트는 크기 조정, 회전, 반사, 전단 및 변환 등 임의의 조합으로 변환하여 영상을 증강하였다.영상 증강은 훈련 과정에서 다양성을 가져오고 더 나은 학습 환경을 제공하기 때문에 네트워크의 성능을 향상 시키기 위해 사용되는 방법이다. 모든 시뮬레이션에 대해 SGDM(StochasticGradient DescentwithMomentum)을 사용하고 초기 학습률을 0.0001로, 최대 에포크를 300, 미니 배치 크기를 32로 설정하였으며, 셔플링은 훈련 중 데이터 세트에도 사용하였다.제안된 방법을 포함한 모든 방법에 대한 실험 결과는 Table 1로 제시한다.
Table 1. Number of recognized animals by all the proposed and related DCNN methods.
제안 방법은 기존 방법과 구조나 레이어의 구성을 다르게 한 방법보다 더 많은 동물을 인식하였지만, 각 방법 별로 동물의 인식률에 차이가 있었다는 것을 알 수 있다.GuobinChen등[5]이 제안한 방법은 너구리를 200개 중 192개로 가장 많이 인식하였고 가장 적게 인식한 클래스는 200개 영상 중 76개를 인식한 쥐(rat)이다.그리고 TiborTrnovszky등[4]이 제안한 방법은 너구리를 200개 중 175개로 가장 많이 인식하였으나, 가장 적게 인식한 클래스는 200개 중 112개의 영상을 인식한 개였다.“선형 DCNN+Batch Normalization+ELU”에서 가장 많이 인식한 클래스는 Lion으로 200개 영상 중 192개, 가장 덜 인식한 클래스는 고양이로 200개 중 170개였다. 마지막으로본 논문에서 제안한 병렬 DCNN모델은 가장 많이 인식한 클래스는 사자로, 200개 중 194개 인식하였고 가장 적게 인식한 클래스는 코끼리로 200개 중 173개였다. Table2는 제안한 방법과 관련된 모든 방법의 전체적인 정확도를 보여준다. GuobinChen등[5]방법은 68.8%, TiborTrnovszky등[4]방법은 74.9%를 달성한 것을 알 수 있고 “LinearDCNN+BatchNor- malization+ELU”는 90.3%, 제안한 방법은 92.0%를 달성하여 가장 성능이 뛰어난 것을 확인할 수 있었다.
Table 2. Simulation results of all the DCNN networks.
Table1과 Table2는 TiborTrnovszky[4]과 Guo- binChen[5]이 제안한 방법과 본 논문에서 제안한 방법의 동물 분류 결과를 보여준다.TiborTrnovszky [4]은 과적합을 줄이기 위해 ReLU함수를 사용하였는데 0이하의 값은 다음 레이어에 전달하지 않아서 해당하는 특징값들을 학습에 사용하지 못 하였고, GuobinChen[5]의 방법은 반대로 특징값을 최대한 반영하고 네트워크를 경량화 하기 위해서 활성화 함수와 dropout을 사용하지 않았지만, 과대적합이 발생하게 되었을 것이라 분석된다.제안 방법은 ReLU 함수보다 조금 더 유연한 ELU함수를 사용하여 특징값을 최대한 학습에 반영하고, 배치 정규화를 통해 과대 적합에 빠지는 것을 방지하고자 병렬 DCNN을사용하였다.
4.2 제안한 모핑 방법의 실험 결과
모핑 실험에서 Fig. 13은 제안된 병렬 DCNN의입력 영상으로 227×227크기로 조정한 사람의 얼굴을 사용하였다.해당 영상은 제안된 병렬 DCNN을 통해 예제 속 인물과 가장 유사하다고 예측된 개의 이미지를 가져온 결과이며, 시스템에서 이미지를 불러올 때 미리 정의된 제어점을 같이 가져오게 된다.
Fig. 13. Input image or source image and the predicted Destination image.
제안 방법에서는 시스템이 해당 제어점 세트로 모핑할 면을 찾은 다음, 사전 단계로 워핑을 진행한다. 워핑 단계는 해당 제어점에 Delaunay삼각분할을 적용하는 것으로 시작되며, 매핑된 소스 영상과 대상 영상을 사용하여 중간 지점을 계산하고 계산을 통해 산출된 중간 점을 바탕으로 변환 행렬을 계산하면 시스템은 변환된 좌표와 함께 삼각형 인덱스를 계산한다. 이에대한 들로네 삼각분할을 적용은 그림11에 나타내었다.마지막으로 cross-dissolve함수가 호출되고 시스템은 변형 매개변수를 사용하여 모핑 프로세스를 수행하게 된다.앞에서 언급했듯이 시스템은 전체 모핑 프로세스를 완료하는 데 총 20개의 프레임이 필요하다.Fig.14는 제안한 모핑 시스템에 의해 생성된 20개의 모든 영상을 보여준다.여기서 왼쪽 위 영상은 원본 영상과 비슷하고 오른쪽 아래 영상은 대상 영상과 비슷하다.그 사이에서 모든 영상은 변형된 영상으로 이어지는 워핑 기능의 점진적인 적용을 보여준다.
Fig. 14. The morphing process from the Source image to the Destination image.
Fig.15는 입력 영상 0%에서 시작하여 대상 영상 100%로 끝나는 모핑 프로세스 중 중요한 단계만 요약하여 보여준다.
Fig. 15. Steps of the morphing process.
5. 결 론
본 논문에서는 텍스처 특징 기반 자동 제어점 선택 시스템과 병렬 DCNN을 사용한 의인화 모핑 방법을 제안하였다.일반적으로 모핑 알고리즘은 특징, 워프 생성 및 전환 제어와 같은 동일한 구성 요소를 공유한다.모핑의 효율성은 이러한 구성 요소가 처리되는 방식에 따라 결정된다.그러나 제안 방법은 소스 영상과 대상 영상 간의 유사도를 고려하여 유사성을 기반으로 모핑하기 때문에 기존 방법에 비하여 훨씬 높은 퀄리티를 가진 모핑 영상을 생성할 수 있었고 모핑 과정 전 병렬 DCNN을 사용하여 동물 얼굴과 사람 얼굴에서 특징을 추출하여 비교함으로써 특정 입력 인간 얼굴에 일치하는 동물 클래스를 찾아서 자연스러운 모핑 과정을 제공하는 것을 확인하였다. 뿐만 아니라 본 연구를 통해 텍스처 특징 기반 자동 제어점 선택 시스템을 통해 사람의 실수 가능성을 줄이면서 사용도 간편한 모핑 시스템도 구축하였다. 실험을 통해 본 연구에서 제안한 방법이 관련 연구 분야에서 제안된 기존 방법에 비해 뛰어난 적용 가능성과 효율성을 입증하였기에 그 의의가 더 크다고 할 수 있다.특히 동물들의 특징을 기반으로 동물들을 분류하는 실험에서 기존 방법 뿐만 아니라 제안 방법 중에서도 본 논문에서 주장하는 방법이 효과가 가장 뛰어난 것을 확인할 수 있었다.
References
- T. Prince, Y. Fragoso, and O. Gaye, "Applications of Image Morphing Techniques to Analyze Changes in Our Environment," Open Access Library Journal, Vol. 3, No. 9, pp. 1-13, 2016.
- S. Taheri and O. Toygar, "Animal Classification Using Facial Images with Score-Level Fusion," IET Computer Vision, Vol. 12, No. 5, pp, 679-685, 2018. https://doi.org/10.1049/iet-cvi.2017.0079
- K. O' Shea and R. Nash, "An Introduction to Convolutional Neural Networks," arXiv P reprint, arXiv:1511.08458, 2015.
- T. Trnovszky, P. Kamencay, R. Orjesek, M. Benco, and P. Sykora, "Animal Recognition System Based on Convolutional Neural Network," Advances in Electrical and Electronic Engineering, Vol. 15, No. 3, pp. 517-525, 2017.
- T.G. Chen, X. Han, Z. He, R. Kays, and T. Forrester, "Deep Convolutional Neural Network Based Species Recognition for Wild Animal Monitoring," Proceeding of 2014 IEEE International Conference on Image Processing, pp. 858-862, 2014.
- T. Beier and S. Neely, "Feature-Based Image Metamorphosis," Computer. Graphics, Vol. 26, No. 2, pp. 35-42, 1992. https://doi.org/10.1145/142920.134003
- R.H. Khan, Y.-S. Lee, S.-H. Lee, O.-J. Kwon, and K.-R, Kwon, "Anthropomorphic Animal Face Masking Using Deep Convolutional Neural Network Based Animal Face Classification," Journal of Korea Multimedia Society, Vol. 22, No. 5, pp. 558-572, 2019. https://doi.org/10.9717/KMMS.2019.22.5.558
- M. Delport, Morphing in Two Dimensions : Image Morphing, Master's Thesis of Stellenbosch University at science, 2007.
- J. Gomes, L. Darsa, B. Costa, and L. Velho, Warping & Morphing of Graphical Objects; 1st edition, Morgan Kaufmann Publishers, San Francisco, Calif., 1998.
- R. Carrol, A Warping Framework for Wide-Angle Imaging and Perspective Manipulation, Doctor's Thesis of Electrical Engineering and Computer Sciences University of California at Berkeley, 2013.
- M. Steyvers, "Morphing Techniques for Manipulating Face Images," Behavior Research Methods, Instruments, & Computers, Vol. 31, pp. 359-369, 1999. https://doi.org/10.3758/BF03207733
- P. Viola and M. Jones, "Rapid Object Detection Using a Boosted Cascade of Simple Features," Proceeding of International Conference on the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. I-I, 2001.
- R.H. Khan, V. Caleb, S.-H. Lee, K.-W. Kang, O.-J. Kwon, and K.-R. Kwon, "Automatic Control Point Selection System Based Anthropomorphic Animal Face Masking," Proceeding of International Conference on Computing Advancements; Association for Computing Machinery, pp. 1-4, 2020.