【ChatGPT x Python】LINEスタンプ画像サイズに一括変換

ChatGPT

こんばんは。

ChatGPTでLINEスタンプを制作しているmomoです。

ChatGPTで何とかLINEスタンプ40個を作れたものの、よく見ると、画像サイズがめちゃくちゃ大きいことに気づきました(´;ω;`)

プロンプトでちゃんとサイズ指定したはずなんですが、そのサイズになっていませんでした。

何でかな・・・。

LINEスタンプは、LINEのルールで決められたサイズがあるので、40個全部それに変更しないといけません。。。

さて、どうするか。

そこで今回は、Pythonで一括変換してみることにしました。

サイト運営者
momo

大阪在住の40代女性SE。現在は、子供2人を育てながら自宅でフリーランスとして働いています。主に業務効率化を請け負っており、最近は生成AIについても猛勉強中。

momoをフォローする
003_midworks_img_300x250

Pythonで画像サイズを変更するには

さて、実は私はPythonはまだ初心者レベルで、実務ではほんの少し触ったことがあるぐらいです。

なので、どう書けばいいのか、これまたChatGPTに聞いて教えてもらうことにしました。

もうほんとに、最近は何でもかんでもChatGPTになっちゃってます(^^♪

こう聞いてみました。

momo
momo

Pythonで、あるフォルダにある全画像を、LINEスタンプ用サイズに変更する方法を教えて

すると、一瞬でコードを教えてくれました。

from PIL import Image
import os

# 入力フォルダと出力フォルダのパスを指定
input_folder = "XXX\XXX"
output_folder = "XXX\XXX"

os.makedirs(output_folder, exist_ok=True)

image_extensions = ['.jpg', '.jpeg', '.png', '.bmp', '.gif']

for filename in os.listdir(input_folder):
    if any(filename.lower().endswith(ext) for ext in image_extensions):
        input_path = os.path.join(input_folder, filename)
        output_path = os.path.join(output_folder, filename)

        with Image.open(input_path) as img:
            resized_img = img.resize((320, 320), Image.LANCZOS)
            resized_img.save(output_path)

print("すべての画像を縦横320pxにリサイズしました。")

おー!

素晴らしい。一瞬で完成しました。

一部よくないところは自分で修正

python初心者の視点ですが一応さっと確認してみることに。

すると、

最初のフォルダパスを指定するところが、たぶんダメ。

Windowsだと「¥」がエスケープ文字として誤認識されますね、たぶん。

なので、raw文字列をつけて書き直しました。

# 入力フォルダと出力フォルダのパスを指定
input_folder = r"XXX\XXX"
output_folder = r"XXX\XXX"

パスの先頭にrをつけるだけでOKです。

Pythonなら一瞬でサイズ変更可能

で、これで実行すると、一瞬で全40画像が変更されました。

本当に一瞬で、体感2秒ぐらいです。

いやぁPythonって本当にサクッとコードかけて、すぐ実行できて、めちゃくちゃ便利ですね。

しかも、基本さえ一通り学んでいれば、生成AIに助けてもらって簡単にカスタマイズするだけでいい時代。

便利すぎます(^^♪

私も利用しているフリーランス向けエージェント。1年目から年収600万を実現し、毎年報酬アップしています。
難しい契約や交渉は完全にお任せできるので安心。
登録も面談も完全無料なので、自分の市場価値や将来性を確認するだけでも価値ありです。

ChatGPTLINEスタンプPython
momoをフォローする
タイトルとURLをコピーしました