OCR изображения в текст и исправление орфографии в C#

Мы можем выполнять распознавание изображений или отсканированных документов и программно извлекать текстовые данные с помощью C#. Затем мы можем запустить проверку орфографии, чтобы исправить орфографические ошибки в распознанном тексте. В этой статье мы узнаем, как выполнить распознавание изображения в текст и исправление орфографии на C#.

В этой статье должны быть раскрыты следующие темы:

  1. OCR Image to Text и C# API исправления орфографии
  2. OCR изображения в текст и получить орфографические ошибки
  3. Преобразование изображения в текст с исправлением орфографии
  4. Сохранить распознанный текст с исправленной орфографией
  5. Проверка правописания пользовательского текста

OCR изображения в текст и исправление орфографии C # API

Мы будем использовать API Aspose.OCR для .NET для распознавания изображений, извлечения текста и исправления орфографии. Он может распознавать отсканированные изображения, фотографии со смартфона, скриншоты, области изображений и отсканированные PDF-файлы. Он возвращает распознанные текстовые результаты в самых популярных форматах обмена документами и данными. API также позволяет преобразовывать изображения в текст и создавать из отсканированных файлов PDF с возможностью поиска. Кроме того, он позволяет автоматически исправлять орфографические ошибки в распознанном тексте.

Класс AsposeOcr является основным API для библиотеки Aspose OCR. Он предоставляет различные методы для выполнения операций OCR. Метод RecognizeImage() этого класса распознает текст на изображениях поддерживаемых форматов. Метод CorrectSpelling() API заменяет слова с ошибками на правильные слова в тексте. Класс RecognitionResult представляет результаты распознавания изображений. Метод Save(string, SaveFormat, bool, SpellCheckLanguage, string) этого класса сохраняет документ как обычный текст, PDF или документ Microsoft Word. Все поддерживаемые языки для проверки правописания определены в перечислении SpellCheckLanguage.

Пожалуйста, загрузите DLL API или установите его с помощью NuGet.

PM> Install-Package Aspose.OCR

OCR изображения в текст и получить орфографические ошибки в C

Мы можем выполнить распознавание изображений и получить список орфографических ошибок в распознанном тексте, выполнив следующие шаги:

  1. Во-первых, создайте экземпляр класса AsposeOcr.
  2. Затем инициализируйте объект класса RecognitionSettings.
  3. Затем получите RecognitionResult, вызвав метод RecognizeImage(). В качестве аргументов он принимает путь к изображению и объект RecognitionSettings.
  4. После этого вызовите метод GetSpellCheckErrorList(), чтобы получить список слов с ошибками с предложениями.
  5. Наконец, просмотрите список SpellCheckError и покажите результаты.

В следующем примере кода показано, как получить список орфографических ошибок из распознанного текста на C#.

// В этом примере кода показано, как получить список слов с ошибками из распознанного текста.
// Путь к изображению для распознавания
string imagePath = @"C:\Files\OCR\sample.png";

// Создать API распознавания текста
AsposeOcr api = new AsposeOcr();

// Инициализировать настройки распознавания
RecognitionSettings settings = new RecognitionSettings();

// Распознать изображение           
RecognitionResult result = api.RecognizeImage(imagePath, settings);

// Получить список слов с ошибками с предложениями
List<SpellCheckError> errorsList = result.GetSpellCheckErrorList(SpellCheckLanguage.Eng);

foreach (var word in errorsList)
{
    Console.WriteLine($"Misspelled Word - {word.Word}");
    foreach (var suggest in word.SuggestedWords)
    {
        Console.WriteLine($"Suggested word - {suggest.Word}");
    }

    Console.WriteLine();
}
OCR изображения в текст и получить орфографические ошибки в C #

Получить список орфографических ошибок в C#

Преобразование изображения в текст с исправлением орфографии в C#

