【AE】アニメの主線を二値化から逃したい(2017/10/09更新)



ここで二値化の功罪について書くのも今更感があるので省略しますが、特に作画の方の二値化への殺意は察するに余りあるかと思います。


線画の再現性を高める方法として、セルの解像度だけ上げるというオーバーサンプリング的な手法が思いつきます。確かに効果は高く、ワークフローを一切変えずに済むのですが、如何せんリソースの無駄遣い感が否めません。


そもそも、二値化に関してRetasが戦犯のような扱いを受けていますが、 実のところRetasには「階調線」という手段が用意されています。

これは通常通り二値化した線画を1pxまで細くして彩色、その後にグレースケールの線画を上に重ねるといった機能です。これならば二値化の恩恵を受けて彩色できる上に、線画を二値化から逃がすことが出来ます。色トレス線に繊細なタッチも糞も無いので理にかなった方法です。

じゃあこれで良いじゃんという気がするんですが、そうはいきません。今は彩色段階だけでなく撮影でも二値を利用しますし、作画ソフトが多様化した今、必ずセル素材がRetasを通過するわけでは無いからです。

長い前置きですが、要はAEで階調線的なアプローチを使いたい!というのが今回の主題です。

方法

とりあえずフッテージを二種類用意します。

・通常通り二値化して彩色した画像



・二値化していない彩色前のカラー画像

彩色前&二値化前のカラー画像ですが、ゴミ取り等は済ませた状態である必要があります。アナログの場合はほぼ必ず色トレス線が含まれていると思いますが、デジタル作画のように分離できる場合は最初から主線のみの方が便利だと思います。


この2種類をAEにぶち込んで、二値画像を下に、彩色前の画像を上に配置します。

彩色前の画像は主線のみを抽出したいので、こんな感じのエフェクトを追加してみます。



これは主線が無彩色で、かつ色トレス線が純色である前提です。主線の濃度が低い場合は、適宜レベルなりカーブなりで調整します。

通常の二値画像は主線を消し飛ばして、かつアルファのエッジを縮小したいので
F's Pluguin」の「F's MainLineRepaint (oldじゃない方)」を適用して、主線色を設定します。


そうすると、重ねた状態がこうなります。

あとは二値画像の方にいつも通りエフェクトを追加したりスムージングかけたりすれば良い訳です。
案外簡単な気がします。一番面倒なのは2種類フッテージを用意しなきゃいけないところでしょうか。紙の場合(TraceMan&PaintMan)はゴミ取りするタイミング等色々考えなきゃならない部分が出てくると思います。

補足

2017/10/09 修正しました

過去に「【AE】アニメの線画色を周囲の色に応じて一括で置き換える」というエントリを書いています。
それは階調線で出来るの?という部分ですが、まぁ一応出来ました。



簡易的なものなので、あまり厳密な結果ではありません。

例えば、髪の毛1本を主線のみで描いているような線は残りません。そのような場合は諦めて仕上げ段階でその部分だけ着色したほうが手っ取り早いかと思います。
また、エッジに二値元画像の背景色が混ざる場合もあります。そこは……色々工夫して下さい。はい。

過去エントリでも記載していますが、F'sMainLineRepaintを用いて埋めた主線部分は、例えば顔の上の髪の主線は髪色と肌色で半々の状態になります。
ブラーでボカして誤摩化すでも良いと思っていますが、もう少し良い結果が欲しい場合は、あわせてCelFXのP_Extendを用いると、範囲を拡張する順序でパーツ毎に任意の主線色を割り当てることが(ある程度は)出来ます。
(例えば、顔の上の髪の主線を髪色にしたい場合は、肌色を拡張した後に、髪色を拡張する

それと、F'sMainLineRepaintは「_old」と「無印」で透明との境界部分での動作などが異なるようなので注意が必要です。

もっといい方法あるよ!っていう場合は教えて頂けると幸いです。