LoginSignup
0
0

chatGPTを用いてpythonでテキスト+イメージを新規イメージ保存

Last updated at Posted at 2023-07-10

はじめに

pythonをchatGPTを用いてコードを書かせる。
プロンプトエンジニアリングを実際に使用することで向上させたいと思っています。

目的

常に目的は同じです。自動化推進です。
楽したいは正義でしょう。

今回

画像にテキストを埋め込みそのまま画像として保存したい。
chatGPTへ出力依頼。

プロンプト参考.txt

//当方メモレベルです。。
pythinでテキスト AAAA とpngファイルをまとめて画像として保存するプログラムを記述してください。
なお上記コードで各処理を関数で処理するようにプロのコーダのように記述してください。また適切なコメントアウトをおこないより可読性に優れたコード構成をしてください
またデバッグしやすいようにデバッグプリント関数を追加してください

非常に適当ですね。(いやいい塩梅です。このぐらいでいいのです。)
結果が大事です。出力しながら学習しましょう。

出力結果

text_plus_image.py

from PIL import Image, ImageDraw, ImageFont

# テキストとPNG画像を組み合わせて画像として保存する関数
def create_image_with_text(text, image_path, output_path):
    # 画像の読み込み
    image = Image.open(image_path)

    # 画像にテキストを描画する
    draw = ImageDraw.Draw(image)
    font = ImageFont.truetype("arial.ttf", 24)  # フォントとサイズを指定する
    text_width, text_height = draw.textsize(text, font=font)
    text_position = ((image.width - text_width) // 2, (image.height - text_height) // 2)
    draw.text(text_position, text, font=font)  # テキストの位置と色を指定する

    # 画像を保存する
    image.save(output_path)

    # デバッグプリント関数
    print("画像が保存されました:", output_path)


# メインの処理
def main():
    text = "test"
    image_path = "image.png"
    output_path = "output.png"

    create_image_with_text(text, image_path, output_path)


if __name__ == "__main__":
    main()

今回もなかなかいい速度で対応してくれました。
ここまで3分。しかしエラーが発生するので、
すこし修正しましょう

修正箇所

・フォントの指定
どうやら前もありましたが、フォント指定は下手くそ?
font = ImageFont.truetype("arial.ttf", 24)
これでOKでした。

・色の値がうんたらかんたら・・
潔くここは削除(今回は不要だったため)
問題なく動作。

最終的に約10分でOK。実際はここから融合させたため
もう少しかかりますが、十分ヒントがあるため
問題なく融合も完了

雑感

やはりchatGPTは優秀です。
どんどんコーディングも進むし、コメントも的確、可読性も良い。
何よりコードの記述方法に迷いがあったが逆にAIがしてくれることで
これをコピーすれば、あまりに変なコードにはならない(だろう。。

OUTPUTを継続していきましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0