本文へスキップ

構図・カメラ・視点の指定

Danbooruの構図タグがどこで画面を切るかを実データと公式定義で示し、カメラ角度・視線タグの併用ルールと事故パターンをまとめる。

Danbooruの構図タグは「フレーミング(被写体がどこで切れるか)」「カメラ角度」「被写体の向き・視線」という3つの独立した系統に分かれている。この3つは別々のタグ群であり、1つのタグで全部を指定することはできない。逆に言えば、3系統から1つずつ選んで組めば構図はかなり安定する。

以下のpost_countはすべてDanbooruの実測スナップショット(2026-08-21時点)である。件数は「そのタグでモデルが何枚学習したか」の目安で、Laxhar Lab(NoobAI開発元)の公式マニュアルは再現度の指標として「スタイルなら100件以上、キャラなら200件以上」という基準を挙げている。ただしこれはキャラ・画風タグに対する基準なので、構図タグへの適用は外挿である。目安として、件数が2桁3桁のタグは書いても反応が薄いと考えてよい。

フレーミング — 上から下へ、どこで切れるか

Danbooru公式wikiの定義に沿って、切れる位置が浅い順に並べる。

タグ画面に入る範囲(公式wiki定義)post_count
close-up被写体を至近距離で写す。部位focusタグと組む63,094
portrait顔が主体。脇の下〜胸より下に落ちてはいけない。落ちるならupper body140,803
upper bodyおおむね腰から上。頭が入らない場合もある1,178,713
cowboy shot腿から上+顔。脚は画面下端で切れる。切れる位置は腿あたりが典型で、膝のすぐ上までなら可841,617
feet out of framefull bodyとほぼ同じだが両足が画面外。すねの一部が切れてもよいが膝は画面内236,060
full body全身が写り、かつフレームの大半を占める。髪・服・翼・尻尾の端が切れるのは可1,264,758
wide shot全身が写るが画面の25%以下。サムネで人物の存在は分かる23,540
very wide shotサムネでは個々のキャラが判別できないほど小さい2,216
lower bodyおおむね腰から下。尻だけならclose-upass focusを使う8,077

cowboy shotは西部劇の「腰のホルスターと顔を同時に写す」画づくりに由来する用語(英語圏ではAmerican shot)で、日本語の「膝上ショット」よりやや浅い。件数が84万件と多く、Illustrious公式モデルカードも推奨枠に挙げている、扱いやすいフレーミングタグである。

対してlower bodyは8,077件しかない。腰から下だけを狙いたい場合は、このタグ単体に頼らずfrom belowや部位focusタグ(ass focus 45,246 / foot focus 36,928 / thigh focus 1,211)と併記したほうが確実に寄る。

「フレーム端で切れる」と「フレーム内で切れる」は別タグ

ここは日本語の感覚だと混同しやすい。

タグ意味post_count
cowboy shot / feet out of frame画像ので脚が切れている841,617 / 236,060
cropped legs脚が画像の内側で途切れている(端との間に隙間がある)70,921
cropped torso腰から上は写っていて、下半身が画像の内側で途切れている73,795
head out of frame頭が画面外に出ている(胴は画面内)28,876
foot out of frame片足だけが画面外41,358
knees out of frame膝だけが画面外にはみ出す。下腿と足は画面内。膝から下がまとめて画面外ならcowboy shot1,993

cropped legs系は画像の端ではなく内側で断ち切る表現なので、普通のイラスト構図を狙って書くと宙に浮いたような不自然な切れ方が出る。なおtachi-e(立ち絵、79,064件)は別系統で、公式wikiの定義は「無地背景に単体キャラをstraight-onfull bodystandingで置いたビジュアルノベル用スプライト」。cropped legsとの共起は47件しかない。

なおcropped(14,622件)はDanbooruのカテゴリ5(メタタグ)で、画像の内容ではなく「加工されているか」というメタ情報を表す。この種のメタタグは画像内容と相関しないため、プロンプトに入れても構図制御には効かない。

カメラ角度

タグ定義post_count
from side真横90°から前後45°までの範囲で横から見る332,482
from behind背後から見る。looking backまたはfacing awayと組む326,135
dutch angle画面自体を傾ける。90°傾けたらsideways(6,114)161,816
from above見下ろし。被写体の小ささや高さ差を示す144,319
from below見上げ。地平線が画面下端付近かそれより下に来る118,237
foreshortening短縮法。手前の腕や脚が誇張されて大きく写る68,900
straight-on頭・胴・腰すべてが真正面0°。どこかが横を向いていたら該当しない59,846
upside-down上下逆さま34,431
fisheye魚眼レンズ的な歪み6,738
perspective奥行き・立体感を強く強調した画。件数が少なく効きは弱い9,651

角度タグ同士は基本的に排他である。from abovefrom belowの共起はDanbooru実測で762件、重なり率にして0.64%しかない。両方書くのは学習分布の外側で、視点が定まらない絵が出る直接の原因になる。

