728x90

OpenCV(오픈소스 컴퓨터 비전 라이브러리)은 컴퓨터 비전 및 기계 학습 소프트웨어 라이브러리로, 실시간 이미지 프로세싱을 위해 최적화된 다양한 기능을 제공합니다. OpenCV는 주로 C++로 작성되었으나, 파이썬, 자바, 매트랩 등 다양한 언어 바인딩을 지원합니다. OpenCV의 개발 역사를 살펴보면 다음과 같습니다:

1. 초기 개발 및 버전 1.x

  • 시작(1999년): OpenCV는 1999년 Intel의 연구 프로젝트로 시작되었습니다. Gary Bradski가 주도한 이 프로젝트는 컴퓨터 비전 애플리케이션의 개발을 간소화하고 가속화하기 위해 설계되었습니다.
  • 첫 릴리스(2000년): OpenCV의 첫 공개 버전이 2000년에 릴리스되었습니다. 이 초기 버전은 주로 기본 이미지 처리 및 컴퓨터 비전 알고리즘을 포함하고 있었습니다.

2. OpenCV 2.x

  • OpenCV 2.0 (2009년): OpenCV 2.0은 2009년에 릴리스되었으며, 새로운 C++ 인터페이스를 도입하였습니다. 이 버전은 객체 지향 프로그래밍 스타일을 지원하며, 코드의 가독성과 유지보수성을 향상시켰습니다.
  • 기능 확장: OpenCV 2.x 버전에서는 많은 새로운 기능과 모듈이 추가되었습니다. 여기에는 머신 러닝 모듈, GPU 가속을 위한 CUDA 지원, 3D 재구성 모듈 등이 포함되었습니다.

3. OpenCV 3.x

  • OpenCV 3.0 (2015년): 2015년에 릴리스된 OpenCV 3.0은 많은 주요 업데이트와 성능 향상을 포함하고 있습니다. 특히, 모듈화된 아키텍처를 도입하여, 사용자들이 필요한 모듈만 선택적으로 사용할 수 있게 되었습니다.
  • 딥러닝 지원: OpenCV 3.x 버전에서는 딥러닝 지원이 대폭 강화되었습니다. DNN(deep neural network) 모듈이 추가되어, 딥러닝 모델을 사용한 이미지 분류, 객체 탐지 등을 쉽게 구현할 수 있게 되었습니다.

4. OpenCV 4.x

  • OpenCV 4.0 (2018년): 2018년에 릴리스된 OpenCV 4.0은 성능 향상, 코드 최적화 및 불필요한 모듈 제거 등을 통해 라이브러리를 경량화하였습니다.
  • 모던 C++ 사용: OpenCV 4.x 버전에서는 모던 C++ 기능들을 적극적으로 활용하여 코드의 효율성과 안정성을 높였습니다. 또한, 더 나은 하드웨어 가속을 위해 OpenCL 및 CUDA와의 통합이 강화되었습니다.

5. OpenCV 5.x (향후 계획)

  • 미래: OpenCV 5.x는 현재 개발 중이며, 미래에는 더 많은 딥러닝 통합, 성능 최적화 및 최신 컴퓨터 비전 알고리즘의 지원이 예상됩니다.

주요 기여자

  • Gary Bradski: OpenCV 프로젝트의 창시자이자 주요 기여자.
  • Vadim Pisarevsky: 초기 개발에 참여한 핵심 인물로, OpenCV의 성장에 큰 기여를 하였습니다.
  • Itseez: Intel로부터 독립된 후 OpenCV의 주요 개발을 맡은 회사로, 이후 2016년 Intel에 인수되었습니다.

OpenCV는 현재도 활발히 개발 중이며, 전 세계의 많은 개발자와 연구자들이 이 프로젝트에 기여하고 있습니다. 이 라이브러리는 컴퓨터 비전 연구 및 애플리케이션 개발에 중요한 도구로 자리 잡았습니다.

728x90
반응형

'Software > C' 카테고리의 다른 글

C 시작하기 - OpenCV 함수 1  (0) 2024.08.06
C 시작하기 - OpenCV 활용  (0) 2024.08.06
C 시작하기 - QT + MariaDB CRUD  (0) 2024.08.04
C 시작하기 - QT  (0) 2024.08.04
C언어 문법  (0) 2024.07.29

+ Recent posts