Google の OSS な AI モデル Gemma で画像のタグ付け

Google がオープンソースで公開している生成 AI モデル Gemma で、画像ファイルに描かれた内容を解析して、キーワードをタグとして印字することをやってみました。

いつもどおり、ollama 環境で使います。配布されているモデルは、下記ページで参照が可能です。

https://ollama.com/library/gemma3/tags

今回は画像ファイルを読み込ませたいので、このページの表のうち「Input」が「Text, Image」になっているものを用います。「gemma3:4b-it-q8_0」をチョイスしました。

ollama pull gemma3:4b-it-q8_0

モデルファイルをプルしてきて、次で実行します。

$ ollama run gemma3:4b-it-q8_0
>>> こんにちは。100文字程度で自己紹介してください。
こんにちは!私は、Googleによってトレーニングされた、大規模言語モデルです。
皆さんの質問に答えたり、文章を作成したり、様々な情報を提供することができます。
どんなことでもお気軽にご相談ください!

>>> Send a message (/? for help)

ちゃんと動作するようです。

次に同一ディレクトリに10個の JPEG ファイルを用意して、次のコマンドを実行しました。

for n in *.jpg; do \
  echo "./$n 画像の内容にふさわしいタグをJSON配列で印字して。" \
  | ollama run gemma3:4b-it-q8_0; > tag_$n.json; \
done

与えた画像ファイルと、結果の JSON ファイルは以下のとおり。

入力した画像ファイル出力された JSON ファイル
[“トマト”,”トマトの苗”,”植物”,”栽培”,”園芸”,”収穫”,”緑”,”赤”]
[“ボート”,”船”,”水路”,”港”,”水”,”山”,”夕焼け”,”景色”]
[“海”,”ビーチ”,”海”,”海岸”,”天気”,”青空”,”岩”,”遊歩道”,”駐車場”,”日本”,”風景”,”景観”]
[“夜”,”花火”,”建造物”,”夜景”,”都市”,”夜空”,”雰囲気”,”都市景観”]
[“望遠鏡”,”天体観測”,”天文台”,”科学”,”教育”,”科学教育”,”観測”,”星空”,”宇宙”]
[“釣り”,”魚”,”釣り針”,”水”,”桟橋”,”漁具”,”水生生物”]
[“魚”,”水槽”,”稚魚”,”水生生物”,”養殖”,”水”,”魚類”,
“生態系”]
[“石器”,”打製石器”,”ナイフ”,”石器”,”旧石器時代”,”日本史”,”考古学”,”人類学”]
[“焼肉”, “グリル”, “炭火”, “肉”, “野菜”, “BBQ”, “キャンプ”, “アウトドア”]
[“猫”,”長崎”,”平和プロジェクト”,”長崎市”,”観光”]

えっ、めっちゃ良い感じじゃないか。

100%間違いないタグが生成される訳ではないにしろ、写真整理には十分実用的な精度が出ているようです。現在の Google フォトのキーワード検索並みに使えるかもしれません。(顔認識等はまた別)

一度生成したタグを JPEG ファイル内に仕込めば、可搬性が高まりそうです。(Adobe 系のソフトでは IPTC Keywords, XMP Subject に格納することが多く、より一般的には EXIF の ImageDescription または UserComment に格納するようですね。)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください