[PYTHON] 이 OpenCV Python 인터페이스들 사이에 다른 점은 무엇입니까?
PYTHON이 OpenCV Python 인터페이스들 사이에 다른 점은 무엇입니까?
있다
주요 차이점은 무엇이며 어떤 것을 사용해야합니까?
해결법
-
==============================
1.공식적으로 OpenCV는 두 가지 유형의 Python 인터페이스 인 cv와 cv2를 출시합니다.
공식적으로 OpenCV는 두 가지 유형의 Python 인터페이스 인 cv와 cv2를 출시합니다.
CV :
나는 이력서 작업을 시작했다. 이 모든 OpenCV 데이터 형식은 그대로 보존됩니다. 예를 들어,로드 된 이미지의 형식은 cvMat이며 C ++에서와 동일합니다.
배열 연산의 경우 cvSet2D, cvGet2D 등과 같은 여러 함수가 있습니다. 일부 토론에서는 속도가 느립니다.
imageROI에는 cvSetImageROI와 같은 특수 함수가 필요합니다.
등고선을 찾으면 cvSeq 구조체가 반환됩니다.이 구조체는 파이썬리스트 나 NumPy 배열과 비교해서 잘 작동하지 않습니다.
(그리고 나는 곧 개발이 중단 될 것이라고 생각한다. 이전에는 cv 만 있었고 나중에 OpenCV에는 cv와 cv2가 함께 제공되었다. 이제 최신 릴리스에는 cv2 모듈 만 있고 cv는 내부의 서브 클래스이다. cv2로 가져 오기 cv2.cv를 호출하여 cv로 액세스해야합니다.)
CV2 :
그리고 최근의 것은 cv2입니다. 여기서 모든 것은 ndarray와 같은 NumPy 객체와 목록, 튜플, 사전 등과 같은 원시 Python 객체로 반환됩니다. 따라서이 NumPy 지원으로 인해 여기에서 아무런 작업도 수행 할 수 없습니다. NumPy는 매우 안정적이고 빠른 배열 처리 라이브러리입니다.
예를 들어 이미지를로드하면 ndarray가 반환됩니다.
array [i, j]는 (i, j) 위치의 픽셀 값을줍니다.
또한 imageROI의 경우 ROI = array [c1 : c2, r1 : r2]와 같은 배열 슬라이스를 사용할 수 있습니다. 별도의 기능이 필요 없습니다.
두 개의 이미지를 추가하려면 함수를 호출 할 필요가 없습니다. res = img1 + img2를 호출하면됩니다. (하지만 NumPy 추가는 이미지와 같은 uint8 배열의 모듈러스 연산입니다. 자세한 내용은 OpenCV의 행렬 연산과 Numpy의 차이점 문서를 참조하십시오.
반환되는 윤곽선은 Numpy 배열 목록입니다. Contours - 1 : 시작하기의 Contours에 대한 자세한 내용을 확인할 수 있습니다.
간단히 말해서, cv2는 모든 것이 단순하고 매우 빠릅니다.
NumPy가 cv2 속도를 높이는 방법에 대한 간단한 토론 Stack Overflow question OpenCV-Python 인터페이스, cv 및 cv2의 성능 비교.
pyopencv :
나는 그것을 사용하지 않았기 때문에 이것에 대해 많이 알지 못합니다. 그러나 그것은 더 발전을 멈추는 것처럼 보인다.
나는 공식 도서관에 충실하는 것이 더 낫다고 생각한다.
간단히 말해, 나는 cv2를 사용하는 것이 좋습니다!
편집 : Windows 용 Python 용 OpenCV 설치에서 cv2 모듈의 설치 절차를 볼 수 있습니다.
from https://stackoverflow.com/questions/10417108/what-is-different-between-all-these-opencv-python-interfaces by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬 소켓은 많은 양의 데이터를받습니다. (0) | 2018.10.06 |
---|---|
[PYTHON] dict의 키와 값을`unicode`에서`str`으로 변환하는 가장 빠른 방법은 무엇입니까? (0) | 2018.10.06 |
[PYTHON] try-except를 사용하지 않고 Python에서 keyboardinterrupt 캡처 (0) | 2018.10.06 |
[PYTHON] 이 사전 목록을 CSV 파일로 변환하려면 어떻게합니까? (0) | 2018.10.06 |
[PYTHON] 파이썬 strftime - 선행 0이없는 날짜? (0) | 2018.10.06 |