J'ai regardé autour de moi et lu la documentation, et je n'ai trouvé aucun moyen ni solution, alors je pose la question ici. Existe-t-il des packages disponibles pour utiliser Python pour convertir une image JPG en une image PNG?
Vous pouvez toujours utiliser la bibliothèque d'images Python (PIL) à cette fin. Il pourrait aussi y avoir d'autres packages/bibliothèques, mais je l'ai déjà utilisé pour convertir des formats.
Cela fonctionne avec Python 2.7 sous Windows ( Python Imaging Library 1.1.7 pour Python 2.7 ), je l’utilise avec 2.7.1 et 2.7.2
from PIL import Image
im = Image.open('Foto.jpg')
im.save('Foto.png')
Notez que votre question initiale ne mentionnait pas la version de Python ni le système d'exploitation que vous utilisez. Cela peut faire une différence bien sûr :)
Bibliothèque d'images Python: http://www.pythonware.com/products/pil/
De: http://effbot.org/imagingbook/image.htm
import Image
im = Image.open("file.png")
im.save("file.jpg", "JPEG")
enregistrer
im.save (fichier de sortie, options ...)
im.save (fichier de sortie, format, options ...)
Enregistre l'image sous le nom de fichier donné. Si le format est omis, le fichier Le format est déterminé à partir de l’extension de nom de fichier, si possible. Ce La méthode retourne Aucune.
Les options de mot-clé peuvent être utilisées pour fournir des instructions supplémentaires au fichier écrivain. Si un rédacteur ne reconnaît pas une option, celle-ci est silencieuse ignoré. Les options disponibles sont décrites plus loin dans ce manuel.
Vous pouvez utiliser un objet fichier au lieu d'un nom de fichier. Dans ce cas, vous doit toujours spécifier le format. L'objet fichier doit implémenter le fichier chercher, raconter et écrire des méthodes et être ouvert en mode binaire.
Si la sauvegarde échoue, pour une raison quelconque, la méthode lève une exception (généralement une exception IOError). Si cela se produit, la méthode peut avoir créé le fichier et peut y avoir écrit des données. C'est à vous application pour supprimer les fichiers incomplets, si nécessaire.
Comme je cherchais un convertisseur rapide de fichiers dans un seul répertoire , je souhaitais partager ce court extrait qui convertit n'importe quel fichier du répertoire actuel en .png ou quelle que soit la cible que vous spécifiez.
from PIL import Image
from os import listdir
from os.path import splitext
target_directory = '.'
target = '.png'
for file in listdir(target_directory):
filename, extension = splitext(file)
try:
if extension not in ['.py', target]:
im = Image.open(filename + extension)
im.save(filename + target)
except OSError:
print('Cannot convert %s' % file)
from glob import glob
import cv2
pngs = glob('./*.png')
for j in pngs:
img = cv2.imread(j)
cv2.imwrite(j[:-3] + 'jpg', img)
cette URL: https://Gist.github.com/qingswu/1a58c9d66dfc0a6aaac45528bbe01b82
Je n'utilise pas python moi-même, mais essayez de regarder dans: http://www.pythonware.com/products/pil/
import Image
im = Image.open("infile.png")
im.save("outfile.jpg")
(extrait de http://mail.python.org/pipermail/python-list/2001-avril/700256.html )