gpt4 book ai didi

android - 检测图像是否是使用前置摄像头拍摄的

转载 作者:太空狗 更新时间:2023-10-29 14:10:12 24 4
gpt4 key购买 nike

我有一个 Android 应用程序,允许用户使用他们的相机上传个人资料照片。问题是,当用户使用前置摄像头拍照时,存储在手机上的图像是镜像的。

我能够将图像镜像回其原始状态,但是我无法专门对前置摄像头图片执行翻转。

有没有办法判断照片是否是使用前置摄像头拍摄的?

这是我用来获取图片的一些代码

final boolean isCamera;
if (data == null) {
isCamera = true;
} else {
final String action = data.getAction();
if (action == null) {
isCamera = false;
} else {
isCamera = action.equals(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
}
}

Uri selectedImageUri;
if (isCamera) {
selectedImageUri = outputFileUri;
} else {
selectedImageUri = (data == null) ? null : data.getData();
}
Bitmap selectedBitmap;

// Check if the url is not null
if (selectedImageUri != null) {
// store the new bitmap
selectedBitmap = BitmapFactory.decodeFile(outputFileUri.getEncodedPath());
int i = ExifInterface.ORIENTATION_FLIP_HORIZONTAL;

// if camera and front facing flip
// HERE IS WHERE I NEED HELP
if(isCamera && selectedBitmap != null){
selectedBitmap = UtilsLibrary.flip(selectedBitmap);
FileOutputStream out = null;
try {

out = new FileOutputStream(selectedImageUri.getEncodedPath());
selectedBitmap.compress(Bitmap.CompressFormat.PNG, 100, out);

} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (out != null) {
out.flush();
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}

}
}
cropImage(selectedImageUri);

非常感谢任何帮助,谢谢。

最佳答案

试试下面的代码:

CameraInfo cameraInfo = new CameraInfo();
if (cameraInfo.facing == CameraInfo.CAMERA_FACING_FRONT) {
// do your logic
}

关于android - 检测图像是否是使用前置摄像头拍摄的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29617735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com