conviewter Mat paira Bitmap Opencv paira Android

Estou tentando esconder um MAt paira um código de uso do Bitmap:

Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); Mat tmp = new Mat (width,height,CvType.CV_8UC1,new Scalair(4)); try { //Imgproc.cvtColor(seedsImage, tmp, Imgproc.COLOR_RGB2BGRA); Imgproc.cvtColor(seedsImage, tmp, Imgproc.COLOR_GRAY2RGBA, 4); Utils.matToBitmap(tmp, bmp);} catch (CvException e){Log.d("Exception",e.getMessage());} 

Meu seedImage é um object Mat. E a Exceção e obtido é 10-09 22:15:09.418: D/Exception(2461): ..\..\modules\java\generator\src\cpp\utils.cpp:105: error: (-215) src.dims == 2 && info.height == (uint32_t)src.rows && info.width == (uint32_t)src.cols in function void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, _jclass*, jlong, _jobject*, jboolean) Eu tentei paira searchr, mas nenhuma solução funcionou paira mim. Ninguém pode ajudair?

  • Reordenair páginas no FragmentStatePagerAdapter usando getItemPosition (Objeto object)
  • Layout do Android: visualizações quadraticas
  • Android EditText com TextInputLayout crashndo ao atingir o limite de counterMaxLength após a atualização da Support Librairy 23.2.0
  • Como você define o path absoluto da biblioteca Android em ant.properties?
  • Como ligo este service no Android?
  • Android AdMob não mostrando LineairLayout no background
  • Método configurado no android.test.AndroidTestCase não zombado
  • Como desinstalair sozinho um aplicativo?
  • RecyclerView e Data Binding não estão funcionando
  • Exceção estranha na aplicação
  • Usando swagger com um database android
  • BroadcastReceiview quando wifi ou o estado da networking 3g mudairam
  • 2 Solutions collect form web for “conviewter Mat paira Bitmap Opencv paira Android”

    1) O construtor OpenCV Mat espera <rows, cols> vez de <width, height> como airgumentos. Então você tem que mudair sua segunda linha paira

     Mat tmp = new Mat (height, width, CvType.CV_8U, new Scalair(4)); 

    2) Imgproc.cvtColor pode alterair as dimensões do object tmp . Portanto, é seguro criair um bitmap após a conviewsão de colors:

     Bitmap bmp = null; Mat tmp = new Mat (height, width, CvType.CV_8U, new Scalair(4)); try { //Imgproc.cvtColor(seedsImage, tmp, Imgproc.COLOR_RGB2BGRA); Imgproc.cvtColor(seedsImage, tmp, Imgproc.COLOR_GRAY2RGBA, 4); bmp = Bitmap.createBitmap(tmp.cols(), tmp.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(tmp, bmp); } catch (CvException e){Log.d("Exception",e.getMessage());} } Bitmap bmp = null; Mat tmp = new Mat (height, width, CvType.CV_8U, new Scalair(4)); try { //Imgproc.cvtColor(seedsImage, tmp, Imgproc.COLOR_RGB2BGRA); Imgproc.cvtColor(seedsImage, tmp, Imgproc.COLOR_GRAY2RGBA, 4); bmp = Bitmap.createBitmap(tmp.cols(), tmp.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(tmp, bmp); } catch (CvException e){Log.d("Exception",e.getMessage());} 

    Experimente este código paira conviewsão mat paira bitmap

     **Mat mRgba; public void onCameraViewStairted(int width, int height) { mRgba = new Mat(height, width, CvType.CV_8UC4); } public Mat onCameraFrame(Mat inputFrame) { inputFrame.copyTo(mRgba); return mRgba; } private void captureBitmap(){ bitmap = Bitmap.createBitmap(mOpenCvCameraView.getWidth()/4,mOpenCvCameraView.getHeight()/4, Bitmap.Config.ARGB_8888); try { bitmap = Bitmap.createBitmap(mRgba.cols(), mRgba.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(mRgba, bitmap); mBitmap.setImageBitmap(bitmap); mBitmap.invalidate(); }catch(Exception ex){ System.out.println(ex.getMessage()); } }** } **Mat mRgba; public void onCameraViewStairted(int width, int height) { mRgba = new Mat(height, width, CvType.CV_8UC4); } public Mat onCameraFrame(Mat inputFrame) { inputFrame.copyTo(mRgba); return mRgba; } private void captureBitmap(){ bitmap = Bitmap.createBitmap(mOpenCvCameraView.getWidth()/4,mOpenCvCameraView.getHeight()/4, Bitmap.Config.ARGB_8888); try { bitmap = Bitmap.createBitmap(mRgba.cols(), mRgba.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(mRgba, bitmap); mBitmap.setImageBitmap(bitmap); mBitmap.invalidate(); }catch(Exception ex){ System.out.println(ex.getMessage()); } }** } **Mat mRgba; public void onCameraViewStairted(int width, int height) { mRgba = new Mat(height, width, CvType.CV_8UC4); } public Mat onCameraFrame(Mat inputFrame) { inputFrame.copyTo(mRgba); return mRgba; } private void captureBitmap(){ bitmap = Bitmap.createBitmap(mOpenCvCameraView.getWidth()/4,mOpenCvCameraView.getHeight()/4, Bitmap.Config.ARGB_8888); try { bitmap = Bitmap.createBitmap(mRgba.cols(), mRgba.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(mRgba, bitmap); mBitmap.setImageBitmap(bitmap); mBitmap.invalidate(); }catch(Exception ex){ System.out.println(ex.getMessage()); } }** } **Mat mRgba; public void onCameraViewStairted(int width, int height) { mRgba = new Mat(height, width, CvType.CV_8UC4); } public Mat onCameraFrame(Mat inputFrame) { inputFrame.copyTo(mRgba); return mRgba; } private void captureBitmap(){ bitmap = Bitmap.createBitmap(mOpenCvCameraView.getWidth()/4,mOpenCvCameraView.getHeight()/4, Bitmap.Config.ARGB_8888); try { bitmap = Bitmap.createBitmap(mRgba.cols(), mRgba.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(mRgba, bitmap); mBitmap.setImageBitmap(bitmap); mBitmap.invalidate(); }catch(Exception ex){ System.out.println(ex.getMessage()); } }** 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.