2
私は現在、ビデオセグメンテーションのプログラムをC++で作成しており、opencvを使用してフレーム単位でビデオフレームを読み込みたいと考えていました。 かなりうまく動作しているように見えましたが、画像を読み込んだり(書き込んだり)、少し変化がありました。 画像を読み書きする私のコードは、(私は通常、作成した画像行列で働き続けるが)以下の本質的である:OpenCV readビデオ/圧縮/変更のない画像
Videocapture cap = VideoCapture(filename);
int counter = 0;
while(1) {
Mat tmp;
cap >> tmp;
if(tmp.empty()) {
//cout << "scanned all frames" << endl;
break;
}
//save frames as jpeg
stringstream filename;
filename << "original" << counter;
counter++;
}
、このコードは非常にうまく動作しますが、色でいくつかのマイナーな変更が行われます私は排除したいと思っています。 これは(ズームイン)元画像です: https://picload.org/image/rdddagor/source.png
これは、作成されたもの(また、ズームアップ)である: https://picload.org/image/rdddagir/opencv.png
は、元の画質を維持する方法はありますか?
イメージをjpegで保存していますか? – Miki
ああ、そうです。愚かな私。 残念ながら、私のコードのどこかにエラーがありますが(この質問との関係は何もありません)。 ご協力いただきありがとうございます! – NilusvanEdel