尝试在Windows上使用CMAKEconfigurationOpenCV时出现以下错误:
CMake Warning at cmake/OpenCVUtils.cmake:865 (message): Download: Local copy of opencv_ffmpeg.dll has invalid MD5 hash: d41d8cd98f00b204e9800998ecf8427e (expected: 89c783eee1c47bfc733f08334ec2e31c) Call Stack (most recent call first): 3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download) cmake/OpenCVFindLibsVideo.cmake:193 (include) CMakeLists.txt:527 (include) Downloading opencv_ffmpeg.dll... CMake Error at cmake/OpenCVUtils.cmake:888 (file): file DOWNLOAD MD5 mismatch for file: [C:/research/opencv300/sources/3rdparty/ffmpeg/downloads/89c783eee1c47bfc733f08334ec2e31c/opencv_ffmpeg.dll] expected MD5 sum: [89c783eee1c47bfc733f08334ec2e31c] actual MD5 sum: [d41d8cd98f00b204e9800998ecf8427e] Call Stack (most recent call first): 3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download) cmake/OpenCVFindLibsVideo.cmake:193 (include) CMakeLists.txt:527 (include) CMake Error at cmake/OpenCVUtils.cmake:892 (message): Failed to download opencv_ffmpeg.dll. Status=1;"unsupported protocol" Call Stack (most recent call first): 3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download) cmake/OpenCVFindLibsVideo.cmake:193 (include) CMakeLists.txt:527 (include) Configuring incomplete, errors occurred!
我尝试手动下载opencv_ffmpeg.dll,但configuration过程不起作用。
你能帮我吗,如何解决?
最近与opencv 3.1.0有同样的问题。 通过使用opencv提取的./build/bin目录下相应的dll来解决这个问题。 至于ffmpeg_version.cmake ,从给出的链接中抓取它。 替换./sources/3rd party / ffmpeg下的文件,然后重新配置cmake。
您必须将文件复制到源文件夹中 ,您要从中创建。
那么就是我的情况
C:\opencv_source\3rdparty\ffmpeg\downloads\35fe6ccdda6d7a04e9056b0d73b98e76 C:\opencv_source\3rdparty\ffmpeg\downloads\89c783eee1c47bfc733f08334ec2e31c C:\opencv_source\3rdparty\ffmpeg\downloads\8606f947a780071f8fcce8cbf39ceef5
它们以相同的顺序包含这些文件
opencv_ffmpeg_64.dll opencv_ffmpeg.dll ffmpeg_version.cmake
查看文件ffmpeg_cmake CMake期望的md5-hash作为文件夹标签
Iam遇到同样的问题。 在我看来,这是通过我们的公司网络和代理服务器的问题。
所以我试图从家里手动下载文件,并把它放在我的USB闪存驱动器上。 请查看您的OpenCV源代码路径。 在那里你可以找到一个像…
“… \的3rdParty \ ffmpeg的\下载\ HASH \ opencv_ffmpeg.dll”
CMake尝试下载文件,但不能通过代理,所以文件是0 Byte和md5校验和失败。
在“… \ OpenCV_SOURCE_FOLDER \ 3rdparty \ ffmpeg”中,您可以找到一个名为“ffmpeg.cmake”的CMake尝试从URL下载的URL。 在我的情况下,我从下面的URL下载文件:
您的校验和参数可能不同(可能取决于您的OpenCV版本)! 您可能需要对“opencv_ffmpeg_64.dll”和“ffmpeg_version.cmake”执行相同的操作。
最好的祝福
我有同样的问题; 当我切换到Ubuntu时,我再也没有这个问题了。 也许你可以改变你的操作系统?
校验和错误发生是因为它是软件包中的一个问题,文件可能不在目录中,但是openCV会在这个过程中下载它,只要确保你连接到互联网而不使用VPN或代理,因为它会得到被防火墙阻止。