문제 설명
Windows에서 OpenCV 2.4를 사용할 때 다음 코드는 예상대로 작동합니다.
그러나 다음 코드를 사용하여 비디오 파일에서 프레임을 캡처하려고 하면
파일 경로가 올바르고 유효하더라도 지속적으로 False를 반환합니다. 이 문제는 Windows XP와 Windows 7 시스템 모두에서 관찰되었지만 Linux(Ubuntu)에서는 동일한 코드가 완벽하게 작동합니다.
<code class="python">cap = cv2.VideoCapture(0)
print(cap.grab())</code>
로그인 후 복사
해결책
이 문제를 해결하려면 다음 사항을 확인해야 합니다. 비디오 디코딩에 필요한 종속성은 Windows의 OpenCV에서 사용할 수 있습니다. Windows PATH 환경 변수에 다음 디렉터리를 추가하면 됩니다.
<code class="python">cap = cv2.VideoCapture(filename)
print(cap.grab())</code>
로그인 후 복사
또는 지정된 디렉터리에서 opencv_ffmpeg.dll 파일을 다음 위치 중 하나로 수동으로 복사할 수 있습니다.
C:Python27
C:\OpenCVrdparty\ffmpeg\
로그인 후 복사
PATH 환경 변수에 포함된 모든 디렉터리
또한 사용자 환경에 따라 opencv_ffmpeg.dll 파일의 이름을 바꿔야 할 수도 있습니다. OpenCV 버전 및 운영 체제(64비트 또는 32비트) 이름 바꾸기에 대한 지침은 다음과 같습니다.-
- OpenCV 버전 X.Y.Z의 경우
opencv_ffmpeg.dll ==> opencv_ffmpegXYZ.dll
64비트 OpenCV 버전 X.Y.Z의 경우
opencv_ffmpeg.dll ==> opencv_ffmpegXYZ_64.dll
이 단계를 수행하면 OpenCV 2.4를 활성화하여 Windows 시스템의 비디오 파일에서 프레임을 성공적으로 캡처하고 처리할 수 있습니다.
위 내용은 Windows에서 OpenCV 2.4를 사용하여 비디오 파일에서 프레임을 검색할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!