我们可以使用Firebase ML Kit中的TextRecognizer来处理这个问题。以下是代码示例:
private void recognizeTextFromImage(Bitmap bitmap) {
FirebaseVisionImage image = FirebaseVisionImage.fromBitmap(bitmap);
FirebaseVisionTextRecognizer recognizer = FirebaseVision.getInstance().getOnDeviceTextRecognizer();
recognizer.processImage(image)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(FirebaseVisionText firebaseVisionText) {
String resultText = firebaseVisionText.getText();
Log.d(TAG, "Recognized text: " + resultText);
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e(TAG, "Error occurred while recognizing text: ", e);
}
});
}
您可以将整个图像(不是裁剪后的部分)传递给上面的代码中recognizeTextFromImage(Bitmap bitmap)
方法。该方法将返回一个包含在整个图像中识别到的所有文本的字符串(而不是仅在裁剪后的图像中识别到的文本)。