如何使用带有arcore的Android获取以mm为单位的真实图片尺寸
Posted
技术标签:
【中文标题】如何使用带有arcore的Android获取以mm为单位的真实图片尺寸【英文标题】:How to get the real picture size in mm using Android with arcore 【发布时间】:2022-01-21 19:12:42 【问题描述】:我想用android中的arcore将图片的宽高以像素为单位转换为毫米,我该怎么做呢?
【问题讨论】:
【参考方案1】:试试这个,
fun getImageWidthAndHeight(context: Context, uri: Uri): Pair<Float, Float>
val exif = try
context.contentResolver.openInputStream(uri)?.let
ExifInterface(it)
?: return 0f to 0f
catch (e: FileNotFoundException)
return 0f to 0f
val width = exif.getAttributeInt(ExifInterface.TAG_IMAGE_WIDTH, 0).toFloat()
val height = exif.getAttributeInt(ExifInterface.TAG_IMAGE_LENGTH, 0).toFloat()
return when (
exif.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_NORMAL)
)
ExifInterface.ORIENTATION_ROTATE_90, ExifInterface.ORIENTATION_ROTATE_270 -> height to width
else -> width to height
...
val (width, height) = getImageWidthAndHeight(context, uri)
【讨论】:
以上是关于如何使用带有arcore的Android获取以mm为单位的真实图片尺寸的主要内容,如果未能解决你的问题,请参考以下文章
我的Android进阶之旅如何在Android中使用ARCore来增强人脸Augmented Faces?
检测带有 ARCore 的点击事件是不是击中了已添加的 3d 对象