얼굴 이미지 데이터베이스에서 주어진 얼굴 감지


110

프로필 사진을 통해 트위터 사용자의 얼굴을 포함하는 작은 프로젝트를 진행하고 있습니다.

내가 직면 한 문제는 명확한 인물 사진 인 이미지를 제외한 모든 이미지를 필터링 한 후에 트위터 사용자의 작지만 상당 비율이 Justin Bieber의 사진을 프로필 사진으로 사용한다는 것입니다.

그것들을 걸러 내기 위해 그림이 저스틴 비버 (Justin Bieber)의 그림인지 프로그래밍 방식으로 말할 수 있습니까?


17
개발 플랫폼은 무엇입니까? 이는 다른 모든 프로그래밍 환경보다 우수하기 때문에 .NET에서 쉽게 수행 할 수 있습니다. Page.EradicateBieber () 함수를 호출하면됩니다. Microsoft는 이러한 요구를 예견하고 .NET 4.5에서 즉시 사용할 수 있도록 기꺼이 제공했습니다. (이전 버전의 사용자는 기다려야 할 것입니다.) (물론 모두 뺨을 맞아야합니다.)

32
나는 [justin-bieber]태그 가 필요하지 않다고 안전하게 주장 할 수 있다고 생각한다 .
skaffman

2
나는 사람들 가까운 옵션 (투표를받을 자격이있는 것)보다 의견 과이 질문 에 더 많은 투표를 한다고 안전하게 주장 할 수있다 .

20
Justin Bieber 오디오 필터도 좋습니다

답변:


49

더 많은 아이디어는 인식 할 필요없이 둘 이상의 사용자 피드에 나타나는 모든 이미지를 휴지통에 버리는 것입니다.


2
예, 사진을 거부하기 전에 2 ~ 4 개의 복제 가능 임계 값을 설정합니다 (신생아 사건 처리). 당신이 사진으로 무엇을할지에 따라 다릅니다.
Mark Bessey 2012

3
간단하고 우아한 솔루션. +1.
Robert Harvey

13
사람들은 같은 사람의 다른 그림을 사용할 수 있습니다.
Rebecca Chernoff

Rebecca의 (+1) 및 (-1) @ PPPPPP : 문제가 바뀌 었습니다.
steffen

4
그들은 할 수 있지만 대부분의 경우 상대적으로 작은 이미지 풀에서 선택하므로 여전히 작동합니다. 어쨌든 내 사진이 내 삼촌의 사진이라는 것을 알기 때문에 가장자리 케이스가 저주받습니다.
naught101

16

나는 느낌이 http://www.tineye.com/commercial_api가 여기 해결책이 될 수 있습니다. Twitter 프로필 이미지를 Tineye에 던지기 만하면 * *의 작은 자루와 관련이있는 것으로 명확하게 식별 (또는 간단한 단어 수 논리를 사용하여 자동으로 점수를 매김) 할 수있는 이미지 (및 관련 URL)를 반환하는지 확인하십시오 .

단순!


1
Google은 최근 이미지 검색을 발표했습니다. youtube.com/watch?v=t99BfDnBZcI API가 아직 있는지 잘 모르겠지만 대안이 될 수 있습니다.
petrichor

11

선명한 인물 사진 만 필터링 할 수 있기 때문에 원시 이미지를 기계 학습에 유용한 기능으로 변환하는 기능 생성 방법이 있다고 가정합니다. 그것이 사실이라면, 알고리즘에 알려진 Bieber 사진과 알려진 비 Bieber를 공급하여 분류 알고리즘을 훈련시킬 수 있습니다 (신경망 등이 있습니다). 모델을 학습 한 후에는 새 이미지가 Bieber인지 여부를 예측하는 데 사용할 수 있습니다.

이런 종류의지도 학습 기술은 정답을 알고있는 데이터 (비버 여부)를 요구하지만, 구글 이미지 검색에서 찾을 수 있습니다. 또한 올바른 종류의 기능이 필요하며 이미지 처리 또는 알고리즘이 주요 단점인지 알기에는 충분하지 않습니다.


2
불행히도, 기능 생성 단계는 가장
어렵고

@steffen OP가 얼굴을 엉망으로 만든다는 제안이 있으므로 디스크립터 생성기가 있습니다.

@ mpq : 그러나 OP에 픽셀 당 하나의 기능이 없으면 의미있는 집계 수준을 찾아야한다는 것을 의심하지 않았습니다. 나는 공감하지 않았고, 단지이 답변 뒤에 숨겨진 복잡성을 지적하고 싶었습니다 (물론 맞습니다).
steffen

1
기능 생성 단계는 어려운 부분입니다. OP가 이미 이미지를 처리하는 메커니즘이 있기 때문에이 작업을 수행 할 수 있다고 가정했습니다. 비록 그가 Bieber / Bieber가 아닌 얼굴 / 얼굴이 아닌 얼굴을 감지하는 데 유용한 기능 일지라도, 실제로는 기능에 달려 있습니다.
Michael McGowan

7

고유면, http://en.wikipedia.org/wiki/Eigenface 와 같은 방법을 사용할 수 있습니다 . 다음은 다른 구현에 대한 링크뿐만 아니라 절차를 잘 살펴 보는 것입니다.

http://www.pages.drexel.edu/~sis26/Eigenface%20Tutorial.htm

여기에서이를 분류 접근법에 사용하고 모델을 학습 한 다음 사례를 예측하는 것이 일반적입니다. 유명 인사들에 대한 훈련으로이를 수행 할 수 있으며, 훈련 된 유명인 모델에서 트위터의 얼굴을 예측하는 경우 제거하십시오. 이 http://blog.cordiner.net/2010/12/02/eigenfaces-face-recognition-matlab/과 유사

이것은 지속적인 수정으로 어려움을 겪고 있습니다. 곧 훈련 된 모델에는없는 새로운 Justin Bieber가있을 것이므로 예측할 수 없습니다. Whitney Houston과 같은 경우도 있지만 이전에 그녀를 추가 한 적이 없었지만 몇 주 동안 존경과 존경에서 공통된 이미지가 될 수 있습니다. 위에서 언급 한 것처럼 아기 사진의 단점은 없습니다. 이러한 문제를 극복하기 위해 더 많은 계층 적 클러스터링 방법을 사용할 수 있습니다. 특정 수준의 지원에 도달하면 매우 가까운 처음 몇 세트의 클러스터를 제거하면 첫 번째 클러스터에는 두 번째 항목이 구성되기 전에 15 개의 항목이 있습니다. 이제 훈련 모델에서 누구를 걱정할 필요는 없지만 아기 사진 문제에 빠질 것입니다.




3

해당 사진이 어떤 사람을 참조하는지 감지하는 알고리즘을 착용해야합니다. 유명한 인물의 다양한 인물 사진을 기반으로 모델을 구축하고 분류기를 사용하여이 사진이 데이터베이스 사진 중 하나를 참조하도록 할 수 있습니다. 모델의 정확도를 높이려면 눈 사이의 거리 또는 다른 매개 변수와 같이 얼굴에 좋아하는 다른 매개 변수를 기반으로 특정 분류기를 사용해야합니다. 피부 분석도 있습니다. 가장 중요한 것은 좋은 분류기를 만드는 것입니다. 이 방법은 취약 할 수 있습니다.

그러나 얼굴 인식에 대한 훌륭한 프로젝트도 있습니다 http://opencv-code.com/Opencv_Face_Detection


1
AFAIK OpenCV 및 링크 된 사이트는 얼굴 인식 만 구현 합니다 (사진의 어느 부분이 사람의 얼굴입니까 ?)
f3lix

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.