Я пытаюсь определить текст из изображений с помощью Google Vision, и я успешно интегрировал это, и все работает. Единственная проблема, с которой я сталкиваюсь, - это когда я фотографирую что-то, на нем отображается текст, но если я пытаюсь сделать новый снимок, он также показывает информацию с предыдущего изображения. Я хотел бы, чтобы текущая информация была показана.
//gets data for user image selected..
@Override
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == GALLERY_PICK && resultCode == RESULT_OK && data != null) {
selectedImageUri = data.getData();
}
if (requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE) {
CropImage.ActivityResult result = CropImage.getActivityResult(data);
if (resultCode == RESULT_OK) {
selectedImageUri = result.getUri();
// Glide
// .with(getApplicationContext())
// .load(selectedImageUri)
// .into(imageView);
Bitmap bitmap = null;
try {
bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), selectedImageUri);
} catch (IOException e) {
e.printStackTrace();
}
Frame imageFrame = new Frame.Builder()
.setBitmap(bitmap) // your image bitmap
.build();
String imageText = "";
textBlocks = textRecognizer.detect(imageFrame);
for (int i = 0; i < textBlocks.size(); i++) {
//textblock is a sparse array..
TextBlock textBlock = textBlocks.get(textBlocks.keyAt(i));
resultsString.append(textBlock.getValue());
}
resultTv.setText(resultsString);
}
}