ビデオをフレーム画像に変換したいだけです。
この単純なコードを使用する
import cv2
vidcap = cv2.VideoCapture('gog.mp4')
success,image = vidcap.read()
count = 0
success = True
while success:
success,image = vidcap.read()
print 'Read a new frame: ', success
cv2.imwrite("frame%d.jpg" % count, image)
count += 1
出力は
ストリームを停止できません:デバイスの不適切なioctl
Ubuntuサーバーでpython 2.7.6を使用しています。
Ubuntu 16.04.3でこの問題を解決しました。
Sudo apt-get install ffmpeg
Sudo apt-get install libavcodec-dev libavformat-dev libavdevice-dev
次のコマンドを使用してOpenCV 3.3.0を再構築します。
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_FFMPEG=ON -D WITH_TBB=ON -D WITH_GTK=ON -D WITH_V4L=ON -D WITH_OPENGL=ON -D WITH_CUBLAS=ON -DWITH_QT=OFF -DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..
make -j7
Sudo make install
こんにちは私もこのエラーを取り、このコマンドで解決しました。
Sudo apt-get install libv4l-dev
cmake -DWITH_LIBV4L=ON .. (this is important)
make && Sudo make install
cmakeコマンドでエラーが発生した場合、2番目にpls install cmake gui.Do最初のコマンド:Sudo apt-get install libv4l-dev
cmakeguiプログラムを使用して、CmakeVars.txtファイルでパラメーターを設定できます。 CmakeVars.txtファイル交換WITH_LIBV4L = OFFをWITH_LIBV4L = ONに編集し、make && Sudo make install
コマンドを実行します。このエラーの詳細については、 https://github.com/opencv/opencv/issues/6157 をご覧ください。
JavaでManjaro 17.0.2とOpenCV 3.2.0を使用してもまったく同じ問題が発生しました。 OpenCVの古い実装を削除し、最初からインストールし直しました。これらのパラメーターを使用してcmakeを実行cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_LIBV4L=ON ..
(@emreに感謝)
次に、Cmakeインストールの出力で、Can't find ffmpeg - 'pkg-config' utility is missing
。 pkg-configをインストールし、cmake、makeを再実行して、すべてが機能するようになりました。
私はLinux Mintを使用し、C++でプログラミングしています。 https://stackoverflow.com/a/45893821/11247666 と同じ手順を適用します。これは:
Sudo apt-get install ffmpeg
Sudo apt-get install libavcodec-dev libavformat-dev libavdevice-dev
cd opencv-3.3.0
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_FFMPEG=ON -D WITH_TBB=ON -D WITH_GTK=ON -D WITH_V4L=ON -D WITH_OPENGL=ON -D WITH_CUBLAS=ON -DWITH_QT=OFF -DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..
make -j7
Sudo make install
しかし、この後。問題は解決できませんでした。私はこのエラーがあります:
詳細不明のエラー(関数は実装されていません。Windows、GTK + 2.xまたはCarbonサポートでライブラリを再構築します。UbuntuまたはDebianを使用している場合、libgtk2.0-devおよびpkg-configをインストールしてから、cmakeを再実行するか、スクリプトを構成します)cvNamedWindowで。
以下を適用します
Sudo apt-get install libgtk2.0-dev
Sudo apt-get install pkg-config
この後、同じ手順を適用しました。
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_FFMPEG=ON -D WITH_TBB=ON -D WITH_GTK=ON -D WITH_V4L=ON -D WITH_OPENGL=ON -D WITH_CUBLAS=ON -DWITH_QT=OFF -DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..
make -j7
Sudo make install
上記は私のために働いた。