5
我目前正在嘗試將一些遺留代碼從iPhone遷移到Android。此代碼使用OpenCV庫進行一些圖像處理。 而我不明白如何做Mat和Android位圖類之間的轉換。在Android上OpenCV中的位圖和Mat之間轉換的正確方法?
此代碼顯示了一個非常簡單的示例,它將一個位圖加載到Mat中,然後將其轉換回Bitmap。由此產生的圖像看起來很奇怪 - 它充滿了藍色和白色像素。原來是一個正常的PNG圖像...
Mat img = Utils.loadResource(context, resId);
Bitmap tmp = Bitmap.createBitmap(img.rows(), img.cols(),
Bitmap.Config.ARGB_8888);
Utils.matToBitmap(img, tmp);
如何獲得'resId'?我試圖從bmp轉換一個攝像機意圖獲取的圖像到Mat,處理,然後再回來。因此所有關於bmp的信息都是路徑名和bmp本身。 – 2013-01-29 06:10:36
@ user1446598您是否在Android中使用openCV? – greven 2013-02-02 02:57:31
是的。問題解決了 - 我發現了一篇SO帖子,目前我找不到,這有助於程序。我仍然不知道如何從捕獲照片的照片中獲取resID(與可繪製項目不同),但是建議使用路徑名替代。 – 2013-02-09 15:09:57