Come digitare libri e documenti multi-colonne con Aspose.OCR

Come digitare libri e documenti multi-colonne con Aspose.OCR

La scansione o la fotografia di libri e riviste spesso porta a immagini complesse e multi-colonne, sfidando il standard OCR. Aspose.OCR per .NET fornisce impostazioni avanzate per estrarre in modo affidabile il testo strutturato, ordinato in colonna, ideale per le biblioteche, la ricerca e la pubblicazione.

Il problema del mondo reale

Libri, giornali e riviste sono spesso memorizzati come immagini scansionate con colonne, note e illustrazioni.L’estratto di testo leggibile, strutturato manualmente è lento, erroneo e costoso per le biblioteche o gli archivi.

Soluzione Overview

Aspose.OCR per .NET gestisce layout multi-colonne e complessi, conservando l’ordine di lettura e permettendo di automatizzare la digitalizzazione di massa di libri e riviste, risparmiando tempo e migliorando la precisione dei dati per ricercatori e editori.

Prerequisiti

Assicurati di avere:

  • Visual Studio 2019 o successivo
  • .NET 6.0 o successivo (o .Net Framework 4.6.2+)
  • Aspose.OCR per .NET da NuGet
  • Le competenze C#
PM> Install-Package Aspose.OCR

Implementazione passo dopo passo

Passo 1: Installare e configurare Aspose.OCR

using Aspose.OCR;

Passo 2: Scannare o scattare le pagine del tuo libro / rivista

Aggiungi tutte le immagini delle pagine scansionate alla tua input per il riconoscimento del batch.

OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("book_page1.png");
input.Add("book_page2.jpg");

Passo 3: Configurare le impostazioni di riconoscimento multi-colonne

RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.DOCUMENT; // Use DOCUMENT or AUTO for multi-column layouts

Passo 4: Estratto del testo in ordine strutturato

AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);

Passo 5: Esportare o salvare il testo digitalizzato

foreach (RecognitionResult result in results)
{
    result.Save("book_page.txt", SaveFormat.Text); // Save as text
    result.Save("book_page.docx", SaveFormat.Docx); // Save as Word doc
}

Passo 6: Aggiungi errori di gestione e controlli di qualità

try
{
    // OCR and export code
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

Passo 7: Ottimizzare per libri di massa o rari

  • Batch processa tutte le pagine del libro in cartelle
  • Utilizzare scansioni ad alta risorsa per libri rari o vecchi
  • Validare una pagina di campione prima di eseguire l’intera raccolta
foreach (string file in Directory.GetFiles("./books", "*.jpg"))
{
    input.Add(file);
}

Passo 8 - Esempio completo

using Aspose.OCR;
using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            OcrInput input = new OcrInput(InputType.SingleImage);
            input.Add("book_page1.png");
            input.Add("book_page2.jpg");

            RecognitionSettings settings = new RecognitionSettings();
            settings.Language = Language.English;
            settings.DetectAreasMode = DetectAreasMode.DOCUMENT;

            AsposeOcr ocr = new AsposeOcr();
            List<RecognitionResult> results = ocr.Recognize(input, settings);

            foreach (RecognitionResult result in results)
            {
                result.Save("book_page.txt", SaveFormat.Text);
                result.Save("book_page.docx", SaveFormat.Docx);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
}

Utilizzare casi e applicazioni

Librerie e umanità digitale

Permettere il prestito digitale, la ricerca e l’analisi di libri rari e giornali storici.

Pubblicazione accademica e di ricerca

Facilmente digitalizzare i giornali, i processi di conferenze o i libri di testo per l’accesso elettronico.

Disegni multilingue e complessi

Estratto contenuto dai giornali con colonne di lingua straniera, pagine o note.

Sfide e soluzioni comuni

sfida 1: senza colonne o illustrazioni

Soluzione: Utilizzare scansioni di alta qualità e testare i modi DOCUMENT/AUTO per il miglior ordine di lettura.

Challenge 2: Qualità OCR per libri vecchi o danneggiati

Soluzione: Migliora le scansioni e validi i risultati prima del trattamento di massa.

3 – Digitalizzazione di scala massiccia

Soluzione: Automatizzare i flussi di lavoro e utilizzare il trattamento degli errori per le operazioni su larga scala.

Considerazioni di prestazioni

  • Utilizzare scansioni di buona fonte, specialmente per libri rari o fragili
  • Il processo di batch per scala
  • Conservare le pubblicazioni digitalizzate in formati flessibili (text, Word, PDF)

Migliori pratiche

  • Validare la produzione contro le pagine originali per precisione
  • Organizzare pagine di libri per volume e capitolo per facile recupero
  • Backup sia scansioni che testo digitalizzato
  • Aggiornare il motore OCR per le ultime miglioramenti

Scenari avanzati

Scenario 1: digitalizzare le riviste multilingue

settings.Language = Language.German;

Scenario 2: Esportazione in PDF per i lettori di eBook

foreach (RecognitionResult result in results)
{
    result.Save("book_page.pdf", SaveFormat.Pdf);
}

conclusione

Aspose.OCR per .NET è il modo più veloce per portare libri e pubblicazioni complesse nell’era digitale, pronte per la ricerca, l’analisi e la condivisione.

Vedi altri esempi e suggerimenti di integrazione nel Aspose.OCR per .NET API Reference .

 Italiano