Мы можем преобразовать изображение в текст и автоматически исправить орфографические ошибки, выполнив следующие действия:

  1. Во-первых, создайте экземпляр класса AsposeOcr.
  2. Затем инициализируйте объект класса RecognitionSettings.
  3. Затем получите RecognitionResult, вызвав метод RecognizeImage(). В качестве аргументов он принимает путь к изображению и объект RecognitionSettings.
  4. После этого вызовите метод GetSpellCheckCorrectedText(), чтобы получить текст с исправлением орфографии.
  5. Наконец, покажите результаты.

В следующем примере кода показано, как автоматически исправлять орфографические ошибки в распознанном тексте на C#.

// В этом примере кода показано, как автоматически исправлять орфографические ошибки в распознанном тексте.
// Путь к изображению для распознавания
string imagePath = @"C:\Files\OCR\sample.png";

// Создать API распознавания текста
AsposeOcr api = new AsposeOcr();

// Инициализировать настройки распознавания
RecognitionSettings settings = new RecognitionSettings();

// Распознать текст с изображения    
RecognitionResult result = api.RecognizeImage(imagePath, new RecognitionSettings());

// Получить исправленный результат
string correctedResult = result.GetSpellCheckCorrectedText(SpellCheckLanguage.Eng);

// Показать результаты
Console.WriteLine(correctedResult);
Преобразование изображения в текст с исправлением орфографии в C#

Преобразование изображения в текст с исправлением орфографии в C#

Сохранение распознанного текста с исправленной орфографией в C#

Мы можем сохранить распознанный текст с изображения после исправления орфографии, выполнив следующие действия:

  1. Во-первых, создайте экземпляр класса AsposeOcr.
  2. Затем инициализируйте объект класса RecognitionSettings.
  3. После этого получите RecognitionResult, вызвав метод RecognizeImage(). В качестве аргументов он принимает путь к изображению и объект RecognitionSettings.
  4. Наконец, вызовите метод Save(string, SaveFormat, bool, SpellCheckLanguage), чтобы сохранить текст. Он принимает логическое значение applySpellingCorrection как истинное.

В следующем примере кода показано, как сохранить текст с исправлением орфографии в C#.

// В этом примере кода показано, как сохранить распознанный текст с исправлением орфографии.
// Путь к изображению для распознавания
string imagePath = @"C:\Files\OCR\sample.png";
string resultPath = @"C:\Files\OCR\MyResult.txt";

// Создать API распознавания текста
AsposeOcr api = new AsposeOcr();

// Инициализировать настройки распознавания
RecognitionSettings settings = new RecognitionSettings();
         
// Распознать текст с изображения 
RecognitionResult result = api.RecognizeImage(imagePath, new RecognitionSettings());

// Сохраните исправленный текст
result.Save(resultPath, SaveFormat.Text, true, SpellCheckLanguage.Eng);

Текст проверки орфографии в C#

Мы также можем запустить проверку орфографии для пользовательского текста, выполнив следующие шаги:

  1. Во-первых, создайте экземпляр класса AsposeOcr.
  2. Затем вызовите метод CorrectSpelling(). Он принимает текст для исправления и SpellCheckLanguage в качестве аргументов.
  3. Наконец, покажите результаты.

В следующем примере кода показано, как проверять орфографию пользовательского текста в C#.

// В этом примере кода показано, как запустить проверку орфографии в настраиваемой текстовой строке.
// Текст для проверки орфографии
string textToCorrect = "This is sample text wth errrors";

// Создать API распознавания текста
AsposeOcr api = new AsposeOcr();

// Запустите проверку орфографии, чтобы исправить ошибки
string correctedText = api.CorrectSpelling(textToCorrect, SpellCheckLanguage.Eng);

// Показать результаты
Console.WriteLine(correctedText);
This is sample text with errors

Получите бесплатную пробную лицензию

Вы можете получить бесплатную временную лицензию, чтобы попробовать Aspose.OCR для .NET без ограничений пробной версии.

Вывод

В этой статье мы узнали, как:

  • выполнять OCR и распознавать текст на изображении в C#;
  • получить список слов с ошибками вместе с правильными вариантами слов;
  • автокоррекция орфографических ошибок;
  • сохранить исправленный текст программно.

Кроме того, вы можете узнать больше об Aspose.OCR для .NET API, используя документацию. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на нашем форуме.

Смотрите также