1

Bitmapから取得するAndroidアプリに取り組んでいImageViewます。これBitmapを JavaCVIplImageに変換してから、以下のようにグレースケールに変換します。

IplImage image = IplImage.create(width, height, IPL_DEPTH_8U, 4);
bitmap.copyPixelsToBuffer(image.getByteBuffer());
IplImage _3image = IplImage.create(width, height, IPL_DEPTH_8U, 3);
IplImage _1image = IplImage.create(width, height, IPL_DEPTH_8U, 1);
cvCvtColor(image, _3image, CV_BGRA2BGR);
cvCvtColor(_3image, _1image, CV_RGB2GRAY);

ただし、RuntimeException: Buffer not large enough for pixelsこれを行うと

Bitmap x = Bitmap.createBitmap(width, height, Config.ARGB_8888);            
x.copyPixelsFromBuffer(_1image.getByteBuffer());

どんな助けでも大歓迎です。ありがとうございました。

4

0 に答える 0