📌 OpenCV(Open Source Computer Vision Library)는 실시간 이미지 및 영상 처리를 위한 라이브러리다.
📌 Python뿐만 아니라 C++, Java에서도 사용 가능하며, 딥러닝과 연계한 영상 처리에 최적화되어 있다.
| 비교 항목 | OpenCV (cv2) | 기본 이미지 처리 (PIL, NumPy 등) |
|---|---|---|
| 처리 속도 | 🚀 빠름 (C++ 기반) | 🐢 상대적으로 느림 (Python 연산) |
| GPU 가속 | ✅ 가능 (CUDA 지원) | ❌ 불가능 |
| 대용량 이미지 처리 | ✅ 효율적 | ❌ 느림 |
| 실시간 처리 | ✅ 최적화됨 (카메라, 영상 분석) | ❌ 느림 |
💡 OpenCV는 속도가 빠르고 실시간 영상 처리에 최적화되어 있다!
| 기능 | OpenCV (cv2) | 기본 이미지 처리 |
|---|---|---|
| 이미지 읽기 & 저장 | ✅ 지원 | ✅ 지원 |
| 색상 변환 (BGR ↔ RGB, HSV 등) | ✅ 강력함 | ❌ 기본 지원 X |
| 이미지 필터 (Blur, Edge Detection) | ✅ 강력함 | ❌ 기본 지원 X |
| 객체 검출 (Face, Object Detection) | ✅ 가능 | ❌ 직접 구현해야 함 |
| 딥러닝 모델 사용 (DNN, YOLO, SSD) | ✅ 가능 | ❌ 지원 안 됨 |
| 실시간 영상 분석 | ✅ 빠름 | ❌ 비효율적 |
matplotlib.imshow() 사용)