2019년 10월 12일
개발 이야기 정리
박재호(jrogue@gmail.com)
참고 자료
• <컴퓨터 vs 책> 블로그
• http://jhrogue.blogspot.com/
• OKdevTV 유튜브 방송
• 오늘 방송:
• https://www.youtube.com/watch?v=yAVfWDLuzNk&list=PLdntWJk2tJPKvRB0mS
qC5tyKUv7HFtcqg&index=2
• 개발 이야기 리스트:
• https://www.youtube.com/playlist?list=PLdntWJk2tJPKvRB0mSqC5tyKUv7HFtcqg
• 슬라이드 셰어
• https://www.slideshare.net/jrogue/presentations
소개할 자료
• https://medium.com/@ageitgey/the-dumb-reason-your-fancy-
computer-vision-app-isnt-working-exif-orientation-
73166c7d39da
• https://github.com/ageitgey/image_to_numpy#image_to_num
py
문제점
• 카메라와 메모리 배열의 차이
해법
• 똑똑한 애플리케이션
애플리케이션은 어떻게 회전되었는지 알
까?
• Exif (short for Exchangeable image file format)
• 카메라가 사진을 찍을 때 메타 정보를 저장하는 형식
EXIF는 파이썬 애플리케이션에 어떤 문제
를 일으키나?
• EXIF는 JPEG의 고유 속성이 아님  TIFF에서 빌려옴
• numpy, scipy, TF, Keras 등은 일반적인 데이터 배열을 다룸 →
사용자 수준에서 이미지 회전과 같은 기능을 미지원
• 무조건 나쁜가? → NO
• 예) 구글 Vision API
문제를 해결하려면?
• EXIF 메타데이터 추출 후 가공이 필요 → 유틸리티 활용!
$ pip install image_to_numpy
메타데이터 읽기 위한 라이브러리 사용
시 주의
• PIL vs Pillow
• PIL(Python Image Library)는 파이썬 2.7에서 중지
• 파이썬 3.0에서는 Pillow을 사용해야 함  "friendly" PIL fork
• 참고: https://edoli.tistory.com/92
결론
• 이론도 중요하지만 현실에서는 공학을 알아야 한다

2019년 10월 12일 개발 이야기 정리