这段代码用于工作,但在
Android 4.2和OpenCV 2.4.4它失败,但我不知道为什么.任何人都可以为我散发任何光吗?
感谢任何帮助.
巴兹
public void SaveImage (Mat mat) { Mat mIntermediateMat = new Mat(); Imgproc.cvtColor(mRgba,mIntermediateMat,Imgproc.COLOR_RGBA2BGR,3); File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES); String filename = "barry.png"; File file = new File(path,filename); Boolean bool = null; filename = file.toString(); bool = Highgui.imwrite(filename,mIntermediateMat); if (bool == true) Log.d(TAG,"SUCCESS writing image to external storage"); else Log.d(TAG,"Fail writing image to external storage"); }
布鲁尔每次回来都是假的.文件路径/名称应该为用户#0应该是(“存储/仿真/ 0 /图片/ barry.png”),目录图片在那里.
什么可以使imwrite返回false?
我可以把mat转换成一个bmp并自己保存(我在非OpenCV应用程序中的其他地方),但是由于Highgui.imwrite在那里,并且当我写入2.4.0并在Android上测试时,这个代码用于工作3.x,我想用它,如果可以的话.
非常感谢
巴兹