В настоящее время у меня возникают трудности с сохранением растровых изображений в Android. Я работаю над системой, которая определяет область глаз человека. У меня есть этот код, который сохраняет ROI на мат в opencv.
Rect eyearea_right = new Rect( RectOfFace.x + RectOfFace.width / 16 ,
(int) (RectOfFace.y + (RectOfFace.height / 4.5)) ,
(RectOfFace.width - 2 * RectOfFace.width / 16) / 2,
(int) (RectOfFace.height / 3.0)
);
ROI = new Mat(mGray, eyearea_left);
Bitmap bm = Bitmap.createBitmap((int) ROI.size().width, (int) ROI.size().height, Bitmap.Config.ARGB_8888);
Однако у меня возникли трудности с сохранением его в памяти телефона. Мне нужно увидеть изображение или растровое изображение, чтобы я знал, как я буду обрабатывать изображение, чтобы определить, закрывает ли человек глаза. Кроме того, есть ли способ распечатать/отобразить растровое изображение, полученное из мата в OpenCV, на экране? Спасибо.
Это код для сохранения, который я нашел в Интернете
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/saved_images");
Log.i("Bitmap", root);
myDir.mkdirs();
int n = i;
String path = Environment.getExternalStorageDirectory().toString();
OutputStream fOut = null;
File file = new File(path, "/saved_images/" + "image" + i + ".jpg");
fOut = new FileOutputStream(file);
bm.compress(Bitmap.CompressFormat.JPEG, 85, fOut);
fOut.flush();
fOut.close();
MediaStore.Images.Media.insertImage(getContentResolver()
, file.getAbsolutePath(), file.getName(), file.getName());