from belowには注意が必要で、公式wikiが関連タグにpantyshotupskirtを挙げ、「単にスカートの中を見上げるためにもよく使われる」と書いている角度である。実測ではfrom belowのうちpantyshot併記が5,608件(4.7%)、upskirtが7,550件(6.4%)、explicit比率は15.8%でDanbooru全体の10.1%の約1.6倍。極端な偏りではないが、ローアングルはそちら側の構図分布をいくらか引き込む。rating指定なしでfrom belowに強い重みを掛けるのは避けたほうがよい。

視線・向きは角度タグとは別レイヤ

カメラの位置(from *)と、被写体がどこを向いているか(facing * / looking *)と、顔が横向きに見えているか(profile)は、すべて独立したタグである。

タグ意味post_count
looking at viewer目を開けて視線がカメラを向く。全投稿の約40%を占める最頻出タグ4,849,298
looking at another画面内の別キャラを見る429,785
looking back振り返る。from behindと最も自然に組む361,843
looking to the side横を見る277,820
profile顔の片側が見えている状態(カメラ位置ではない)180,130
looking downうつむく。頭ごと下を向いた状態で、目だけ下向きならdownturned eyes。カメラ角度ではない137,758
facing viewer体は正面を向くが、目を閉じている・隠れている・別方向を見ているとき。目を開けてこちらを見ていればlooking at viewer101,839
looking up見上げる99,492
eye contactキャラ同士が目を合わせる68,323
looking afar遠くを見る25,453

looking downfrom aboveを取り違える事故が多い。from aboveはカメラが上にある状態、looking downはキャラが頭ごと下を向いている状態で、両立もするし片方だけでも成立する。同様にfrom belowlooking down(見上げるカメラに対してキャラが見下ろす)は矛盾ではなく、むしろよく使われる組み合わせである。

斜め45°の向きを表すthree-quarter viewはDanbooru上にpost_countが0のタグレコードしかなく、学習信号がまったくない。斜め向きが欲しい場合はfrom side(真横90°から前後45°までを含む定義)を使うか、0°限定のstraight-onprofileも書かずに角度をモデルへ委ねる、という消去法で作る。

POVと複数人フレーム

pov(197,521)のDanbooru公式定義は「一人称視点の画像」で、「通常は視聴者側の身体の一部(腕など)が写っている」と補足される。視点側が何も写らず、キャラがカメラを見ているだけならlooking at viewerを使う、と明記されている。

そしてpovはレーティング分布が極端に偏っている。Danbooru全体のexplicit比率は10.1%だが、povが付いた画像のexplicit比率は63.9%(基準の6.3倍)、generalはわずか11.5%である。on backは40.7%、lyingは31.6%と、一見中立な構図タグほど偏りが強い。

構図タグ全体件数explicit比率基準比
pov197,52163.9%6.3倍
on back354,17140.7%4.0倍
lying616,72031.6%3.1倍
close-up63,094約10.9%ほぼ基準通り

つまりrating系タグは「露出を止める」ためではなく「構図の分布をどちら側に固定するか」を決めるために書く必要がある。逆にgeneralsafeを強く指定すると、explicit帯に偏在するPOV・寝そべり・極端なローアングルが出にくくなり、構図の自由度が下がる。「SFWなPOVショット」が作りにくいのはこれが理由である。ただし、この分布の偏りはDanbooru側の実測であり、「モデル内部で構図分布がどれだけシフトするか」という因果の効果量を測った公開実験は見当たらない(コミュニティ合意レベルの解釈として扱うべき)。

複数人が写るが1人に寄せたい場合はsolo focus(497,876)を使う。POVの相手役がいる構図はこれに該当する。soloは「1人しか写っていない」ことを意味するので併用しない。solo2girlsの共起は実測504件(0.036%)で、事実上の排他である。

multiple views(267,225)は同一キャラを複数カット並べる構図で、Danbooru公式wikiが「multiple viewsの画像にsoloを付けてはならない」と明記している。

書いても効かない別名

Danbooruにはエイリアス(同義語の転送)があるが、モデルの学習キャプションに書かれるのは転送先の正規名だけである。したがってエイリアス側の綴りをプロンプトに書いても学習信号はゼロになる。

書きがちな表記実際の正規タグ
closeupclose-up
bustupper body
low anglefrom below
view from below / viewed from belowfrom below
aerial view / view from above / viewed from abovefrom above
back view / from back / back turnedfrom behind
side view / sidefrom side
head-onstraight-on
upside down(ハイフンなし)upside-down
focus blurdepth of field
male povpov
headshot (composition)portrait
legs onlylower body

