◆ 파이썬은 다양한 이미지 처리 작업을 위한 강력하고 유연한 프로그래밍 언어이다.
◆ 파이썬의 이미지 처리 도구들은 이미지 파일을 불러오고, 처리하고, 분석하고, 저장하는 데 필요한 다양한 기능을 제공한다.
◆ 파이썬의 이미지 처리 라이브러리는 사용의 용이성, 다양한 기능 제공, 그리고 활발한 커뮤니티 지원으로 인해 매우 인기가 있다.
◆ 파이썬을 사용한 이미지 처리는 데이터 과학, 기계 학습, 컴퓨터 비전 및 여러 다른 분야에서 중요한 역할을 합니다.
■ NumPy
▷ NumPy는 Numerical Python의 줄임말이다
▷ NumPy는 고성능 수치 계산을 위한 파이썬 라이브러리이다.
▷ 파이썬에서 과학적 계산을 할 때 사용되는 핵심 패키지이다
▷ 다차원 배열과 행렬 연산을 지원하고, 고성능 수학 함수를 제공한다.
▷ 파이썬의 기본 리스트보다 효율적이고 강력한 연산을 수행할 수 있다.
▷ 이미지를 다차원 배열로 처리할 수 있게 해주며, 이는 이미지 처리 작업의 기본이 된다.
■ SciPy
▷ SciPy는 과학적 및 기술적 계산을 위한 파이썬 기반 오픈 소스 라이브러리 이다.
▷ 주로 수학, 과학, 공학 문제를 다루는 데 필요한 고급 기능을 제공한다.
▷ SciPy는 NumPy 라이브러리를 기반으로 하여 더 복잡한 수학적 연산, 최적화, 통계 분석, 신호 처리 등을
수행할 수 있도록 확장된 기능을 포함한다.
▷ 이미지 처리에서 SciPy는 필터링, 이미지 모폴로지, 변환과 같은 다양한 기능을 제공한다.
■ OpenCV
▷ OpenCV는 Open Source Computer Vision의 약자로 영상 처리에 사용할 수 있는 오픈 소스 라이브러리 이다.
▷ 컴퓨터가 사람의 눈처럼 인식할 수 있게 처리해주는 역할을 하기도 하며,
우리가 많이 사용하는 카메라 어플에서도 OpenCV가 사용하기도 한다.
(추가로 자율주행자동차에서 자동차의 눈이 되주는 것이 카메라와 OpenCV가 합작해서 해낸 일이다.)
▷ 사용되는 예로는 공장에서 제품 검사할 때, 의료 영상 처리 및 보정 그리고 판단, CCTV영상, 로보틱스 등
▷ 카메라로 찍어서 할 수 있는 모든 일은 OpenCV로 처리할 수 있다.
▷ 실시간 이미지 처리에 최적화되어 있으며, 얼굴 인식, 객체 감지, 이미지 변환 등 다양한 고급 기능을 지원한다.
▷ 머신 러닝과 A.I를 활용해서 그 활용도를 더욱 넓혀가고 있다.
■ scikit-image
▷ scikit-image는 이미지처리에 특화된 Python 이미지 라이브러리이며 Numpy배열로 이미지 객체를 네이티브하게 다룬다.
즉 Numpy배열로 동작한다.
▷ scikit-image는 SciPy 스택을 기반으로 하는 오픈 소스 이미지 처리 라이브러리 이다.
▷ 사용하기 쉬운 인터페이스를 통해 이미지 파일을 읽고, 쓰고, 수정할 수 있다.
▷ 세분화, 모폴로지, 필터링, 이미지 변환 등의 기능을 제공한다.
■ PIL/Pillow
▷ PIL는 Python Imaging Libarary의 약자로, 파이썬으로 이미지를 다룰 때 유용한 기능들을 제공하는 라이브러리 였다.
▷ 파이썬 인터프리터에 다양한 이미지 파일 형식을 지원하고 강력한 이미지 처리와 그래픽 기능을 제공하는 오픈 소스 라이브러리
▷ 2011년 PIL 저장소에 대한 마지막 커밋으로 중단된 것으로 보이며 Pillow라는 후속 프로젝트가 PIL 저장소에서 갈려져 나와 Python 3.x 지원을 추가했다.
▷ 이미지 파일을 열고, 조작하고, 저장하는 강력한 기능을 제공합니다.
▷ 기본적인 이미지 처리 기능뿐만 아니라, 이미지 파일 형식 간의 변환, 필터링, 이미지 강화 등의 기능도 제공한다.