一部のコードを古い Opencv から C++ バージョンに変換しましたが、行列の乗算でエラーが発生しました。
OpenCV Error: Sizes of input arguments do not match (The operation is neither
'array op array' (where arrays have the same size and the same number of channels),
nor 'array op scalar', nor 'scalar op array')
Web では、このエラーは異なる数のチャンネルを持つことに関連しているようです - 私のチャンネルはすべて 1 です。
私が違うと思ったのは「ステップ」です.1つは24、もう1つは32です.
このステップはどこですか?
を使用して両方の入力行列を作成しました
cv::Mat YYY(3, 4, CV_64FC1); // step 32
cv::Mat XXX(3, 3, CV_64FC1); // step 24
それでも、彼らは異なるステップを持っているようですか?
これが のエラーの原因cv::multiply(XXX,YYY, DDD);
でしょうか?
異なるタイプ間で操作 (マスクなど) を実行することはできませんか?
ありがとうございました