高密度オプティカル フローを使用して、画像の複雑なワープを実行しようとしています。2 番目の画像を最初の画像とほぼ同じ形状にワープしようとしています。
cv::Mat flow;
cv::calcOpticalFlowFarneback( mGrayFrame1, mGrayFrame2, flow, 0.5, 3, 15, 3, 5, 1.2, 0 );
cv::Mat newFrame = cv::Mat::zeros( frame.rows, frame.cols, frame.type() );
cv:remap( frame, newFrame, flow, cv::Mat(), CV_INTER_LINEAR );
2 つのグレースケール フレームからフローを計算します。関数を使用して、このフロー情報を使用して、元の (つまり、グレースケールではない) イメージを再マップしようとしていcv::remap
ます。しかし、私はそれから非常にひどく歪んだイメージを取得します。元の画像に少し似たオレンジと黒の画像になります。
cv::remap
計算されたを使用するにはどうすればよいflow
ですか?