아이겐페이스

Eigenface
캠브리지 AT&T 연구소의 고유 영역

고유면(/ˈaɪɡnˌfeɪs/)은 인간의 얼굴 인식컴퓨터 시력 문제에 사용할 때 고유 벡터 세트에 주어진 이름이다.[1]인정에 아이겐페이서를 사용하는 접근법은 시로비치와 커비가 개발했고 얼굴 분류에 매튜 투르크알렉스 펜틀란드가 사용했다.[2][3]고유 벡터는 얼굴 이미지의 고차원 벡터 공간에 걸친 확률 분포공분산 행렬에서 도출된다.고유 영역 자체는 공분산 행렬을 구성하는 데 사용되는 모든 영상의 기본 세트를 형성한다.이것은 더 작은 기본 이미지 세트가 원래 훈련 이미지를 나타내도록 허용함으로써 치수 축소를 만든다.분류는 기본 집합으로 얼굴이 어떻게 표현되는지를 비교함으로써 달성할 수 있다.null

역사

고유면 접근은 얼굴 이미지의 저차원적 표현을 찾는 것으로 시작되었다.시로비치와 커비는 일련의 기본 특징을 형성하기 위해 얼굴 이미지 모음에 주성분 분석을 사용할 수 있다는 것을 보여주었다.[2]고유사진으로 알려진 이러한 기본 영상은 원래 훈련 세트에서 이미지를 재구성하기 위해 선형적으로 결합될 수 있다.교육 세트가 M 영상으로 구성되는 경우, 주성분 분석은 N 영상의 기본 세트를 형성할 수 있으며, 여기서 N < M.고유사진의 수를 증가시킴으로써 재구성 오차는 감소하지만, 필요한 숫자는 항상 M보다 적게 선택된다.예를 들어, M 얼굴 이미지의 트레이닝 세트에 대해 N 고유화면을 여러 개 생성해야 하는 경우, 각 얼굴 이미지는 모든 K "특징" 또는 고유화면의 "비율"으로 구성될 수 있다고 말할 수 있다.얼굴 이미지1 = (E의1 23%) + (E의2 2%) + (E의3 51%) + ... (1% En)null

1991년 M.투르크와 A.펜트랜드는 이러한 결과를 확대하여 얼굴 인식의 고유면 방법을 제시했다.[3]이들은 고유화면을 이용한 자동화된 얼굴인식 시스템 설계 외에도 공분산 행렬의 고유 벡터를 계산해 당시의 컴퓨터가 다수의 얼굴 영상에 대해 고유분석을 수행할 수 있도록 하는 방법을 보여 주었다.얼굴 이미지는 대개 고차원 공간을 차지하며, 그러한 데이터 세트에서는 기존의 주성분 분석이 난해했다.투르크와 펜트랜드의 논문은 픽셀 수가 아닌 이미지 수에 따른 매트릭스를 바탕으로 고유 벡터를 추출하는 방법을 시연했다.null

일단 확립되면, 정확도를 높이기 위해 사전 처리 방법을 포함하도록 고유면 방법을 확장했다.[4]또한 여러 가지 다지관 접근법을 사용하여 다양한 피사체[5][6] 및 눈과 같은 다른 특징에 대한 고유 영역 세트를 구축했다.[7]null

세대

서로 다른 사람의 얼굴을 묘사한 큰 이미지 세트에 주성분 분석(PCA)이라는 수학적 과정을 수행하면 일련의 고유체계가 생성될 수 있다.비공식적으로, 고유체는 다수의 얼굴 사진에 대한 통계적 분석에서 도출된 "표준화된 얼굴 성분"의 집합으로 간주될 수 있다.어떤 사람의 얼굴도 이러한 표준면의 조합이라고 볼 수 있다.예를 들어, 사람의 얼굴은 평균 얼굴 + 1에서 10%, 2에서 55%, 3에서 -3%로 구성될 수 있다.놀랍게도, 대부분의 얼굴들에 대한 공정한 근사치를 얻기 위해서는 많은 고유 영역이 함께 결합되지 않는다.또한 사람의 얼굴은 디지털 사진으로 기록되는 것이 아니라 단지 가치의 목록(데이터베이스의 고유면마다 하나의 값)으로 기록되기 때문에 사람 개개인의 얼굴에는 훨씬 적은 공간을 차지한다.null

