Python-pillow

4096 ワード

一:Pillow概要PillowはPILの代替バージョンであり、PILパッケージは基本的な画像処理機能を提供している.例えば、画像サイズの変更、回転画像、画像フォーマット変換、色場空間変換、画像増強、ヒストグラム処理、補間とフィルタリングなどである.
PillowはPILの2つの問題を解決するために:1.互換性がないsetuptools 2.レポートの問題が多すぎて、更新が遅すぎます.
二:Pillow Image
from PIL import Image

im = Image.open("Image.JPG")
# format          ,            ,       None;
# size     tuple,        (     );
# mode          ,      :L    ,RGB    ,CMYK pre-press  。
#         ,   IOError  。
print(im.format, im.size, im.mode)

#      show()        ,                ,    xv    。
#       xv,         。         debug test。
#(windows              )
im.show()

3:Pillowの例ネット上で多くの悪くない例があって、参考にすることができますhttp://www.cnblogs.com/apexchu/p/4231041.htmlおよびhttp://www.myexception.cn/image/1845354.html
import os, sys
import argparse
from PIL import Image

parser = argparse.ArgumentParser()
parser.add_argument("inputfile", help="inputfile name")

result = parser.parse_args()

try:
    filename, prefix = os.path.splitext(result.inputfile)
    outfile = filename + ".jpg"
    Image.open(result.inputfile).save(outfile)
except IOError:
    print("cannot convert", result.inputfile)
import os, sys
import argparse
from PIL import Image

parser = argparse.ArgumentParser()
parser.add_argument("inputfile", help="inputfile name")
parser.add_argument("delta", type=int)

result = parser.parse_args()


def roll(image, delta):
    "Roll an image sideways"

    image = image.copy()  # copy image
    xsize, ysize = image.size

    delta = delta % xsize
    if delta == 0:
        return image
    part1 = image.crop((0, 0, delta, ysize))
    part2 = image.crop((delta, 0, xsize, ysize))
    image.paste(part2, (0, 0, xsize - delta, ysize))
    image.paste(part1, (xsize - delta, 0, xsize, ysize))

    return image


try:
    filename, prefix = os.path.splitext(result.inputfile)
    outfile = filename + ".jpg"
    # Image.open(result.inputfile).save(outfile)
    im = Image.open(result.inputfile)
    im = roll(im, result.delta)
    im.save(outfile)
except IOError:
    print("cannot convert", result.inputfile)

全体的にPillowは強力な画像処理ライブラリであり、深く掘り下げたい場合はコード学習を継続することができます.