web-dev-qa-db-ja.com

OpenCV 3.0.0の「構成」が失敗し、ffmpegがダウンロードされない

WindowsでCMAKEを使用してOpenCVを構成しようとすると、次のエラーが発生します。

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を手動でダウンロードしようとしましたが、構成プロセスが機能しませんでした。

それを修正する方法を教えてもらえますか?

10
S.H

最近opencv3.1.0でも同じ問題が発生しました。 opencv抽出の./ build/binディレクトリから対応するdllを使用して、状況を解決しました。 ffmpeg_version.cmake については、指定されたリンクから取得しました。 。/sources/3rd party/ffmpegの下のファイルを置き換えてから、cmakeを再構成します。

3
jamalin

ファイルをソースフォルダーにコピーする必要があります。ここからビルドします。

私の場合はそうです

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として期待するもの-フォルダラベルとしてのハッシュ

2
Richard_Mohana

Iamは同じ問題に直面しています。私の意見では、それは当社のネットワークとプロキシサーバーを介した問題です。

そこで、自宅から手動でファイルをダウンロードして、USBフラッシュドライブに入れようとしました。 OpenCVソースパスを調べてください。そこにあなたは次のような構造を見つけることができます...

"...\3rdparty\ffmpeg\downloads\HASH\opencv_ffmpeg.dll"

CMakeはファイルをダウンロードしようとしますが、プロキシを通過できないため、ファイルは0バイトであり、md5チェックサムは失敗します。

「...\OpenCV_SOURCE_FOLDER\3rdparty\ffmpeg」には、CMakeがダウンロードしようとしているURLを含む「ffmpeg.cmake」という名前のメイクファイルがあります。私の場合、次のURLからファイルをダウンロードしました。

https://raw.githubusercontent.com/Itseez/opencv_3rdparty/89c783eee1c47bfc733f08334ec2e31c/ffmpeg/opencv_ffmpeg.dll

チェックサムパラメータは異なる可能性があります(おそらくOpenCVのバージョンによって異なります)。 「opencv_ffmpeg_64.dll」と「ffmpeg_version.cmake」についても同じことをしなければならない可能性があります。

宜しくお願いします

1
Richard Mohana

私も同じ問題を抱えていました。 Ubuntuに切り替えたとき、この問題はもう発生していません。たぶんあなたはあなたのOSを変えることができますか?

0
black

チェックサムエラーは、ソフトウェアパッケージの問題であり、ファイルがディレクトリにない可能性があるために発生しますが、openCVはその過程でダウンロードします。VPNやプロキシを使用せずにインターネットに接続していることを確認してください。ファイアウォールによってブロックされています。

0