Вопрос по python, python-2.7 – Преобразование изображений .jpg в .png

19

Я огляделся и прочитал документы, но не нашел пути или решения, поэтому я спрашиваю здесь. Есть ли пакеты для использования Python для преобразования изображения JPG в изображение PNG?

Там, кажется, привязки Python к ImageMagick:imagemagick.org/download/python, Я не использовал их, но использовал ImageMagick, и он будет делать то, что вы хотите. Steven Burnap

Ваш Ответ

5   ответов
0

http://www.pythonware.com/products/pil/

import Image
im = Image.open("infile.png")
im.save("outfile.jpg")

(взято изhttp://mail.python.org/pipermail/python-list/2001-April/700256.html )

27

Библиотека изображений Python (PIL) для этого. Могут быть и другие пакеты / библиотеки, но я использовал это раньше для преобразования между форматами.

Это работает с Python 2.7 под Windows (Библиотека изображений Python 1.1.7 для Python 2.7), Я использую его с 2.7.1 и 2.7.2

from PIL import Image

im = Image.open('Foto.jpg')
im.save('Foto.png')

Обратите внимание, что в исходном вопросе не упоминалась версия Python или используемая вами ОС. Это может иметь значение, конечно :)

Error: User Rate Limit Exceeded user1417933
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded user1417933
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
2

quick converter of files in a single directoryЯ хотел бы поделиться этим коротким фрагментом, который преобразует любой файл в текущем каталоге в .png или любую другую указанную вами цель.

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)
10

http://www.pythonware.com/products/pil/

От:http://effbot.org/imagingbook/image.htm

import Image
im = Image.open("file.png")
im.save("file.jpg", "JPEG")

save

im.save(outfile, options...)

im.save(outfile, format, options...)

Saves the image under the given filename. If format is omitted, the format is determined from the filename extension, if possible. This method returns None.

Keyword options can be used to provide additional instructions to the writer. If a writer doesn't recognise an option, it is silently ignored. The available options are described later in this handbook.

You can use a file object instead of a filename. In this case, you must always specify the format. The file object must implement the seek, tell, and write methods, and be opened in binary mode.

If the save fails, for some reason, the method will raise an exception (usually an IOError exception). If this happens, the method may have created the file, and may have written data to it. It's up to your application to remove incomplete files, if necessary.

0
from glob import glob                                                           
import cv2 
pngs = glob('./*.png')

for j in pngs:
    img = cv2.imread(j)
    cv2.imwrite(j[:-3] + 'jpg', img)

https://gist.github.com/qingswu/1a58c9d66dfc0a6aaac45528bbe01b82

Похожие вопросы