2017-07-30 146 views
0

我想单击按钮时为图像添加canny检测。我不能采取任何例外,但emilator停止工作,不开始。Android Studio Opencv Canny检测

buton2.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View view) { 

     ImageView i = (ImageView) findViewById(R.id.imageView); 

     Bitmap bmp =BitmapFactory.decodeResource(getResources(),R.drawable.ab); 
     Mat srcMat = new Mat (bmp.getHeight(), bmp.getWidth(), CvType.CV_8UC3); 

     Bitmap myBitmap32 = bmp.copy(Bitmap.Config.ARGB_8888, true); 

     Utils.bitmapToMat(myBitmap32, srcMat); 

     Mat gray = new Mat(srcMat.size(), CvType.CV_8UC1); 
     Imgproc.cvtColor(srcMat, gray, Imgproc.COLOR_RGB2GRAY); 
     Mat edge = new Mat(); 
     Mat dst = new Mat(); 
     Imgproc.Canny(gray, edge, 80, 90); 
     Imgproc.cvtColor(edge, dst, Imgproc.COLOR_GRAY2RGBA,4); 
     Bitmap resultBitmap = Bitmap.createBitmap(dst.cols(), dst.rows(),Bitmap.Config.ARGB_8888); 
     Utils.matToBitmap(dst, resultBitmap); 

     i.setImageBitmap(resultBitmap); 
    } 
}); 
+0

你将需要提供特定的错误得到答案 – Mick

+0

代码格式化改善和消除不必要的间距 –

+0

请添加logcat的。 –

回答

0

我OpenCV的3.0.0版本,所以我必须在onCreate方法写 的System.loadLibrary( “opencv_java3”);

所以,解决我的问题