WISS 2023

三つ編みに基づいた髪型デザインのためのインタフェースの設計と実装
村松 知弥 ∗

荒川 薫 ∗

五十嵐 悠紀 †概要. 3 次元コンピュータグラフィクス（3DCG）は映画，ゲーム，バーチャルリアリティなどの分野でますます重要となってきた．髪型はキャラクターの外観や個性を決定する重要な要素であり，そのモデリングは 3DCG プロダクションの重要な課題である．本研究では，単一視点で描かれたラフなスケッチを入力とし，複雑な 3D ヘアスタイル（例：ポニーテールや三つ編みなど）をモデリング可能にする新しい髪型オーサリングインタフェースを提案する．従来の髪型モデリング手法は高度なスキルと時間を必要とし，ユーザフレンドリーではない．提案するインタフェースは，ユーザが直感的なスケッチを使用して髪型を設計し，3D モデルに変換するための新たなアプローチを提供する．これにより，3DCG アーティストやデザイナーは効率的に髪型を制作し，クリエイティブな自由度を向上させることが期待される．

1

はじめに
3 次元コンピュータグラフィックス（3DCG）においてリアルな毛皮の表現は重要な要素である．人間の髪の毛は，非常に複雑な構造を持ち，ヘアスタ
イルのバリエーションも非常に豊富である．これらは魅力的なバーチャルアバターの作成に欠かせない要素だが，その作成は最も困難なものの一つとなっている．最先端のヘアモデリング技術は，通常，高価なキャプチャデバイスと多大な手作業に依存している．そこで，スケッチベースの新しい髪型オーサリングインタフェースを提案する．これは，三つ編
みパラメトリックモデルと少数のユーザストロークを用いて，ラフなスケッチ入力から写実的な 3D ヘアモデルを作成可能にする（図 1）．

2

2.1 一般的な髪型モデリング手法
3D モデリングにおいて毛髪を正確に再現することは大きな課題となっている．それは毛髪の鏡面性が高く画像解像度よりも細いためキャプチャリングが難しく，またオクルージョンの影響により 3D の形状を推定することが困難だからである．そのため，髪型のデザインはアーティストが手作業で時間をかけて行うのが一般的となっている．この際，ガイドヘアと呼ばれる複数の髪の毛の代表的な役割を持つものを扱う．ガイドヘアを幾何学的に編集して髪形の形状を作成し，その間の髪の毛を手続き的に補間することで全体のヘアを生成する．しかしこの手法はユーザが面倒な手作業を行い，頻繁に視点を変える必要があるという課題がある．

2.2

図 1. ユーザの入力ストロークに対して，パラメトリック三つ編みモデルをフィッティングする．

キャプチャベースのアプローチ

キャプチャベースの手法は，実際の髪型データをキャプチャし，それをもとに 3D 髪型を生成するアプローチである．Hu らは，1 台の RGB-D カメラから得られる入力データから，編み込みヘアスタイ
ルを自動的に再構成するデータ駆動型のシステムを提案した [2]．しかし，これはハイエンド 3D キャプチャーシステムを使用し，詳細な設定でキャプチャする必要がある．また，インタラクティブにキャプチャ結果を編集，制御することはできないという課題がある．

2.3
Copyright is held by the author(s). This paper is nonrefereed and non-archival. Hence it may later appear
in any journals, conferences, symposia, etc.
∗明治大学†
お茶の水女子大学

関連研究

スケッチベースのアプローチスケッチベースの手法は，ユーザが 2D スケッチを使用して髪型をデザインし，それを 3D モデルに変換するアプローチである．Wither らは，リアルなヘアモデルを対象とした，初のスケッチシステムを提案した [3]．これはユーザのスケッチから物理ベースの髪のモデルのパラメータを推論している．

WISS 2023

しかし，モデルの性質上ポニーテール，三つ編みなどといった分け目や束縛のある髪型を扱えない．Huらは，データ駆動型のアプローチを用いたスケッチベースシステムを提案した [1]．これはユーザの入力ストロークをガイドとし，各ストロークに対してデータベース内から最適なヘアスタイルを自動的に検索し，1 つのヘアスタイルに自然に統合する．しかしデータベースへの依存性が強く，未知のヘアスタイルには対応出来ない．

