지능형 영상 보안 시스템의 얼굴 인식 성능 향상을 위한 얼굴 영역 초해상도 하드웨어 설계 Hardware Design of Super Resolution on Human Faces for Improving Face Recognition Performance of Intelligent Video Surveillance Systems원문보기
최근 카메라를 통해 입력된 영상정보로부터 실시간으로 상황을 인지하고 자율 대응할 수 있는 지능형 영상 보안 시스템의 수요가 증가함에 따라, 고성능의 얼굴 인식 시스템이 요구되고 있다. 기존의 얼굴 인식 시스템의 성능 향상을 위해서는 원거리에서 획득된 저해상도 얼굴 영상 처리를 위한 솔루션이 반드시 필요하다. 따라서 본 논문에서는 실시간 감시가 요구되는 지능형 영상 보안 시스템의 얼굴 인식 성능 향상을 위한 저해상도 얼굴 영상 복원 알고리즘을 하드웨어로 구현하였다. 저해상도 얼굴 영상 복원 방법으로는 학습 기반의 초해상도 알고리즘을 사용한다. 해당 알고리즘은 먼저 고해상도 영상으로 구성된 학습 집합에서 주성분 분석(PCA)을 활용하여 복원에 필요한 사전 정보들을 추출하고, 저해상도 영상과의 관계를 모델링하여 가장 적합한 고해상도 얼굴을 복원해내는 것이다. 저해상도 얼굴 영상 복원 알고리즘을 임베디드 프로세서(S3C2440A)를 사용하여 구현하였을 때, 약 25 초의 긴 연산 시간이 소요되었다. 이는 실시간으로 사람을 판별 및 인식하기 위한 지능형 영상 보안 시스템의 구축에는 어려움이 있다. 이를 해결하기 위하여 얼굴 영역 초해상도의 연산을 하드웨어로 구현하고 Xilinx Virtex-4를 이용하여 검증하였다. 약 9MB의 학습 데이터를 사용하였으며, 100 MHz에서 약 30 fps의 속도로 연산이 가능하다. 이러한 학습 기반의 얼굴 영역 초해상도 알고리즘을 단일 하드웨어 IP로 설계함으로써 임베디드 환경에서의 실시간 처리가 가능할 뿐 만 아니라 기존의 다양한 얼굴 검출 시스템과의 통합이 용이하여 얼굴 인식 솔루션을 제공할 수 있을 것으로 판단된다.
최근 카메라를 통해 입력된 영상정보로부터 실시간으로 상황을 인지하고 자율 대응할 수 있는 지능형 영상 보안 시스템의 수요가 증가함에 따라, 고성능의 얼굴 인식 시스템이 요구되고 있다. 기존의 얼굴 인식 시스템의 성능 향상을 위해서는 원거리에서 획득된 저해상도 얼굴 영상 처리를 위한 솔루션이 반드시 필요하다. 따라서 본 논문에서는 실시간 감시가 요구되는 지능형 영상 보안 시스템의 얼굴 인식 성능 향상을 위한 저해상도 얼굴 영상 복원 알고리즘을 하드웨어로 구현하였다. 저해상도 얼굴 영상 복원 방법으로는 학습 기반의 초해상도 알고리즘을 사용한다. 해당 알고리즘은 먼저 고해상도 영상으로 구성된 학습 집합에서 주성분 분석(PCA)을 활용하여 복원에 필요한 사전 정보들을 추출하고, 저해상도 영상과의 관계를 모델링하여 가장 적합한 고해상도 얼굴을 복원해내는 것이다. 저해상도 얼굴 영상 복원 알고리즘을 임베디드 프로세서(S3C2440A)를 사용하여 구현하였을 때, 약 25 초의 긴 연산 시간이 소요되었다. 이는 실시간으로 사람을 판별 및 인식하기 위한 지능형 영상 보안 시스템의 구축에는 어려움이 있다. 이를 해결하기 위하여 얼굴 영역 초해상도의 연산을 하드웨어로 구현하고 Xilinx Virtex-4를 이용하여 검증하였다. 약 9MB의 학습 데이터를 사용하였으며, 100 MHz에서 약 30 fps의 속도로 연산이 가능하다. 이러한 학습 기반의 얼굴 영역 초해상도 알고리즘을 단일 하드웨어 IP로 설계함으로써 임베디드 환경에서의 실시간 처리가 가능할 뿐 만 아니라 기존의 다양한 얼굴 검출 시스템과의 통합이 용이하여 얼굴 인식 솔루션을 제공할 수 있을 것으로 판단된다.
Recently, the rising demand for intelligent video surveillance system leads to high-performance face recognition systems. The solution for low-resolution images acquired by a long-distance camera is required to overcome the distance limits of the existing face recognition systems. For that reason, t...
Recently, the rising demand for intelligent video surveillance system leads to high-performance face recognition systems. The solution for low-resolution images acquired by a long-distance camera is required to overcome the distance limits of the existing face recognition systems. For that reason, this paper proposes a hardware design of an image resolution enhancement algorithm for real-time intelligent video surveillance systems. The algorithm is synthesizing a high-resolution face image from an input low-resolution image, with the help of a large collection of other high-resolution face images, called training set. When we checked the performance of the algorithm at 32bit RISC micro-processor, the entire operation took about 25 sec, which is inappropriate for real-time target applications. Based on the result, we implemented the hardware module and verified it using Xilinx Virtex-4 and ARM9-based embedded processor(S3C2440A). The designed hardware can complete the whole operation within 33 msec, so it can deal with 30 frames per second. We expect that the proposed hardware could be one of the solutions not only for real-time processing at the embedded environment, but also for an easy integration with existing face recognition system.
Recently, the rising demand for intelligent video surveillance system leads to high-performance face recognition systems. The solution for low-resolution images acquired by a long-distance camera is required to overcome the distance limits of the existing face recognition systems. For that reason, this paper proposes a hardware design of an image resolution enhancement algorithm for real-time intelligent video surveillance systems. The algorithm is synthesizing a high-resolution face image from an input low-resolution image, with the help of a large collection of other high-resolution face images, called training set. When we checked the performance of the algorithm at 32bit RISC micro-processor, the entire operation took about 25 sec, which is inappropriate for real-time target applications. Based on the result, we implemented the hardware module and verified it using Xilinx Virtex-4 and ARM9-based embedded processor(S3C2440A). The designed hardware can complete the whole operation within 33 msec, so it can deal with 30 frames per second. We expect that the proposed hardware could be one of the solutions not only for real-time processing at the embedded environment, but also for an easy integration with existing face recognition system.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
저해상도 영상처리 문제의 해결을 위해, 다양한 초해상도(SR: Super Resolution)알고리즘의 연구가 진행되고 있다. SR 알고리즘은 저해상도 영상에 포함된 노이즈나 흐릿함의 제거뿐만 아니라 영상의 크기가 확대됨에 따라 기존에 존재하지 않던 영상 정보를 효과적으로 추정하여 보다 선명한 고해상도 영상을 복원하는 것을 목표로 한다.[4]
즉, 기존의 얼굴 검출 및 인식 기술과의 통합된 시스템 구성을 고려하여, 얼굴 영역 초해상도 알고리즘이 실시간으로 동작 할 수 있기 위해서는 임베디드 환경에서의 저해상도 얼굴 영상 복원 기술의 하드웨어 구현이 필요하다. 따라서 본 논문에서는 그림 6과 같은 하드웨어 설계 구조를 제안한다.
본 논문에서는 이를 해결하기 위해, 얼굴 영역에 대한 고해상도 이미지를 복원하는 방법을 분석하고, 소프트웨어를 통해 검증하였다. 그 다음, 기존의 얼굴 인식 기술과 통합된 보안 감시 시스템 구축을 고려하여 임베디드 환경에서의 성능을 측정하였다.
본 논문에서는 학습 기반 얼굴 영역 초해상도 복원 알고리즘 검증에 필요한 얼굴 데이터베이스를 직접 구축하였다. 공개된 얼굴 데이터베이스[9~10]들은 주로 외국인으로 구성된 것이 많아, 학습 집합의 내용에 큰 영향을 받는 알고리즘의 특성상 동양인 얼굴의 데이터베이스 구축이 필요하기 때문이다.
본 논문에서는 한 장의 저해상도 얼굴 영상으로부터 고해상도 얼굴 영상을 복원하기 위한 알고리즘을 구현하여 분석하고, 그 결과를 바탕으로 임베디드 환경에 적합한 형태의 하드웨어 구조를 설계하고 검증하였다. 임베디드 환경을 위한 저해상도 얼굴 영상 복원 기술의 구현은 기존의 얼굴 인식 시스템의 성능 향상에 아주 중요한 역할을 할 수 있다.
가설 설정
입력 저해상도 영상은 얼굴 검출 알고리즘[8]을 통해 그림 4의 (a)와 같이 얻어졌다고 가정한다. 검증을 위한 저해상도 영상 (a)는 고해상도 영상을 다운샘플링(down-sampling)하고 블러링(blurring)하여 실제 카메라를 통해 얻은 영상과 유사하도록 생성한다.
제안 방법
그림 7은 FACE SR CORE의 세부 구조도이다. CORE의 실제 연산 동작에 앞서 S3C2440A 프로세서를 이용하여 최초의 한 번 미리 연산된 학습 데이터를 외부 SDRAM에 저장하고, 복원에 필요한 데이터인 저해상도 평균 얼굴 영상과 고해상도 평균 얼굴 영상의 데이터를 각각 L_MFACE와 H_MFACE 메모리에 입력한다. 저해상도 얼굴 영상이 IN_IMG메모리에 저장이된 후, CORE를 동작 시킨다.
고해상도 얼굴 영상 복원을 위한 학습 방법으로 주성분 분석(PCA: Principle Component Analysis)을 이용한다. PCA를 이용하여 얼굴 집합으로부터 모든 얼굴 영상의 평균적인 특징을 가장 잘 나타내는 기저 벡터, 즉 고유 얼굴(eigenfaces)을 찾아낸다. 여기서, 얼굴 영상의 복원은 추출된 기저 벡터들이 구성하는 얼굴 공간(eigenspace)안의 모든 얼굴 영상은 이 고유 얼굴들의 선형 결합으로 표현될 수 있다는 점을 이용한다.
본 논문에서는 이를 해결하기 위해, 얼굴 영역에 대한 고해상도 이미지를 복원하는 방법을 분석하고, 소프트웨어를 통해 검증하였다. 그 다음, 기존의 얼굴 인식 기술과 통합된 보안 감시 시스템 구축을 고려하여 임베디드 환경에서의 성능을 측정하였다. 이를 바탕으로 실시간 동작에 적합한 형태의 하드웨어 구조를 설계하고 ARM9기반 임베디드 프로세서 S3C2440 와 Xilinx Virtex-4에서 검증하였다.
Ⅲ장에서는 임베디드 환경에서의 실시간 동작을 위한 얼굴 영역 초해상도 모듈의 하드웨어 구조 및 설계에 대해 설명한다. 그 다음, 설계한 모듈을 FPGA에서 검증한 결과 및 성능에 대한 분석을 제시한다. 마지막으로 Ⅳ장에서는 결론을 맺는다.
먼저 각각의 사람에 대해 그림 3과 같이 감정 변화에 따른 표정, 빛의 방향, 안경 등의 액세서리 착용에 따라 달라 질 수 있는 얼굴 영상을 실내에서 디지털 카메라로 촬영했다. 그 다음, 얼굴의 특징 영역인 눈, 코, 입을 기준 점으로 정하여 정렬하였다. 만약, 정렬과정이 생략될 경우 일그러지거나 사람의 얼굴이라고 판단할 수 없는 잘못된 결과를 얻게 된다.
학습 기반의 저해상도 영상 복원 알고리즘은 미리 연산된 많은 양의 학습 데이터를 저장하고 있어야 하므로 외부 SDRAM을 사용한다. 때문에, 제안된 하드웨어 구조는 외부 SDRAM을 제어하기 위한 SDRAM 컨트롤러 부분을 포함하며, 저장된 학습 데이터를 이용하여 저해상도 얼굴 입력 영상으로부터 고해상도 얼굴 영상 복원 연산을 수행하는 FACE SR CORE 부분, 그리고 S3C2440A 프로세서와의 연결을 위한 INTERFACE 부분으로 구성된다.
32bit SDRAM을 사용하여 한 클록에 연속된 2개의 데이터를 동시에 처리 할 수 있도록 연산 로직을 구성하였다. 또한, SDRAM의 Full-page READ MODE를 사용하여 메모리의 한 페이지 단위로 데이터를 읽어 옴으로써 메모리 접근 시간을 최소화하였다.
또한, 입력 얼굴 영상의 사이즈는 실제 얼굴 검출에서 사용되는 필터 사이즈 중 성능을 보장할 수 있는 가장 작은 필터 사이즈를 기준으로 하여 35×35로 정하였다.
공개된 얼굴 데이터베이스[9~10]들은 주로 외국인으로 구성된 것이 많아, 학습 집합의 내용에 큰 영향을 받는 알고리즘의 특성상 동양인 얼굴의 데이터베이스 구축이 필요하기 때문이다. 먼저 각각의 사람에 대해 그림 3과 같이 감정 변화에 따른 표정, 빛의 방향, 안경 등의 액세서리 착용에 따라 달라 질 수 있는 얼굴 영상을 실내에서 디지털 카메라로 촬영했다. 그 다음, 얼굴의 특징 영역인 눈, 코, 입을 기준 점으로 정하여 정렬하였다.
GLOBAL FACE SR 모듈은 식(4)와 (5)에 해당하는 연산을 수행한다. 외부 SDRAM에 저장된 학습 데이터와 DIFF_FACE 메모리에 저장된 차영상의 내적을 수행하고, 고해상도 평균 얼굴 영상을 합하여 최종 결과를 OUT_IMG메모리에 저장하는 동작을 수행한다.
그 다음, 기존의 얼굴 인식 기술과 통합된 보안 감시 시스템 구축을 고려하여 임베디드 환경에서의 성능을 측정하였다. 이를 바탕으로 실시간 동작에 적합한 형태의 하드웨어 구조를 설계하고 ARM9기반 임베디드 프로세서 S3C2440 와 Xilinx Virtex-4에서 검증하였다. 그 결과, 제안된 하드웨어 구조는 100 MHz의 동작 속도에서 초당 30 프레임의 처리가 가능하다여 실시간 동작에 무리가 없다.
대상 데이터
13um CMOS 표준 라이브러리를 사용하여 MPW 공정으로 칩을 제작하여 테스트 중에 있다. Synopsys사의 Design Compiler를 이용하여 100 MHz 의 동작 속도를 타겟으로 합성한 결과 141,389 gate count를 가지며, 160Kbits의 SRAM 메모리를 사용하였다. 표 2는 FPGA와 MPW의 제작 결과를 정리한 표이며, 그림 11은 제작된 칩의 Layout이다.
고해상도 얼굴 영상의 사이즈는 육안으로도 충분히 인식이 가능한 70×70으로 정하고, 총 520개의 영상을 학습 집합으로 구성하였다.
고해상도 얼굴 영상의 사이즈는 육안으로도 충분히 인식이 가능한 70×70으로 정하고, 총 520개의 영상을 학습 집합으로 구성하였다. 모든 영상 데이터는 gray scale의 8bits 명도 영상을 사용하였다.
내부 메모리의 경우, 평균 얼굴 데이터가 저장된 L_MFACE와 H_MFACE 메모리, 입력 영상이 저장되는 IN_IMG 메모리, DIFFERENTIAL IMAGE 모듈의 중간 결과를 저장하는 DIFF_FACE 메모리 그리고 최종 결과 영상이 저장되는 OUT_IMG 메모리가 필요하다. 연산 모듈은 전체 동작을 컨트롤을 하는 CORE CONTROL 모듈과 입력된 저해상도 영상에서 평균 얼굴 영상을 제거하는 DIFFERENTIAL IMAGE 모듈 그리고 고해상도 영상을 복원하는 GLOBAL FACE SR 모듈로 구성되어 진다.
이 학습 데이터는 입력된 저해상도 영상의 해상도가 35×35이고 고해상도 결과 영상의 해상도가 70×70 일 때, (352×702) 사이즈의 32bit 부동 소수점 데이터를 갖는다.
현재 본 논문에서 설계한 얼굴 영역 초해상도 모듈은 Samsung 0.13um CMOS 표준 라이브러리를 사용하여 MPW 공정으로 칩을 제작하여 테스트 중에 있다. Synopsys사의 Design Compiler를 이용하여 100 MHz 의 동작 속도를 타겟으로 합성한 결과 141,389 gate count를 가지며, 160Kbits의 SRAM 메모리를 사용하였다.
이론/모형
고해상도 얼굴 영상 복원을 위한 학습 방법으로 주성분 분석(PCA: Principle Component Analysis)을 이용한다. PCA를 이용하여 얼굴 집합으로부터 모든 얼굴 영상의 평균적인 특징을 가장 잘 나타내는 기저 벡터, 즉 고유 얼굴(eigenfaces)을 찾아낸다.
학습 기반의 저해상도 영상 복원 알고리즘은 미리 연산된 많은 양의 학습 데이터를 저장하고 있어야 하므로 외부 SDRAM을 사용한다. 때문에, 제안된 하드웨어 구조는 외부 SDRAM을 제어하기 위한 SDRAM 컨트롤러 부분을 포함하며, 저장된 학습 데이터를 이용하여 저해상도 얼굴 입력 영상으로부터 고해상도 얼굴 영상 복원 연산을 수행하는 FACE SR CORE 부분, 그리고 S3C2440A 프로세서와의 연결을 위한 INTERFACE 부분으로 구성된다.
성능/효과
이를 바탕으로 실시간 동작에 적합한 형태의 하드웨어 구조를 설계하고 ARM9기반 임베디드 프로세서 S3C2440 와 Xilinx Virtex-4에서 검증하였다. 그 결과, 제안된 하드웨어 구조는 100 MHz의 동작 속도에서 초당 30 프레임의 처리가 가능하다여 실시간 동작에 무리가 없다.
35×35의 저해상도 입력 영상은 S3C2440A 프로세서를 이용하여 내부 메모리에 저장되고 하드웨어로 구현된 얼굴 영역 초해상도 모듈을 통해 복원된 최종 결과 영상은 다시 내부메모리에 저장된다. 이 결과 영상을 host로 전달 받아, 소프트웨어로 구현한 고정 소수점 알고리즘의 결과 영상과 하드웨어에서의 결과 영상이 동일함을 확인하였다.
후속연구
더불어, stand-alone 형태의 임베디드 시스템을 위해 얼굴 검출단과 얼굴 인식을 통합하는 연구가 진행되어야 한다.
질의응답
핵심어
질문
논문에서 추출한 답변
초기의 영상 보안 기술의 한계는 무엇인가?
초기의 영상 보안 기술은 카메라를 통하여 획득된 영상을 전달 받아 사람이 직접 감시하거나, 범죄가 이미 발생한 후의 저장된 영상을 분석하여 대응하는 수동적인 형태였다. 반면, 최근에는 IT 기술의 급격한 발전에 힘입어 입력된 영상 분석을 통해 실시간으로 범죄 상황을 인식하고 대응할 수 있는 지능형 영상 보안 시스템에 대한 요구가 꾸준히 증가하고 있다.
얼굴 영상을 대상으로 하는 초해상도 방법은 무엇을 이용하는가?
얼굴 영상을 대상으로 하는 초해상도 방법은 주로 미리 수집된 다수의 고해상도 얼굴 영상의 학습 집합(training set)을 이용한다. 학습 과정을 통해 얻어진 사전 정보는 저해상도 영상이 가지고 있는 고유 정보와 함께 고해상도 영상을 복원하기위해 사용된다.
저해상도 얼굴 영상의 처리가 얼굴 인식 시스템의 전체 성능을 좌우하는 이유는 무엇인가?
특히, 기존의 보안 시스템에 접촉이나 강제성이 없는 얼굴 인식 기술을 접목하여, 원거리에서 용의자 또는 미아와 같이 특정 인물을 찾고 추적이 가능한 지능적인 보안 시스템에 대한 연구가 활발히 진행 되고 있다. 얼굴 인식의 경우 표정이나 자세, 조명의 변화에 따라 얼굴 영상의 차이가 크기 때문에 처리가 쉽지 않다. 뿐만 아니라, 먼 거리에서 촬영되어진 저해상도의 얼굴 영상일 경우 인식률이 크게 떨어진다. 따라서 저해상도 얼굴 영상의 처리가 얼굴 인식 시스템의 전체 성능을 좌우한다고 할 수 있다.
참고문헌 (10)
유장희, 문기영, 조현숙 "지능형 영상보안 기술현황 및 동향," ETRI 전자통신동향분석 제23권, 제4호, 476-486쪽, 2008년 8월
박정선, "저해상도 얼굴 영상의 해상도 개선을 위한 영역 기반 복원 방법," 정보과학회 논문지, 소프트웨어 및 응용 제34권, 제5호, 476-486쪽, 2007년 5월
염석원, "포톤 카운팅 선형 판별법을 이용한 저해상도 얼굴 영상 인식," 전자공학회 논문지, 제45권, SP편 제6호, 597-602쪽, 2008년 11월
S.C. Park, M.K Park, and M.G. Kang, "Super-Resolution Image Reconstruction: A Technical Overview", IEEE Signal Processing Magazine, Vol. 20, No. 3, pp.425-434, 2005.
M.H. Sedky, M. Moniri, and C.C. Chibelushi, "Classification of Smart Video Surveillance Systems for Commercial Applications," in Proc. of IEEE AVSS 2005, Sep. 2005, pp.638-643
S. Baker and T. Kanade, "Limits on super-resolution and how to break them," IEEE Trans. Pattern Anal. Mach. Intell., vol. 24, no. 9, pp. 1167-1183, Sep. 2002.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.