Come accelerare la scansione di codice a barre 1D in flussi di lavoro in inventario e magazzino in .NET

Come accelerare la scansione di codice a barre 1D in flussi di lavoro in inventario e magazzino in .NET

La scansione di codice a barre è la parte posteriore delle operazioni di inventario, magazzino e spedizione. Scansioni lente portano a bottiglie e errori, specialmente con migliaia di articoli o etichette. Ottimizzazione della velocità di scansionamento aiuta a mantenere l’accuratezza dell’inventario in tempo reale ed efficienza del flusso di lavoro.

Un esempio di rapido inizio

using Aspose.BarCode.BarCodeRecognition;
using System.IO;
using System;
using System.Threading.Tasks;

class Program
{
  static void Main()
  {
    string[] files = Directory.GetFiles("labels/", "*.jpg");
    Parallel.ForEach(files, imagePath =>
    {
      using (BarCodeReader reader = new BarCodeReader(imagePath, DecodeType.Code128, DecodeType.EAN13, DecodeType.UPCA))
      {
      foreach (BarCodeResult result in reader.ReadBarCodes())
        Console.WriteLine($"File: {imagePath}, Type: {result.CodeTypeName}, Value: {result.CodeText}");
      }
    });
  }
} 

Tabella dei contenuti

Questo articolo spiega i modi pratici per massimizzare la velocità di riconoscimento del codice a barre quando si tratta di un gran numero di immagini a barcode 1D in .NET. I casi di utilizzo includono l’etichettatura del magazzino, il inventario dei pacchetti e la gestione della catena di approvvigionamento.

Prerequisiti

  • Visual Studio 2019 o successivo
  • .NET Framework 4.6.2+ e .net 6.0+
  • Aspose.BarCode per .NET (NuGet)
  • Un sacco di immagini con codici a barre 1D (JPG, PNG, TIFF)
PM> Install-Package Aspose.BarCode 

Guida passo dopo passo

  • Installare Aspose.BarCode per .NET e raccogliere i file di immagine di codice bar.
  • Ricretto riconoscimento dei DecodeTypes necessari (ad esempio, Code128, EAN-13, UPC-A) per la migliore velocità.
  • (Opzionale) Crop o set regioni di interesse se i codici a barre si trovano in luoghi previsibili.
  • Utilizzo di elaborazione parallela:
  • Risultati aggiuntivi per i flussi di lavoro di inventario o di spedizione.

Suggerimenti per le prestazioni: filtraggio, targeting e parallelismo

  • DecodeType Filtering: Indica solo i tipi di codice a barre 1D che si aspettano; evita la perdita di tempo di elaborazione.
  • Regione Targeting: Se i codici a barre vengono sempre visualizzati nella stessa regione (ad esempio, nella parte inferiore dell’etichetta), specificare un Rectangle per limitare la ricerca di riconoscimento.
  • Batch & Parallel Processing: Utilizzo Parallel.ForEach, codice async, o thread pooli per elaborare più immagini contemporaneamente.
  • Evitare grandi immagini: Immagini di scala inferiore alla risoluzione di codice a bar per la lettura più veloce.

Risoluzione dei problemi e problemi comuni

  • L’utilizzo del CPU è troppo alto?

  • Limitare il grado di parallelismo, o utilizzare batch più piccoli.

  • “I falsi positivi?”

  • Filtrare i risultati secondo il tipo di codice bar o la fiducia.

  • Il riconoscimento è ancora lento?

  • Restringere ulteriormente a solo uno o due DecodeTypes.

FAQ

**Q: Posso scansionare PDF o TIFF multipagine in massa?**A: Sì – scorrere attraverso ogni pagina e applicare la stessa logica di riconoscimento.

Q: Qual è la migliore dimensione del batch?A: dipende dalla CPU e dalla RAM – esperimento per il miglior rendimento sul tuo hardware.

Migliori pratiche

Tipodi DoNon dare
DecodificazioneUtilizzare solo i tipi 1D necessariUtilizzare tutti i tipi di supporto
ParallelismUtilizzare Parallel.ForEach per il bulkImmagini in serie
Immagini di dimensioniLa scala per la velocitàUtilizzare immagini di fotocamera crude
Trattamento eccezionaleErrori di catch & log in batchIgnorare le lezioni fallite

conclusione

La scansione veloce e affidabile del codice a barre è essenziale per una gestione efficiente dell’inventario e del magazzino. Con Aspose.BarCode per .NET, è possibile elaborare migliaia di etichette rapidamente utilizzando il filtro DecodeType, l’obiettivo della regione e il trattamento parallelo del pacchetto. Aspose.BarCode API di riferimento Per ulteriori ottimizzazioni del flusso di lavoro.

 Italiano