openCVでwebcamを使用しようとすると"Corrupt JPEG data: 1 extraneous bytes before marker 0xd0"という警告が連続で出る
はじめに
Ubuntuでwebカメラを使ったプログラムを動かす際、実行は出来るのですがコンソールに"Corrupt JPEG data: 1 extraneous bytes before marker 0xd0"という警告が連続で表示され、非常に邪魔だったので解決法を探してみました。
環境
ubuntu 18.04
openCV 3.3
webcam1 Logicool webcam C310n HD 720p
参考
corrupt JPEG data: # extraneous bytes before marker 0x## · Issue #9477 · opencv/opencv · GitHub
解決策
どうやらopencvのlibjpegのバグが原因らしいです。
正直ビルドとかよくわからない(c++ほぼ初心者)ので、とりあえずこの解決策は置いといて別の原因を探してみました。
別のwebcamをいくつか試したところ、ほかのカメラでは警告なく実行することができました。どうやらwebcamのなんらかの形式とcvの設定でずれがあり、数byteの損失が起きているっぽい?
別にwebcamにこだわりはなかったので、別のものに変えてその場しのぎの解決。
あとがき
当ブログ、あいさつ以外の初投稿でした。初がこんなんでいいのかなぁ、、、