생성되는 고유 영역은 특정 패턴으로 배열된 밝고 어두운 영역으로 나타날 것이다.이 패턴은 얼굴의 다른 특징들을 어떻게 선별하여 평가하고 점수를 매기는가 하는 것이다.대칭을 평가하는 패턴이 있을 것이다. 얼굴털의 어떤 스타일이 있는지, 머리카락 선이 어디에 있는지, 혹은 코나 입의 크기에 대한 평가가 있을 것이다.다른 고유체들은 식별이 덜 간단한 패턴을 가지고 있으며, 고유체의 이미지는 얼굴처럼 거의 보이지 않을 수 있다.null

고유체(eigenfaces)를 만들어 인식에 사용하는 기법도 얼굴 인식 밖에서 사용하는데, 필체 인식, 입술 판독, 음성 인식, 수화/ 제스처 해석, 의료 영상 분석 등이 있다.따라서 일부에서는 고유면이라는 용어를 사용하지 않고 '유전자상'을 사용하는 것을 선호한다.null

실천적 구현

고유 영역 집합을 만들려면 다음을 수행해야 한다.

  1. 얼굴 이미지의 트레이닝 세트를 준비하십시오.훈련 세트를 구성하는 사진은 동일한 조명 조건에서 촬영되어야 하며, 모든 이미지에 눈과 입이 정렬되도록 정상화되어야 한다.또한 모두 공통 픽셀 해상도(r × c)로 다시 샘플링해야 한다.각 이미지는 하나의 벡터로 처리되는데, 단순히 원본 영상에 픽셀의 행을 연결함으로써, r × c 요소가 있는 단일 열이 생성된다.이 구현을 위해, 훈련 세트의 모든 영상은 단일 매트릭스 T에 저장되며, 매트릭스의 각 열은 영상이라고 가정한다.
  2. 평균을 빼다.평균 영상 a를 계산한 다음 T의 각 원본 영상에서 빼야 하는 경우.
  3. 공분산 행렬 S의 고유 벡터와 고유값을 계산한다.각 고유 벡터는 원본 영상과 동일한 차원성(성분의 수)을 가지므로, 그 자체가 하나의 이미지로 볼 수 있다.따라서 이 공분산 행렬의 고유 벡터는 고유파세라고 불린다.그것들은 이미지가 평균 이미지와 다른 방향이다.일반적으로 이것은 계산적으로 비용이 많이 드는 단계일 것이지만(가능한 경우) 고유체들의 실제 적용가능성은 아래에 설명된 대로 S를 명시적으로 계산하지 않고도 S의 고유 벡터를 효율적으로 계산할 수 있는 가능성에서 비롯된다.
  4. 주성분을 선택하십시오.고유값을 내림차순으로 정렬하고 이에 따라 고유 벡터를 정렬하십시오.주성분 k의 개수는 총 분산에 대한 분계점 ε을 설정하여 임의로 결정된다.총 분산 = ( 1+ 2+.. . . n ) n = 성분 수입니다.
  5. k는 충족되는 가장 작은 수 + 2+.. . + k) > > {\frac

이러한 고유체들은 이제 기존 얼굴 및 새 얼굴 모두를 나타내기 위해 사용될 수 있다: 우리는 새로운 (평균 감산된) 이미지를 고유체에 투영할 수 있고, 따라서 그 새로운 얼굴이 평균 얼굴과 어떻게 다른지를 기록할 수 있다.각 고유 면과 관련된 고유값은 훈련 세트의 영상이 해당 방향의 평균 영상과 얼마나 다른지를 나타낸다.정보는 고유 벡터의 하위 집합에 영상을 투영함으로써 손실되지만, 그러한 고유값을 가장 큰 고유값을 가진 고유화 영역을 유지함으로써 손실을 최소화한다.예를 들어 100 × 100 영상으로 작업하면 10,000개의 고유 벡터가 생성된다.실제 적용에서 대부분의 면은 일반적으로 100에서 150개의 고유체 사이의 투영을 사용하여 식별할 수 있으므로 10,000개의 고유 벡터 대부분이 폐기될 수 있다.null

Matlab 예제 코드

Extended Yale Face Database B를 사용하여 고유 영역을 계산하는 예는 다음과 같다.계산 및 저장 병목 현상을 피하기 위해 얼굴 이미지는 4×4=16 인수로 샘플링된다.null

분명한 전부; 가까운. 전부; 짐을 싣다 예일 패션 [h, w, n] = 사이즈를 맞추다(예일 패션); d = h * w; % 벡터화 영상 x = 모양을 바꾸다(예일 패션, [d n]); x = 곱절로 하다(x); % 빼기 평균 mean_matrix = 심술궂다(x, 2); x = bsxfun(@빼다, x, mean_matrix); % 공분산 계산 s = 코브를 틀다(x'); 고유값 및 고유 벡터 획득률(%) [V, D] = 아이그(s); 에그발 = 검열하다(D); 고유값(%)을 내림차순으로 정렬 에그발 = 에그발(종지부를 찍다: - 1:1); V = 휙휙 돌리다(V); % 표시 평균 및 1번째부터 15번째 주 고유 벡터 형상을 나타내다, 하위 플롯(4, 4, 1) imagesc(모양을 바꾸다(mean_matrix, [h, w])) 대포를 놓다 회색의 을 위해 i = 1:15     하위 플롯(4, 4, i + 1)     imagesc(모양을 바꾸다(V(:, i), h, w)) 종지부를 찍다 

공분산 행렬 S는 많은 고유점을 생성하지만, 대부분의 얼굴을 나타내기 위해서는 그 중 극히 일부만이 필요하다는 점에 유의한다.예를 들어 모든 면 영상의 총 변동의 95%를 나타내려면 처음 43개의 고유 영역만 있으면 된다.이 결과를 계산하려면 다음 코드를 실행하십시오.

%는 95% 총 분산을 나타내는 데 필요한 주성분의 수를 평가한다. 에이그섬 = 합계를 내다(에그발); csum = 0; 을 위해 i = 1:d     csum = csum + 에그발(i);     티브이 = csum / 에이그섬;     만일 티브이 > 0.95         k95 = i;         부숴뜨리다     종지부를 찍다; 종지부를 찍다; 

고유 벡터 계산

이미지의 공분산 매트릭스에서 PCA를 직접 수행하는 것은 종종 계산상 불가능하다.100 × 100 픽셀이라고 하는 작은 영상을 사용하는 경우, 각 영상은 10,000 차원 공간의 점이며 공분산 행렬 S는 10,000 × 10,000 = 108 원소의 행렬이다.그러나 공분산 행렬의 순위는 훈련 예시의 수에 의해 제한된다. N 훈련 예제가 있는 경우, 최대 N - 1 고유값이 0이 아닌 고유 벡터가 있을 것이다.훈련 예시 수가 영상의 치수보다 작을 경우, 주요 구성요소를 다음과 같이 보다 쉽게 계산할 수 있다.null

T를 사전 처리된 교육 예제의 행렬로 두십시오. 여기서 각 열에는 평균 감산된 이미지가 하나씩 포함되어 있다.공분산 행렬은 S = TTT 계산할 수 있으며 S의 고유 벡터 분해는 다음에 의해 주어진다.

그러나 TTT 큰 행렬이고, 만약 우리가 대신 고유값 분해법을 취한다면

그리고 나서 우리는 T와 방정식의 양쪽을 사전 다중화함으로써, 우리는 그것을 얻는다.

즉, ui TTT 고유 벡터라면 vi = Tui S의 고유 벡터라는 뜻이다.만약 우리가 100 × 100 픽셀의 300 이미지로 이루어진 트레이닝 세트를 가지고 있다면, 매트릭스 TTT 300 × 300 매트릭스로, 10,000 × 10,000 공분산 매트릭스보다 훨씬 관리가 가능하다.단, 결과 벡터i v는 정규화되지 않으며, 정규화가 필요한 경우 추가 단계로 적용해야 한다.null

SVD와의 연결

n 데이터 행렬을 열 를 감산된 영상 벡터로 나타내도록 한다.그러면.

X단수 분해(SVD)를 다음과 같이 한다.

다음 X (는) 다음과 같다.

여기서 λ=diag(

따라서 다음과 같은 사실을 쉽게 알 수 있다.

고유 영역 = 0이 아닌 단수 값과 된 U {\ 의 첫 번째 {\displaystyle k n
X = ith 단수 값 ) 2 X

데이터 행렬 X에서 SVD를 사용하면 고유화 영역을 얻기 위해 실제 공분산 행렬을 계산할 필요가 없다.null

얼굴 인식에 사용

안면인식이 고유혈관을 만든 동기였다.이러한 사용을 위해, 고유 영역은 시스템의 속도 및 효율성과 같이 이용 가능한 다른 기법보다 장점이 있다.고유페이스는 주로 치수 감소 방법이기 때문에 시스템은 상대적으로 작은 데이터 집합으로 많은 피사체를 나타낼 수 있다.얼굴 인식 시스템으로서, 이미지 사이징의 큰 감소에도 상당히 불변하지만, 보이는 이미지와 프로브 이미지 사이의 변동이 클 때는 상당히 실패하기 시작한다.null

얼굴을 인식하기 위해 갤러리 이미지(시스템에서 볼 수 있는 이미지)는 각 고유 얼굴이 해당 이미지에 미치는 영향을 설명하는 가중치 모음으로 저장된다.분류를 위해 시스템에 새로운 얼굴이 제시되면 고유체 컬렉션에 이미지를 투영하여 자체 가중치를 찾는다.이것은 프로브 표면을 설명하는 일련의 무게를 제공한다.그런 다음 이 가중치는 가장 가까운 일치점을 찾기 위해 갤러리의 모든 가중치에 대해 분류된다.가장 가까운 방법은 두 벡터 사이의 유클리드 거리를 찾기 위한 간단한 접근법이며, 최소값은 가장 가까운 대상으로 분류할 수 있다.[3]: 590 null

직관적으로 고유면 방법을 사용한 인식 프로세스는 계산된 고유면적에 의해 확장된 얼굴 공간에 쿼리 영상을 투영하고, 그 얼굴 공간에서 얼굴 클래스와 가장 가까운 일치점을 찾는 것이다.null

유사[8] 코드
  • 이미지 벡터 U 데이터베이스M M의 평균 벡터, k번째 고유면의 가중치를 다음과 같이 계산하십시오
    그런 다음 벡터 W=[ , 2,. .. w ,. . W}, 을(를) 형성하십시오.
  • W를 데이터베이스에 있는 이미지의 중량 벡터 m 과(와) 비교하십시오.유클리드 거리를 찾으십시오.null
  • < }인 경우 데이터베이스의 m번째 항목은 인정 대상이다.
  • 만약 1 < < 2{\2 U는 알 수 없는 얼굴일 수 있으며 데이터베이스에 추가될 수 있다.
  • > , 얼굴 이미지가 아니다.

각 갤러리 이미지의 가중치는 해당 주제가 아닌 해당 이미지를 설명하는 정보만 전달한다.전면 조명 하에서 하나의 피사체의 이미지는 강한 좌측 조명 하에서 동일한 피사체의 피사체와 매우 다른 가중치를 가질 수 있다.이것은 그러한 시스템의 적용을 제한한다.원래의 아이겐페이스 논문의 실험은 다음과 같은 결과를 제시하였다:[3]: 590 광도변동 평균 96%, 방향변동 평균 85%, 크기변동 64%.null

이와 같은 고유특징에 대해 고유면법에 대해 다양한 확장이 이루어졌다.이 방법은 얼굴 측정 기준(얼굴 특징 간 거리 측정)과 고유면 표현을 결합한 것이다.고유면 기법과 유사한 또 다른 방법은 선형 판별 분석을 사용하는 '어부'이다.[9]이 안면인식 방법은 아이겐페이서를 사용하는 것보다 조명과 얼굴 자세의 변화에 덜 민감하다.Fisherface는 치수 감소 단계 동안 더 많은 클래스 고유 정보를 보존하기 위해 라벨링된 데이터를 사용한다.null

고유 영역과 어부 영역의 또 다른 대안은 활성 외관 모델이다.이 접근방식은 얼굴의 윤곽을 설명하기 위해 활성 형상 모형을 사용한다.많은 얼굴 윤곽을 수집함으로써 주성분 분석을 사용하여 다양한 얼굴의 변동을 캡슐화하는 모델의 기본 세트를 구성할 수 있다.null

많은 현대적 접근방식은 여전히 주요 성분 분석을 치수 감소의 수단으로 사용하거나 다양한 변동의 모드에 대한 기본 영상을 형성하기 위해 사용한다.null

검토

아이겐페이스는 다음과 같은 점에서 얼굴 인식을 쉽고 저렴하게 실현할 수 있는 방법을 제공한다.

  • 훈련 과정은 완전히 자동적이고 코딩이 쉽다.
  • 고유면은 얼굴 이미지 표현에서 통계적 복잡성을 적절히 줄인다.
  • 데이터베이스의 고유 영역이 계산되면 얼굴 인식을 실시간으로 달성할 수 있다.
  • 아이겐페이스는 대형 데이터베이스를 처리할 수 있다.

그러나 고유면법의 결점도 명백하다.

  • 조명, 규모, 번역에 매우 민감하며 고도의 제어 환경을 필요로 한다.
  • 아이겐페이스는 표정 변화를 포착하는 데 어려움을 겪고 있다.
  • 가장 중요한 고유 영역은 주로 조명 부호화에 관한 것이며 실제 면에 관한 유용한 정보를 제공하지 않는다.

실제로 조도 산란에 대처하기 위해 일반적으로 고유면 방법은 데이터 집합에서 처음 세 개의 고유면적을 삭제한다.조명은 대개 얼굴 영상의 가장 큰 변동을 일으키는 원인이기 때문에, 처음 3개의 고유 영역은 주로 얼굴 인식에 거의 기여하지 않는 3차원 조명 변화의 정보를 포착하게 된다.그 세 가지 고유체를 버림으로써 얼굴 인식의 정확도에 상당한 상승이 있을 것이지만, 어부 면이나 선형 공간과 같은 다른 방법들은 여전히 유리하다.null

참고 항목

참조

  1. ^ Navarrete, Pablo; Ruiz-Del-Solar, Javier (November 2002). "Analysis and Comparison of Eigenspace-Based Face Recognition Approaches" (PDF). International Journal of Pattern Recognition and Artificial Intelligence. 16 (7): 817–830. CiteSeerX 10.1.1.18.8115. doi:10.1142/S0218001402002003.
  2. ^ a b L. Sirovich; M. Kirby (1987). "Low-dimensional procedure for the characterization of human faces". Journal of the Optical Society of America A. 4 (3): 519–524. Bibcode:1987JOSAA...4..519S. doi:10.1364/JOSAA.4.000519. PMID 3572578.
  3. ^ a b c d Turk, Matthew A; Pentland, Alex P (1991). Face recognition using eigenfaces (PDF). Proc. IEEE Conference on Computer Vision and Pattern Recognition. pp. 586–591. doi:10.1109/cvpr.1991.139758.
  4. ^ Yambor, Wendy S.; Draper, Bruce A.; Beveridge, J. Ross (2002). "Analyzing PCA-based Face Recognition Algorithms: Eigenvector Selection and Distance Measures" (PDF). Empirical Evaluation Methods in Computer Vision. Series in Machine Perception and Artificial Intelligence. Vol. 50. WORLD SCIENTIFIC. doi:10.1142/9789812777423_0003. ISSN 1793-0839.
  5. ^ Belhumeur, P.N.; Kriegman, D.J. (1996). What is the set of images of an object under all possible lighting conditions?. Proc. IEEE Conference on Computer Vision and Pattern Recognition. doi:10.1109/cvpr.1996.517085.
  6. ^ Burnstone, James; Yin, Hujun (2011). "Eigenlights: Recovering Illumination from Face Images". Intelligent Data Engineering and Automated Learning - IDEAL 2011. Lecture Notes in Computer Science. Vol. 6936. pp. 490–497. doi:10.1007/978-3-642-23878-9_58. ISBN 978-3-642-23877-2.
  7. ^ Moghaddam, B.; Wahid, W.; Pentland, A. (1998). Beyond eigenfaces: probabilistic matching for face recognition. Proc. Third IEEE International Conference on Automatic Face and Gesture Recognition. doi:10.1109/afgr.1998.670921.
  8. ^ M. Turk; A. Pentland (1991). "Eigenfaces for recognition" (PDF). Journal of Cognitive Neuroscience. 3 (1): 71–86. doi:10.1162/jocn.1991.3.1.71. PMID 23964806.
  9. ^ Belhumeur, P.N.; Hespanha, J.P.; Kriegman, D.J. (July 1997). "Eigenfaces vs. Fisherfaces: recognition using class specific linear projection" (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 19 (7): 711–720. CiteSeerX 10.1.1.5.1467. doi:10.1109/34.598228. ISSN 0162-8828.

추가 읽기

  • M. Kirby; L. Sirovich (1990). "Application of the Karhunen-Loeve procedure for the characterization of human faces". IEEE Transactions on Pattern Analysis and Machine Intelligence. 12 (1): 103–108. doi:10.1109/34.41390.
  • A. 펜트랜드, B.모하담, 티 스타너, 오올리야이드, 그리고 M.투르크. (1993년)."얼굴 인식을 위한 뷰 기반모듈식 Eigenspaces"기술 보고서 245, M.I.T 미디어 랩.
  • M. H. Yang (2000). "Face recognition using kernel eigenfaces". Proceedings International Conference on Image Processing. Vol. 1. pp. 37–40. doi:10.1109/ICIP.2000.900886.
  • R. Cendrillon; B. Lovell (2000). "Real-time face recognition using eigenfaces" (PDF). Visual Communications and Image Processing. pp. 269–276. doi:10.1117/12.386642.
  • T. Hesseltine, N. Pears, J. Austin, Z.첸 씨(2003년)."얼굴 인식: 외모 기반 접근 방식 비교".Proc. VIIth 디지털 이미지 컴퓨팅: 기법응용 프로그램, 제1.59–68권.
  • D. Pissarenko (2003). Eigenface-based facial recognition.
  • F. Tsalakanidoua; D. Tzovarasb; M.G. Strintzisa (2003). "Use of depth and colour eigenfaces for face recognition". Pattern Recognition Letters. 24 (9): 1427–1435. doi:10.1016/S0167-8655(02)00383-5.
  • Delac, K, Grazy, M, Liatsis, P. (2005)"부록 기반 얼굴 인식 통계 방법".제47회 국제 심포지엄 ELMAR-2005년 6월 8일 크로아티아 자다르에서 열린 2005년 6월 10일, 페이지 151–158의 멀티미디어 시스템응용을 중심으로 한 국제 심포지엄

외부 링크