Esistono alternative migliori a PIL (Python Imaging Library) per l'I/O del file immagine di base e l'elaborazione in Python?Cerchi un'alternativa migliore a PIL per l'I/O del file immagine di base e l'elaborazione in Python?
Cerchi un'alternativa migliore a PIL per l'I/O del file immagine di base e l'elaborazione in Python?
risposta
Non proprio. PIL è praticamente ciò che tutti usano. Non ho mai avuto difficoltà con me stesso. Ad ogni modo, se davvero non ti piace, potresti controllare PythonMagick o PythonMagickWand, che sono wrapper attorno a ImageMagick, che potrebbero essere più adatti ai tuoi gusti.
Se con "migliore" si intende "più veloce" o "meno memoria intensiva" o (il più grande nei miei esperimenti) "in grado di gestire immagini molto più grandi", si potrebbe essere in grado di utilizzare l'interfaccia Python per VIPS:
http://www.vips.ecs.soton.ac.uk/index.php?title=Python
Tuttavia, se 'migliore' significa "ben collaudato in Python," o "Windows-friendly," VIPS non si adatta il disegno di legge.
VIPS ha una nuova associazione Python da aprile 2015. Ora è ben Pythonic, funziona su Windows, non perde ed è completo. La suite di test VIPS è ora in Python, quindi dovrebbe funzionare. In genere 5 volte più veloce del cuscino. http://www.vips.ecs.soton.ac.uk/supported/current/doc/html/libvips/using-from-python.html – user894763
Non conosco il tuo compito, ma OpenCV ha Python bindings, puoi leggere i documenti e vedere se è adatto a quello che devi fare.
OpenCV è piuttosto per la visione artificiale e l'elaborazione 3D. –
Prova Pillow: http://pypi.python.org/pypi/Pillow
Si tratta di un fork del PIL, ma mantenuto dalla comunità di Plone. Che è grande come viene mantenuto (rispetto al suo predecessore) ed è retrocompatibile con PIL. Il codice esistente funzionerà immediatamente con Pillow.
Principalmente si concentrano su problemi di imballaggio e AFAIK questo è stato il più grande dolore con PIL.
Buona fortuna!
Cuscino è piuttosto grande, in quanto supporta sia PyPy che Python. Ma usare Pillow con PyPy non è molto ottimale come è scritto in CPYthons C-Api, e quindi più lento su PyPy. – JHolta
'pillow' sembra molto meglio di' pil' – suhailvs
Il guanciale non ha il supporto antialiasing che può creare immagini scadenti. Potresti dare un'occhiata al modulo (aggravato?) [Aggdraw] (http://www.effbot.org/zone/aggdraw-index.htm). – Jens
Wand è una grande libreria per la manipolazione semplice come conversione del formato di file di immagine, ritaglio, ridimensionamento, filigrana e composizione di base. È costruito sulla libreria MagicWand C di ImageMagick, ma espone una bellissima API Pythonic.
Suggerirei Python Wand, che è un semplice collegamento ImageMagick basato su ctypes per Python.
Il rovescio della medaglia è che Wand non è molto veloce in CPython. Ad esempio: l'accesso ai pixel è inutile. Upside: PyPy compatibile. – JHolta
Depends ... definire meglio :-) –
@Jarret Hardie: mi hai battuto! – tzot
Migliore: più veloce, più funzionalità, sviluppo attivo, ecc. – VogonPoet