一方、medium shot / long shot / establishing shot / waist up / high angle / wide angle といった映画・写真用語は、Danbooruのタグにもエイリアス表にも対応が見当たらない。これらはDanbooruタグとしては機能せず、CLIPの一般英語理解に頼るだけになる。

併用ルールと事故パターン

組み合わせ判定根拠・代替
full body + portrait排他共起1,157件(重なり率0.82%)。どちらか1つ
from above + from below排他共起762件(0.64%)
solo + 2girls / multiple girls排他共起504件(0.036%)
solo + multiple views不可Danbooru公式wikiが明示的に禁止
close-up + full body矛盾写る範囲が正反対。共起1,494件(2.4%)
from behind + looking at viewer要注意共起15.6万件と多いが、その77%はlooking backも併記されている。振り返り指定を足すほうが学習分布に沿う
dutch angle + sideways冗長90°傾けたものがsideways。片方でよい

フレーミングタグの重ね書きも事故のもとで、Illustrious公式モデルカード(v0.1)は逐語で次のように警告している。「close-upupside-downcowboy shotのような critical composition タグを多用することは推奨しない。互いに矛盾してモデルを混乱させ、結果に影響する」。同カードが推奨するのは、用途に応じてupper body / cowboy shot / portrait / full bodyから適切なものを選ぶ運用で、重ね書きを避けるという趣旨である。

構図タグに強い重みを掛けるのも得策ではない。A1111の既定の強調モード(Original)はチャンク全体の平均を元に戻す再スケールを行うため、(from below:1.4)のように1つのタグを上げると同じ75トークンチャンク内の他のタグが相対的に縮む。SDXL系では作者自身がコード内で「No norm」(平均復元なし)のほうがよいと述べており、Illustrious / NoobAI / PonyはすべてSDXLである。またComfyUIは重みの計算式自体が異なるため、同じ1.4でも結果が一致しない。構図が出ないときは重みを上げるより、矛盾タグを外すか件数の多いタグに言い換えるほうが効く。

奥行きと背景の指定

タグ用途post_count
simple background単色・無地背景2,816,786
white background白背景2,308,420
blurry background背景ぼけ184,556
transparent background透過背景176,920
depth of field被写界深度表現124,796
scenery風景主体(人物が主でない)74,195
horizon地平線・水平線を画面に入れる29,150
cityscape街並み23,845
bokeh玉ボケ10,665
vanishing point消失点。件数が少なく効きは弱い1,546

背景タグは構図の切れ位置と干渉しにくいので、フレーミング系より安全に足せる。ただしsceneryは「人物が主体でない」という意味を含むため、キャラを大きく写したいときに入れると引きの構図に寄る。

タグを置く位置

Illustriousの技術レポートが公開している学習時のスキーマは person count ||| character names ||| rating ||| general tags ||| artist ||| score range ||| year modifier で、構図タグはgeneral tagsの枠、つまりratingより後ろに来る。NoobAIのモデルカードは <1girl/1boy/1other/...>, <character>, <series>, <artists>, <special tags>, <general tags>, <other tags> としており、こちらもartistより後ろである。

ただし「推論時にタグ順が結果を変えるか」について、Onoma AI・Laxhar Labのいずれも公式な定量的言明を出していない(一次情報での確認は取れていない)。NoobAIの公式マニュアル自身も「誤った順序の影響は明らかでないことが多く、場合によってはかえって良くなることもある」と書いている。

一方で確実なのはトークン位置の話で、SDXLのCLIPは75トークン単位でチャンク分割される。構図タグは絵の骨格を決めるので、第1チャンク(先頭75トークン)に収める。またSDXLのpooled埋め込みは第1チャンクからしか取られない実装になっているため、BREAKを75トークンより手前で入れると、それ以降に書いた構図タグはpooled条件付けに一切寄与しなくなる。

実務上の組み方

構図は「フレーミング1つ + カメラ角度0〜1つ + 視線1つ」の3点で組むと安定する。

1girl, hatsune miku, cowboy shot, from side, looking at viewer,
simple background, masterpiece, best quality

引きの画にしたいときは、full bodyではなくwide shot(23,540件)を使い、背景タグを足して人物比率を下げる。

1girl, wide shot, scenery, cityscape, from above, looking up,
depth of field, masterpiece, best quality

複数キャラの構図制御はタグだけでは限界がある。Illustriousの技術レポートは「Danbooruのデータセットはタグベースのメタデータに依存しており、画像を多次元的に記述することが難しい。この制約が、複数キャラの構図と配置を制御する上での課題を生んでいる」と明記している。Danbooruのタグは画像単位でフラットに付くため、「どの属性がどのキャラに属するか」という情報が学習データに存在しない。人物ごとの配置を厳密に決めたい場合は、プロンプトではなくRegional PrompterやForge Couple、ComfyUIのAttention Coupleといった領域指定の仕組みを使うことになる(ただしこれらも完全な分離は保証されないと各リポジトリのドキュメントが明記している)。