About

AIタグは「何が写っているか」ではなく「編集でどう使うか」で分ける — 写真・動画4,341件に12軸

家族の動画を作っていて素材選びで詰まり、タグの体系を作り直した — そして半分は目で直した

家族の写真や動画で成長記録のムービーを作っていたら、時間の大半が編集ではなく素材選びに消えた。ファイルは4,341件(写真3,989・動画352、2017〜2026年)。

既存のタグはすべて「何が写っているか」だった。子ども、食べ物、海。ところが編集中に本当に必要だった問いは別物だった。オープニングに敷く広い風景カットはあるか。字幕を載せられる空きスペースがあるカットはどれか。ブレたカットを先に弾けるか。

そこでタグを「編集でどこに使うか」で組み直した。この記事を読めば、写真や動画にAIでタグを付けるときにどんな軸で分ければ素材選びが速くなるか、AIが付けたタグをなぜ必ず目で見るべきかが分かる。

「何が」から「どこに」へ

What's in itWhere it goes in the editchildfoodsea2022Openingwide + sharp + landscapeCaption spaceempty top or bottomCut firstblurry, darkEndingperson in sceneryre-axisSearch tags find photos. Edit tags pick cuts.

写真アプリの標準の分類(人物・場所・物)は探すためのものだ。「海で撮った写真」を探すには向いている。編集では「字幕を載せられるワイドカット」のように使い道で探すことになる。両者は重ならない。標準の分類はそのまま残し、編集用の軸をもう一層重ねた。

タグはすべて 軸:値 形式のmacOS Finderタグだ。軸は12個。実際のタグは韓国語で付けているが、ここでは日本語に訳して書く。

軸 タグ例 編集で使う場面 判定方法
構図 構図:クローズアップ 構図:ワイド カットサイズのリズム 顔・体の枠の高さの比率
配置 配置:左/中央/右 トランジションの向き、前後のカットのつなぎ 顔の中心・注目領域
余白 余白:上/下 字幕の置き場所 注目領域の外の空きの割合
視線 視線:正面/左/右 視線を合わせる 顔の左右の向き(yaw)
品質 品質:鮮明/ブレ/暗い 先に弾く エッジの強さ、明るさの分布
色・光 色:暖色 光:夜 グレーディングのトーン合わせ 平均色、主要色、撮影時刻
時間 季節:春 時間帯:夕方 一日・季節の流れ EXIFの時刻
形式 形式:縦 ショート・リール 縦横比
動画 撮影:スロー 長さ:長回し スローの区間 fps、長さ
音 音:笑い声/話し声/音楽 元の音を生かすカット macOS SoundAnalysis
用途 用途:オープニング/エンディング/字幕背景 すぐ取り出せる候補 上の軸の組み合わせ
基本 場所:海 年:2022 何が写っているか Visionのシーン分類

用途タグは他の軸を組み合わせて作る。用途:オープニング = 状況説明ショット(場所を見せる広いカット)+鮮明+横。用途:字幕背景 = ワイド+上か下の余白。

すべてローカルで処理した。Vision(顔・体・水平線・注目領域・シーン分類)、CoreImage、SoundAnalysis、ffprobe。外部APIは一度も呼んでいない。家族写真なので最初から決めていた条件だ。結果はファイルあたり平均9.6個、タグの種類は88。

半分は目で直した

タグごとに14枚ずつサンプルを取り、自分の目で見た。最初のルールのまま使えるものは多くなかった。

タグ 最初のルール 問題 直したあと
アングル:ダッチ 水平線が8°以上 屋内の誤検出、横向きのまま保存された写真がほとんど 廃止
用途:エンディング 午後+暖色+風景 暖かい室内照明を夕焼けと誤認(料理写真がエンディング候補に) 基準を変えて10/14
品質:ブレ 機種ごとの下位12% 大きな顔は肌がなめらかでボケと誤判定 大きな顔を除外
表情:笑顔 顔がひとつでも笑っていれば 背景の小さな顔、彫像の顔 最大の顔の50%以上の大きさだけ → 15/18
用途:オープニング 風景ラベル 料理・動物が混ざる 料理・動物を除外
視線:左/右 yaw ≠ 0 少しだけ向きを変えた顔まで yawの絶対値0.6以上のみ

アングル:ダッチ はまるごと捨てた。傾いた構図を拾うつもりだったが、引っかかったのはほとんどがEXIFの向き情報なしで横倒しのまま保存された写真だった。こういう写真を自動で見分ける処理はまだできていない。

余白・色 系はまだサンプル検証をしていない。だから精度の数字は書かない。

既存のタグを消さない

Finderで元から色タグが付いているファイルもあった。タグはファイルの拡張属性(xattr)に入っているので、まるごと上書きすると既存のタグが消える。元はそのまま残し、後ろに追記した。適用後に4,341件を全件再検証し、新しいタグの付け漏れ0、既存タグの消失0を確認した。

カメラの動き(パン・トラッキング・手持ち)はまだ軸にない。動画解析を入れたら、それは次の記事で扱う。

写真・動画のアーカイブにAI分類を付けたい、社内の資料をこういう形で整理したいという場合は、negabaroに相談してほしい(お問い合わせ)。

キーコンセプト

1

編集で出てくる問い(オープニング・字幕の場所・弾くカット)から書き出して軸を作る

2

すべてのタグを `軸:値` に — 並べ替えと組み合わせが楽になる

3

用途タグは他の軸の組み合わせで作る

4

タグごとにサンプルを目で見る — 最初のルールはたいてい外れる

5

既存のタグ(xattr)は上書きせず追記する

ユースケース

家族やイベントの動画を編集する前の素材選び 社内の写真・動画アーカイブを外部に送らずに分類する
← MVのワンシーンに自分の顔を入れる — みんながやる方法は3つ、でも解いている問題が違う レビュアーは同じなのに結果が違う — AI実装の品質はレビューの手前で決まる →