Featured image of post Windows PCの画像生成をWSLから呼び出して、ブログ用画像を自動生成する

Windows PCの画像生成をWSLから呼び出して、ブログ用画像を自動生成する

Windows PC上の画像生成ソフトを WSL から呼び出し、ブログのアイキャッチ画像や本文画像を自動で作る仕組みを整えた。どういう分担で動かしているのか、どんな画像が作れるのか、実際の生成例とあわせてまとめる。

このブログでは、記事本文の執筆や公開まではかなり自動化できていたのに、画像だけは最後に別の画面を開いて手で作ることが多かった。そこが地味に面倒だった。

今回追加したのは、記事を書く流れの中からそのまま画像も作れる仕組みだ。Windows 側で動かす画像生成ソフト ComfyUI を、WSL からコマンドで呼び出し、記事のアイキャッチ画像や本文中の補助画像を、なるべく手を介さずに作れるようにした。その構成と、実際に使った指示文の例を残しておく。

構成

使っている構成はこうだ。

  • Windows 11 側で Stability Matrix + ComfyUI
  • GPU は GeForce RTX 4060 Ti
  • 普段の作業環境は WSL2 上の Ubuntu
  • ブログ本体は Hugo で管理

ここでいう WSL は、Windows 上で Linux のコマンドを使うための仕組みだ。普段のブログ更新やスクリプト実行はこの WSL 側でやっている。一方、画像生成のように GPU を強く使う処理は Windows 側に置いた。ComfyUI は、そうした画像生成を組み立てて動かせる定番ツールのひとつである。その2つをつなぎ、記事の作業フローの中からそのまま画像生成を呼べるようにした。

何を自動化したか

やっていることを大まかに分けると3段階ある。

  1. 記事本文から、画像生成に必要な要点メモと指示文のたたき台を作る
  2. 画像生成ソフトにその指示文を渡して画像を生成する
  3. 生成画像を、アイキャッチ用・本文用として決まったサイズに整えて保存する

実際に使うコマンドはこんな形。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
python3 scripts/prepare-mcp-image-prompts.py <slug> --body-count 2

python3 scripts/generate-comfyui-featured.py <slug> \
  --checkpoint "epicrealismXL_pureFix.safetensors" \
  --positive "..." \
  --negative "..." \
  --width 1344 \
  --height 768

python3 scripts/generate-comfyui-featured.py <slug> \
  --role body \
  --body-index 1 \
  --alt "生成例" \
  --insert \
  --checkpoint "epicrealismXL_pureFix.safetensors" \
  --positive "..." \
  --negative "..."

細かい接続先は毎回手で指定しなくてもよいようにしてある。Windows と WSL をまたぐと、どこへ接続すれば画像生成ソフトに届くかが地味に面倒なので、そのあたりはスクリプト側で吸収した。

生成例1: 記事の顔になる画像

この記事の先頭に出ている画像も、この仕組みで作った。

1
editorial hero image for a tech blog, local image generation workflow across Windows and WSL, wide modern desk setup, one screen showing abstract image thumbnails, one screen showing a dark creative workspace, cinematic magenta and cyan lighting, clean composition, realistic editorial photography, no readable text, no watermark

ComfyUIとWSLを組み合わせたローカル画像生成ワークフローのアイキャッチ

狙いは「いかにも AI 画像」ではなく、ブログの一覧や SNS のカードに載せても浮かない、雑誌やニュースサイトのカットに近い見た目だ。文字は入れず、あとから横長に切り出しても破綻しにくい構図を優先している。

生成例2: 少し幻想寄りのサンプル

1
editorial concept art for a magazine, luminous jellyfish drifting in a dark deep sea, bioluminescent blue and cyan glow, elegant composition, realistic underwater atmosphere, high detail, no readable text, no watermark

深海を漂うクラゲのサンプル画像

現実寄りの写真風だけでなく、少し幻想的な題材にも振れる。青く発光するクラゲのような被写体は、色の印象が強いので、記事の見本として並べたときにも変化が出しやすい。

生成例3: 自然風景のサンプル

1
editorial nature image for a magazine, dramatic coastal cliffs at sunrise, ocean mist, layered clouds, realistic landscape photography, wide composition, high detail, no readable text, no watermark

朝焼けの海岸崖を描いた自然風景のサンプル画像

風景も十分にいける。横長の構図や光の層がきれいに出るので、記事中の見本として置きやすい。今回は RTX 4060 Ti で試しており、最初に使った画像生成モデルは epiCRealism XL だ。アニメ寄りの絵柄より、こうした汎用的なサンプル画像に流用しやすかった。

実運用で見えたこと

  • Windows で画像生成、WSL で記事管理という分担はかなり相性がいい
  • 画像生成の本体は ComfyUI に寄せ、記事側は指示文と保存ルールだけを持つ方が管理しやすい
  • アイキャッチ画像を自動で 1200x630 に整えておくと、ブログ一覧や OGP で迷わない
  • 本文画像を body-01.png のような連番にしておくと、あとから差し替えやすい

逆に、最初の設定だけは少し面倒だった。そこさえ通ってしまえば、あとは記事ごとに指示文を差し替えて回すだけになる。

これで何が変わったか

一番大きいのは、「画像だけ最後に人間が別画面で作る」というボトルネックがかなり小さくなったことだ。まだ指示文まで完全自動で最適化する段階ではないけれど、少なくとも同じ手順を何度でも繰り返せるようになった。

記事のテーマに合わせて指示文を差し替えれば、ゲーム記事でも技術記事でも同じ流れで画像を作れる。まだ試行錯誤は必要だが、「画像だけ最後に別作業になる」状態からはかなり前進したと思う。

参考

ComfyUI: https://github.com/Comfy-Org/ComfyUI

Stability Matrix: https://github.com/LykosAI/StabilityMatrix

Next Action

おすすめリンク

この記事に合わせて、関連アイテムを探しやすいリンクをまとめています。

Affiliate Links

AI学習まわりを探す

AIを理解したい読者向けに、本で深掘りしやすい導線を優先します。

AIエージェント設計の本を探す Claude、LLM、エージェント設計を深掘りしたい時向け
生成AIの本を探す 入門書、活用本、プロンプト本向け
AI開発・Python本を探す API連携や実装まで踏み込みたい時向け

外部ストアへのアフィリエイトリンクです。気になるものだけ開けば十分です。

B!