我创建的Android应用程序需要扫描图像并从中提取文本。
为此,我使用Firebase ML工具包。
在我的应用程序中/build.gradle公司:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.google.android.material:material:1.2.0-alpha03'
implementation 'com.google.android.gms:play-services-maps:17.0.0'
implementation "com.otaliastudios:cameraview:2.5.0"
implementation('com.crashlytics.sdk.android:crashlytics:2.10.1@aar') { transitive = true; }
implementation 'com.google.firebase:firebase-ml-vision:24.0.1'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.synnapps:carouselview:0.1.4'
implementation 'androidx.appcompat:appcompat:1.1.0'
import android.Manifest
import android.content.DialogInterface
import android.content.Intent
import android.graphics.Bitmap
import android.os.Bundle
import android.widget.Toast
import androidx.databinding.DataBindingUtil
import com.google.firebase.ml.vision.FirebaseVision
import com.google.firebase.ml.vision.common.FirebaseVisionImage
import com.google.firebase.ml.vision.text.FirebaseVisionText
private fun runDetector(bitmap: Bitmap?) {
val image = FirebaseVisionImage.fromBitmap(bitmap!!)
val detector = FirebaseVision.getInstance().onDeviceTextRecognizer
val result = detector.processImage(image)
.addOnSuccessListener { firebaseVisionText ->
processTextResult(firebaseVisionText)
}
.addOnFailureListener { e ->
}
}
private fun processTextResult(firebaseVisionText: FirebaseVisionText) {
var detectedText = "\n"
firebaseVisionText.textBlocks.forEach {
detectedText += it.text + "\n"
}
Debug.d(TAG, "processTextResult: detectedText_start\n")
Debug.d(TAG, detectedText)
Debug.d(TAG, "processTextResult: detectedText_end")
这里是扫描3次后的结果相同的图像(带文本):
-
“某个公司的名字
O081操作器U1
拿铁
17.00摄氏度
17.00摄氏度
1.000 X 17,00倍
1.060 X 3.08英寸
拿铁
滴滴涕
37.00美元
TVA C 10.00%
数字
37个
.00点
803艺术
穆图米姆!!!
15: 14个
BON F ISCAL:0131号
长官。
N个
F702822971“层
2。
"some company name
C.F
C
F
9881
Latte
1111111111111
Operator 81
1.000 X 17.00
1,008 X 17.00
17.00 C
17.00 C
3.00 C
Latte
apte
1.060 X 3.08
31.86
UIAL
TVA C 10.00%
NUMERAR
B. .36
,00
ART
37
883
MUL TUMIM !
15:14
103654
BON FISCAL: 6131
23-12-2819
ZKO0682347
Ser.N
N.Inr
F782022971"
-
F型
1111111111
o01操作员81
乐天
1.008 X 17.00米
17.00摄氏度
3.00摄氏度
拿铁
阿普特
0AL公司
努梅拉尔
37.00美元
-
.36条
.00点
803艺术
VA C 10.00%
37个
103654个
15: 14个
BON F ISCAL:0131号
中科0602347
序列号
每次扫描后你都能看到
我得到了不同的结果。
问题: