2016-06-09 123 views
1

當我試圖將Mat圖像轉換爲位圖時,圖像不會顯示在我的設備中,相反,當我使用Bitmap.Config.RGB_565時,顯示的圖像爲黑色。 這裏是我的代碼:將圖像轉換爲位圖後,圖像不顯示

Mat src = new Mat(bmp.getHeight(), bmp.getWidth(), CvType.CV_8UC1); 
     imgToProcess = Utils.bitmapToMat(bmp, src); 

     Bitmap bmpOut = Bitmap.createBitmap(imgToProcess.cols(), imgToProcess.rows(), Bitmap.Config.ARGB_8888); 
     Utils.matToBitmap(imgToProcess, bmpOut); 
     imv.setImageBitmap(bmpOut); 
     rotateImage(bmpOut); 

回答

0

matToBitmap被稱爲是馬車。作爲一種變通方法,嘗試轉換爲位圖之前,你的圖像轉換成不同的色彩空間:

Imgproc.cvtColor(imgToProcess, result, Imgproc. COLOR_GRAY2BGRA); 
bmp = Bitmap.createBitmap(result.cols(), result.rows(), Bitmap.Config.ARGB_8888); 
Utils.matToBitmap(result, bmp); 

參閱相關的問題Correct way to convert between Bitmap and Mat in OpenCV on Android?

+0

我試着將它轉換成不同的色彩空間,但應用程序停止工作。 –