バイナリ イメージ (cv::Mat) 内のゼロ以外のすべてのピクセルの位置を見つけるにはどうすればよいですか? 画像内のすべてのピクセルをスキャンする必要がありますか、または使用できる高レベルの OpenCV 関数はありますか? 出力はポイント (ピクセル位置) のベクトルである必要があります。
たとえば、これは Matlab で次のように簡単に実行できます。
imstats = regionprops(binary_image, 'PixelList');
locations = imstats.PixelList;
または、さらに単純な
[x, y] = find(binary_image);
locations = [x, y];
編集:つまり、cv::Mat のすべての非ゼロ要素の座標を見つける方法は?