如何用物体的真实比例绘制矩形?
How to draw a rectangle with the real scale of the object?
我正在使用 MLKit 库进行条码扫描,因此我可以获得一个矩形,其中实际上是条码。但是我得到一个比条形码小的矩形,而且它不在正确的位置。所以,矩形的比例和位置是错误的。
有谁知道如何解决这个问题吗?有没有什么方法可以用真实的尺寸重新缩放和重新定位矩形?
谢谢:)
这是我的代码:
override fun analyze(image: ImageProxy) {
val img = image.image
if (img != null) {
val inputImage = InputImage.fromMediaImage(img, image.imageInfo.rotationDegrees)
val scanner = BarcodeScanning.getClient()
scanner.process(inputImage)
.addOnSuccessListener { barcodes ->
for (barcode in barcodes) {
val myRect = barcode.boundingBox
// here I draw the rectangle with canvas and paint
// ...
canvas.drawRect(myRect, mPaint)
// Finish editing pixels in the surface.
mHolder.unlockCanvasAndPost(canvas)
}
}
}
}
您可以查看 ML Kit sample which contains the CameraX scenario or check here 以了解有关坐标变换的更多信息。
我正在使用 MLKit 库进行条码扫描,因此我可以获得一个矩形,其中实际上是条码。但是我得到一个比条形码小的矩形,而且它不在正确的位置。所以,矩形的比例和位置是错误的。
有谁知道如何解决这个问题吗?有没有什么方法可以用真实的尺寸重新缩放和重新定位矩形?
谢谢:)
这是我的代码:
override fun analyze(image: ImageProxy) {
val img = image.image
if (img != null) {
val inputImage = InputImage.fromMediaImage(img, image.imageInfo.rotationDegrees)
val scanner = BarcodeScanning.getClient()
scanner.process(inputImage)
.addOnSuccessListener { barcodes ->
for (barcode in barcodes) {
val myRect = barcode.boundingBox
// here I draw the rectangle with canvas and paint
// ...
canvas.drawRect(myRect, mPaint)
// Finish editing pixels in the surface.
mHolder.unlockCanvasAndPost(canvas)
}
}
}
}
您可以查看 ML Kit sample which contains the CameraX scenario or check here 以了解有关坐标变换的更多信息。