この情報の入手先は不明です。グレースケールに変換されたcv :: Matのデータタイプを調べる方法
私は.JPGにロードされ、私はその後、input_image_grayscale->at<float>(row, col)
でピクセルを参照するが、アサーションエラーを取得しようcv::cvtColor(*input_image_grayscale, *input_image_grayscale, CV_BGR2GRAY);
とグレースケールにそれを変換します。これを逆参照するために正しいタイプのデータ(浮動小数点型ではない)をどのようにして決定するのですか?おかげで参考
は、私がinput_image_grayscale->type()
を実行し、種類によって返された値がOpenCVのは、プリプロセッサ定義で宣言されていることをちょうど整数である0
これは私が思ったものですが、intとunsignedの両方を試みると、同じアサーションエラーが返されます。型と深度の両方が返されます。 – zebra
@zebraアサーションエラーが発生している場合は、データの範囲外にあるものにアクセスしようとしていることが原因であると推測しています。 'Mat :: rows'と' Mat :: cols'を使って 'row'と' col.'で有効なピクセルデータにアクセスしてください。 – kappamaki
これは私の最初の仮定ですが、範囲外ではありません。私はCV_8U型だと思うが、私はすべてのデータ型を試しているし、正しく動作していない。私は、、、、すべて同じアサーションエラーを試しました。テスト目的のために、私はピクセル(0、0)にアクセスしようとしています –
zebra