【问题标题】:Android CameraX cropping media.Image?Android CameraX 裁剪 media.Image?
【发布时间】:2020-11-21 06:44:15
【问题描述】:

我正在使用 CameraX 捕获图像,然后输入 mlkit 扫描仪以扫描条形码,我创建了一个裁剪矩形并应用于 media.image 但它似乎没有裁剪框架...

@androidx.camera.core.ExperimentalGetImage
override fun analyze(imageProxy: ImageProxy) {
    imageProxy.image ?. let {

        val rotationDegrees = imageProxy.imageInfo.rotationDegrees
        val imageHeight = it.height
        val imageWidth = it.width

        val cropRect = Rect(0, 0, imageWidth, imageHeight)
        cropRect.inset(
            (imageWidth/ 2),
            (imageHeight/ 2)
        )

        it.cropRect = cropRect

        val image = InputImage.fromMediaImage(it, imageProxy.imageInfo.rotationDegrees)
    }
}

我尝试将输入到扫描仪的 media.Image 保存为位图,但也没有裁剪。让我知道我做错了什么。

我检查了这个答案,但它是用位图解释的,我正在使用 media.Image

Android: How to crop images using CameraX?

【问题讨论】:

标签: java android kotlin android-camerax google-mlkit


【解决方案1】:

ImageProxy.setCropRect() 只是与图像一起传递的元数据,图像的使用者在访问像素时应用裁剪矩形。 ImageProxy.setCropRect() 不会影响底层 android.media.Image 的裁剪矩形,它只会更改 ImageProxy 实例的裁剪矩形元数据。

【讨论】:

  • 那么,这对TextRecognizer 之类的东西没用吗?似乎他们不尊重作物直角......
猜你喜欢
  • 1970-01-01
  • 2023-01-18
  • 1970-01-01
  • 2015-02-02
  • 2012-10-21
  • 2012-01-16
  • 2013-07-01
  • 2015-12-11
  • 2016-02-16
相关资源
最近更新 更多