Создание Android приложений становится все более популярным среди разработчиков и тех, кто хочет превратить свои идеи в реальность. Одной из самых интересных и полезных функций для мобильных приложений является распознавание текста. Это может быть полезно для сканирования и распознавания текста с фотографий, считывания QR-кодов, а также для множества других приложений.
В этой статье мы рассмотрим, как создать Android приложение для распознавания текста с использованием Mobile Vision CodeLab. Это простой и быстрый способ добавить функцию распознавания текста в ваше приложение всего за 10 минут.
Шаг 1: Создание нового проекта Сначала давайте создадим новый проект Android в Android Studio. Затем добавим необходимые зависимости в файл build.gradle.
Шаг 2: Подключение библиотеки Mobile Vision Mobile Vision предоставляет API для распознавания текста, лиц, штрих-кодов и других функций компьютерного зрения. Для нашего приложения нам понадобится только библиотека для распознавания текста. Добавим следующую зависимость в файл build.gradle:
gradleCopy codedependencies { implementation 'com.google.android.gms:play-services-vision:20.1.3' }
Шаг 3: Добавление разрешений Для использования камеры и доступа к фотографиям, нам нужно добавить соответствующие разрешения в файл AndroidManifest.xml:
xmlCopy code<uses-permission android:name="android.permission.CAMERA"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Шаг 4: Создание пользовательского интерфейса Теперь создадим простой пользовательский интерфейс для нашего приложения. Мы добавим кнопку для считывания текста с фотографии и поле для вывода распознанного текста.
Шаг 5: Написание кода Теперь давайте перейдем к написанию кода. Сначала нам нужно инициализировать библиотеку Mobile Vision в нашем приложении. Для этого добавим следующий код в метод onCreate:
javaCopy codeTextRecognizer textRecognizer = new TextRecognizer.Builder(getApplicationContext()).build(); if (!textRecognizer.isOperational()) { Log.w(TAG, "Detector dependencies are not yet available."); } else { // Здесь будет код для обработки текста }
Далее нам нужно обработать фотографию и распознать текст. Для этого добавим код для открытия камеры и получения фотографии:
javaCopy codeprivate void dispatchTakePictureIntent() { Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (takePictureIntent.resolveActivity(getPackageManager()) != null) { startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE); } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { Bundle extras = data.getExtras(); Bitmap imageBitmap = (Bitmap) extras.get("data"); processImage(imageBitmap); } }
Теперь давайте опишем метод processImage, который будет обрабатывать фотографию и распознавать текст:
javaCopy codeprivate void processImage(Bitmap imageBitmap) { if (imageBitmap != null) { Frame frame = new Frame.Builder().setBitmap(imageBitmap).build(); SparseArray<TextBlock> textBlocks = textRecognizer.detect(frame); StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < textBlocks.size(); i++) { TextBlock textBlock = textBlocks.valueAt(i); stringBuilder.append(textBlock.getValue()); stringBuilder.append("\n"); } // Выводим распознанный текст textView.setText(stringBuilder.toString()); } }
Шаг 6: Тестирование приложения Теперь, когда у нас есть полностью функционирующее приложение, давайте протестируем его. Запустите приложение на своем устройстве или эмуляторе, нажмите на кнопку "Сфотографировать", сделайте фотографию с текстом и дождитесь, пока приложение распознает текст и выведет его на экран.
Вот и всё! Теперь у вас есть простое Android приложение для распознавания текста с помощью Mobile Vision CodeLab. Это быстро и просто, и вы можете легко добавить эту функцию в свои собственные проекты.
-
Ханука
19 Oct, 24 -
Рассказы О Шифрах Шекспира, Часть 1
19 Oct, 24