白黒のRGB24bit(8*3)のPNGファイルを読み込んで、そのすべてのピクセル(座標x,y)をチェックして、もしそのピクセルの色が白だったら、point[x][y] = 1、それ以外なら0を代入したいのですが、
Mat img = imread(filename, 0);
for(int y = 0; y < img.rows; y++){
for(int x = 0; x < img.cols; x++){
ここをどのように書けばいいのか分かりません。
img.data + img.step*x + y*img.elemSize() で、要素の一つ一つにアクセスできると思うのですが、ここから、いったいどのようにしたらいいのでしょうか?
}
}
よろしくお願いします。
OpenCVで画素に直接アクセスして色を取得する方法
Re:OpenCVで画素に直接アクセスして色を取得する方法
こんなんありました↓
http://opencv.jp/
for(int y=0; y<height; ++y) {
for(int x=0; x<width; ++x) {
int a = hsv_img.step*y+(x*3);
hsv_img.data[a+0] = (x*180/width);
hsv_img.data[a+1] = 255;
hsv_img.data[a+2] = ((height-y)*255/height);
}
}
(OpenCV使ったことないので的外れかもしれません)
http://opencv.jp/
for(int y=0; y<height; ++y) {
for(int x=0; x<width; ++x) {
int a = hsv_img.step*y+(x*3);
hsv_img.data[a+0] = (x*180/width);
hsv_img.data[a+1] = 255;
hsv_img.data[a+2] = ((height-y)*255/height);
}
}
(OpenCV使ったことないので的外れかもしれません)
