我正在使用opencv通过opencv将android位图转换为grescale。下面是我正在使用的代码,
IplImage image = IplImage.create( bm.getWidth(), bm.getHeight(), IPL_DEPTH_8U, 4); //creates default image
bm.copyPixelsToBuffer(image.getByteBuffer());
int w=image.width();
int h=image.height();
IplImage grey=cvCreateImage(cvSize(w,h),image.depth(),1);
cvCvtColor(image,grey,CV_RGB2GRAY);
bm 是源图像。此代码工作正常并转换为灰度,我已经通过保存到 sdcard 然后再次加载对其进行了测试,但是当我尝试使用以下方法加载它时,我的应用程序崩溃,任何建议。
bm.copyPixelsFromBuffer(grey.getByteBuffer());
iv1.setImageBitmap(bm);
iv1 是我想设置 bm 的 imageview。