Cercando di creare un'immagine che acquisisce l'applicazione ottimizzata per uno scanner veloce (che può fornire fino a 6 immagini compresse [colore + grigio + binario] [anteriore + posteriore] per ogni carta alla velocità di 150 ppm) Ho una certa velocità problemi. Utilizzo della tecnologia TWAIN e modalità di trasferimento del buffer di memoria (TWSX_MEMORY) Ricevo il buffer di immagini (come file JPEG o TIFF caricato in memoria) dallo scanner e lo salgo nel percorso di destinazione dell'applicazione. Se non voglio creare anteprime, la mia applicazione non causa alcuna perdita di velocità per lo scanner, ma se lo voglio, a causa del modo in cui lo faccio (salvando il buffer in un file nel mio dll di gestione TWAIN C++, notificando il mio host .NET. applicazione con percorso file di destinazione utilizzando un puntatore a funzione, apertura del file immagine in C# e creazione dell'immagine di anteprima), la mia applicazione causa un'estrema perdita di velocità alla velocità di scansione. Ho provato alcune ottimizzazioni come l'esecuzione della fase di caricamento in un thread separato e l'invio di buffer di file di immagine non gestito su host .NET e cercando di caricarlo in un contesto non sicuro (UnmanagedMemoryStream) e creando una miniatura. Ma non ha migliorato significativamente la velocità. Quindi la mia domanda è:Avendo un buffer di file immagine in memoria, qual è il modo più veloce per creare la sua miniatura?
Avere un buffer di file immagine in memoria (ad esempio JPEG a 24 bit compresso senza miniatura incorporata), c'è un modo diretto veloce per creare un'immagine in miniatura da esso? Che cosa suggerisci come metodo più veloce per creare miniature in questo caso?
Grazie, sembra essere quello che volevo. –
Sono riuscito a testare l'EPEG, per chiunque sia interessato a fare lo stesso, devo dire che sembra che la libreria EPEG sia stata rimossa dal codice sorgente dell'illuminazione, quindi dovresti cercarla all'interno dei suoi vecchi codici sorgente, per esempio qui: http://download.enlightenment.org/snapshots/2008-01-25/. –
Per le immagini TIFF, ho utilizzato questo codice: http://www.koders.com/c/fidFAE1882A0596B9D224D831B852AE9891D0154D6D.aspx. Non è veloce come l'EPEG, ma porta a termine il lavoro. –