2009-07-17 5 views
27

이미지 방향에 대한 EXIF ​​메타 데이터를 사용할 수없는 경우에도 자동으로 사진을 회전하고 싶습니다.사진 방향 감지 알고리즘

사진의 방향을 감지하는 데 유용한 알고리즘이 있습니까? 이미지는 디지털 카메라의 사진입니다. 알고리즘은 완벽하게 작동 할 필요는 없지만 사진을 적절하게 회전시키는 데 필요한 인간의 상호 작용 양을 줄이는 것이 효과적입니다.

나는 주제에 대한이 두 논문을 발견했다 :

포인터.

+0

자동 세로/가로 방향의 알고리즘이 아닌 것 같습니다. 그러나 일부 구현에서 찾을 수있는 가장 가까운 알고리즘입니다 : 기울기 보정. ImageMagick 기울기 보정 또는 다음을 확인하십시오. http://www.google.com/codesearch/p?ct=rc#f0yt7jaEG7A/raster/deskewer.cpp –

+3

회전 이미지의 트릭을 새로운 것으로 고려하고 싶을 수도 있습니다 CAPTCHA 스타일. 작은 원형 이미지는 명백한 (우리에게) 객체로 표시되지만 명확한 수평선은 제공되지 않습니다. 이 방법이 도움이되지 않는다는 것을 알고 있지만, 문제의 깊이를 강조합니다. http://www.richgossweiler.com/projects/rotcaptcha/rotcaptcha.pdf – Omniwombat

+0

@Luke Francl, 나는 비슷한 일을하고 싶습니다. 그래서 마침내 당신을 위해 무엇을 했습니까? – Lazer

답변

9

소비자 디지털 카메라의 사진은 많은 사람들이 사용하기 때문에 방향을 나타낼 수 있습니다. 얼굴 검출은 잘 연구 된 연구 분야입니다. 기본적인 얼굴 인식은 긴면이 수직 치수 여야하는 직사각형을 제공합니다. 또한, 눈/입을 감지 할 수 있다면 사각형의 정확한 방향을 선택할 수 있어야합니다.

다른 많은 사진은 하늘이 위를 향하고 푸른 색이며 땅이 아래로 내려다 보이는 관광 용 스냅입니다.

+3

많은 얼굴 탐지 알고리즘은 거꾸로 된 얼굴을 찾지 않기 때문에 4 가지 방향 모두에서 얼굴을 찾아야합니다. – Janusz

+2

이 중 적어도 하나는 알고리즘의 일부로 얼굴 인식을 사용하기 때문에 위의 링크 된 서류를 검토 한 이후로 고려해 봤습니다. 내 사진 코퍼스의 대다수에는 얼굴이 포함되어 있기 때문에 잘 작동 할 수 있다고 생각합니다 (Janusz에 대한 방향을 인식 할 수있는 얼굴 인식 프로그램을 찾을 수 있다고 가정 할 때). –

-2

이미지가 정사각형이 아닌 경우 기본 이미지의 너비가 너비보다 큰 것으로 가정 할 수 있습니다. 회전해야하는지 여부를 결정하는 경우 가로 세로 비율을 비교하고 방향을 재조정하여 기본값으로 변경해야합니다. 비록 당신이 거꾸로 된 이미지로 끝날지라도.

+2

이것은 기본 이미지에만 해당됩니다. 종종 얼굴이나 사람의 사진을 찍는 사람들이 카메라를 돌립니다. – Janusz

+0

사람들이 카메라를 돌려서 사진을 찍을 때, 얼굴이 옆이나 거꾸로 있지 않으면, 적어도 가로 세로 비율을 사용할 수 있습니다 힌트. – bdbaddog

3

나는 http://sourceforge.net/projects/rotator/만을 찾을 수있었습니다.

약 18 개의 회전이 필요한 70 장의 사진으로 구성된 휴일 사진 테스트 세트를 사용했습니다.

기본 설정으로 처리 한 후 20 개가 회전되었거나 잘못 회전하지 않았습니다.

그리 큰 결과는 아닙니다.