3提案手法

スケッチインターフェースによる少数のユーザストロークの入力と三つ編みパラメトリックモデルを用いて，三つ編みを含む複雑な 3D ヘアモデルを作成可能にするシステムを提案する．

3.1

三つ編みパラメトリックモデル

本提案ではパラメトリック三つ編みモデルを作成する．これは三つ編みの構成本数や半径といったパラメータを複数所持しており，リサージュ関数に基づくモデルである．ユーザのストロークカーブを構成する点列を cv ，cv の数を Ncv ，ストロークの線の長さを Length，三つ編みの構成本数を Nstrands ，結び目の周波数を F としたとき，式は以下のとおりである．


x(t) = A sin(2π(F α(t) + δ))S(t) = y(t) = B sin(2π(F β(t) − δ)) t ∈ (0, 1)
z(t)+ = ω
ここで，A, B は各 CV での三つ編みの幅と高さを表すスカラ値とし，β/α = 0.50，

δ = i/Nstrands , i ∈ (1, Nstrands )ω = Length/Ncvとした．F は上から見て八の字が一周すると一周期となる．今回は三つ編みとしたため Nstrands = 3 とした．

3.3

4.1議論
スケッチインターフェース

ユーザの入力したスケッチは 2D の情報しか所持していないため，奥行き情報を推定する必要がある．
現段階の実装では，奥行きの座標は頭部モデルにスナップ，あるいは最終的に接触していたメッシュの地点の座標を採用することで算出している．これだとまだ見た目はもっともらしくなく，自由度も低い．
この問題に対処するために，任意に移動変形できるガイドキャンバスを配置可能にすることがあげられる．あるいはスケッチ中に物理特性と三つ編みの形状を考慮し計算が可能ではないかと考える．具体的には，重力，髪束同士での衝突，曲率といった毛髪の物理特性とともに，三つ編みの半径を計算することでより写実な表現が可能になると期待できる．

実装

提案手法の実装は Python3 を用いた．既成のファーレンダラーとして Blender を使用するとともに提案システムを Blender のアドオン形式で実装した．

3.2

4モデルのフィッティング・生成

ユーザの入力したストロークに対してパラメトリック三つ編みモデルをフィッティングする（図 1）．
上記のモデルをもとに，ストロークの法線，接線を算出し，ストロークに添うようにモデルを生成する.

4.2

パラメータの最適化

パラメトリック三つ編みモデルは様々なパラメータを持っており，そのパラメータの数値に基づいて三つ編みの形状をプロシージャルに生成するものである．しかし，これを用いた手法の問題点として，望ましい見た目の結果を得るための適切なパラメータの設定の困難さがあげられる．通常は専門家が経験や試行錯誤をもとにパラメータを設定している．
現段階の実装でも，ユーザが適切な値を見つけ設定し調整する必要がある．そこで，ユーザによるジェスチャやスケッチの位置，サイズをもとに半自動でフィッティング出来るようにしたいと考えている．具
体的には，波線入力をジェスチャとし，波形の振幅数や半径といったパラメータを取得し，それを三つ編みの概形に反映するといったアプローチが想定される．このように、シーンやジェスチャの情報をもとに、ユーザが手間をかけずとも最初からある程度見た目のもっともらしい形状を計算し生成可能なシステムを目指す．

参考文献[1] L. Hu, C. Ma, L. Luo, and H. Li. Single-View
Hair Modeling Using a Hairstyle Database. ACM
Trans. Graph., 34(4), jul 2015.
[2] L. Hu, C. Ma, L. Luo, L.-Y. Wei, and H. Li. Capturing Braided Hairstyles. ACM Trans. Graph.,33(6), nov 2014.
[3] J. Wither, F. Bertails, and M.-P. Cani. Realistic
Hair from a Sketch. In IEEE International Conference on Shape Modeling and Applications 2007
(SMI ’07), pp. 33–42, 2007.