映像関連

映像関連の研究につけられるカテゴリー

止めると見えない動画

INVISIBLEWHILESTOPPING

唐突に思いついたので、止めると見えなくなる動画を作成しました。次をご覧ください。

動画再生中は、正方形が中央を中心に公転運動しているのがわかると思います。

理論的には、次のようになっています。


動画の画素Iを空間と時間の関数\(I(t,x)\)とする。

\(I(t,x)\)が必ずランダムに、\(dI/dt (t,x)\)が、希望する映像を反映したものとする。

すると、動画を再生したときには、\(dI/dt\)が知覚されることによって希望する映像を何らかの形で反映した映像を見ることができるが、静止画では、ある時間\(t\)においての\(I\)しか知覚されないため、ランダム画像として認識される。

このような性質を満たすために、汎関数\(R(I(x))\)を、ランダム性が確保されているかどうかを測定する指標を導入して性質を満たすような画素を常に生成することを考える。(ゼロ以上でランダムではないと判定されるとする。Rは画素の空間的な分布を調べる関数であり、時間的分布は調べない)\(\)

すると、満たすべき条件は、\( R(I(t,x)) <0 \)となる。これは、いかなる時刻においても、\(R(I(t,x))<0\)となるように,\(I(t,x)\)を選べば良いことを示している、

この\(R\)が、どのような関数となっているかについての厳密な議論をすると、大変な文量になってしまうので、ここでは簡易的なモデルを考える。ランダム列とは、等確率性と無規則性を満たすものであるから、この2つを簡易的に調べられるような関数を作成すればよい。今回は、次のようにする。

  • ある領域を準ランダムに選択して、その平均を調べる。この操作を何回か行って、然るべき分布との乖離(二乗誤差とか)から、閾値を引いた値をRとする。

このようにすれば、ある程度の無規則性や等確率性が調べられると考えられる。このとき、準ランダム的に選択、とは、規則的となっている画素列を発見するための選択方法を用いる、ということである。たとえば、

0,1,2,0,1,2,0,1,2,0,1,2

という列は、等確率性を満たしているが規則的である。これを発見するために領域をn=3k+p(p=ランダム)というように選択すれば、(0,0,0,0),(2,2,2,2)のような列が選択されて、平均値の分布は一様分布となる。ランダム列の平均値の分布は一様分布ではないので、これは規則性のある分布であると検出できる。

このように定義されたランダム指標\(R\)を満たすように、I(t,x)を生成する方法を考えたいところだが、一般的な方法論を導き出すのは難しそうなので、より特殊な方法を考えた。それは、次のような方法である。シード値\(h\)により生成されるランダム画像\(J(h)\)があるとする.ここで、hの値が近いほど似たような画像となるようにする。この画像\(J(h)\)は、R<0を満たす。ここで、複数のシード値から生成される画像の部分部分を切り取ってきて、一枚の画像を構成するときも、R<0を満たす[*]。よって、例えば二値化映像を元映像に用いる場合は、黒い部分の領域を\(J(h_1(t))\),白い部分の領域を\(J(h_2(t))\)として画像を構成する(\(h_i(t)\)は連続関数とする)このようにすれば、R<0となるのは明らかで、かつ同色な領域では似たような映像で、色の境界では時間的に不自然な模様(微分が際立つ)ができあがる。

[*]ある領域を準ランダムに選択して、その平均を調べ,それが常に正しい分布になっているようなランダム画像があるとする。この画像から、部分を切り取って、画像を構成するとき、切り取られる部分だけを選択して選んだ準ランダム領域も、正しい分布に従う。よって、正しい分布に従う部分領域を複数用意しても、正しい分布となる。


少々議論が危ういところがありますが、結論をいいますと、複数の「ランダムな画像」から、一つの画像を構成しても、またランダムになることを利用する。ということです。ここで注目するべきなのは、「ランダムな画像」とは、別にノイズ画像ではなくてもよい点です。最初に示した画像は、ランダムな大きさの円が規則的に並んでいますが、これは「ランダムであるということ」が「円の大きさ」だけで判定されるということです。これによって、多様な「止めると見えない動画」を生成することが可能であると考えられます。

最初に示した方法を使って、某有名な影絵を表示してみました。

 

 

 

 

レイトレーシングを実装(v2)

これの続き。

材質を追加しました(ランバート拡散反射)

・結果

image

画像の床部分と大きな球が拡散反射の材質を持っている。

色付き球と床の接触部分付近や大きな球に、色が写り込んでいるのがわかりますね。

 

おまけ 模様つき

rtlbt2

おまけ2 twitter動画埋め込みテスト

レイトレーシングを実装(v1)

慶応大学は、春季休校に入りました。期末試験が終わり開放感を感じる中、自分のまだ知らないことを色々勉強していかなければならないと思いました。

とはいえ、テスト終わりすぐに難しい本やらを読むのは気が引けるので、きばらしとして簡単なレイトレーシングを実装してみることにした。ただしライブラリに頼るのは本末転倒であるので、今回は何もライブラリを使わずに1からやってみようと思った。(しばりプレイ)

・やること
簡単なレイトレーシングをする。
外部ライブラリは一切使わない。(画像表示、画像保存、線形代数、などの基礎ライブラリも使いません)
使えるものはVisualStudio(C++)で標準的に使えるもののみ。

・結果

sphere_rt

表示は自力BMP。

床だけは赤い床で、上からの平行光源と、光を鏡反射する球3つと床のみで構成。

よく見ると、何度も光が反射することによってできる跡が伺える。(床からの反射がわかりやすい)

図形はこのような配置にしている。

図_srr

注:実際はもっと床が下にある。

おまけ 2方向からの光

test02

3方向
test03

【MMD】くぁいい雪ミクで『好き!雪!本気マジック』

こんちぁ~す、いつもはMMD実写合成上げてる奴です。
今日はちょうど来月がクリスマスということで、すこし道をそれて普通のMMDの動画を作ってみました。

いやー、しつこいですけどこれが無料で作れる世の中ってすごいですね。

では、また。

MMD実写合成~その4~足元を魅せよう

全然関係ない話なんですが、「KCS」でぐぐったときのKCSのページよりも「MMD実写合成」でぐぐったこの記事の方が上位に来てて割かしビックリしてかなり責任感じています。

で、本題です。前回のを見てない方はまずそちらからの方が話の流れがわかりやすいかとこの記事のシリーズ一覧は記事の一番下にあるタグから見れば見れるはずです。

正直なところ前回までは技術的な分野の話は一切しておらず、これからもMMD技術的な話はしないつもりですが、これからは実写合成というテーマの元「どうすれば実写っぽくなるか」という点をみなさんと共有していきたいと思います。まぁ、ほとんどが僕の考えたアイデアとかでなくネットで拾ってきた情報なのですが…。

それで、今回は「足元を魅せよう」というお題で進めます。要は影をだそうってことです。 まずこちらを見比べてください。 小さくて差がわかんないのでクリックで拡大してください。

影なし MME付き影なし影あり MME付き影有り

MMDでも普通の黒い影なら出せますが、このように映ったような感じの影の出力には働く床こと「WorkingFloor」(リンク先でダウンロードできます)を使います。今回もそれを使ってます。

ちょっとあまりに細かいところなのでわかりにくいかもしれませんが、足元を見るとミクの影が写っているのがわかります。右側の方が影があってよりそこにいる感じがあります。 よく考えてみればこれは当たり前のことです。なぜなら「現実の世界になんか影響与えてる」->「現実世界にいる」という思考がめぐるのはどこも不思議でないからです。

実際には今回の写真には影以外にもいろいろ弄ってはいるんですが影以外の特性はどちらも共通です。さらに欲を言えば影をぼかすなどの処理をしたいところですが正直このくらいの濃さだとあまり効果がありません。

MMDではなくてaviutlという動画編集ソフトを使って適当にぼかしてみたのですがaviutlで合成 結果は散々でした。合成するときにいろいろ風合いを損ねてしまったようです。しかも、足元はぼけてるって言うより消えてる。 そんなこんなで自分でも言ってみたところで結局できてないというダメダメ度。

で、今更感が否めませんが、この「足元を魅せる」っていう考え方は別に僕が最初に言い始めた訳がなく、事実多くの方が実写合成をする上で重要と位置付けているようです。

1に影をつける。
2にごまかす。(゚д゚)! です。

ごまかすっていうのはもうどうにもならん時はそもそも足元が映らないように工夫するということです。

bokeboke<これでOKちゃうん?

足元がなければ人間が勝手に妄想してくれるので楽でいいですがちょい構図が制限されます。さらに言うなら、多少なりとも合成画像としての質の上限は足元を入れる場合の方に軍配が上がりそうです。

最後になりましたが、今回使ったMMEのクレジットを込めた紹介をさせていただいて終わりにします。 詳細については後日語りましょうかね?

PanelLitght(http://www.nicovideo.jp/watch/sm19123817)そぼろ様

SSAO(http://www.nicovideo.jp/watch/sm13796840)mqdl様

ExcellentShadow(http://www.nicovideo.jp/watch/sm19123817)そぼろ様

dAdultshader((´・ω・`)改造dAdultsShader 15.ぬる肌 – 新肌質201502CGⅣ) (http://www.nicovideo.jp/watch/sm25514069)ドゥドゥ様

それではまた

MMD実写合成~その3~エフェクトを使おう

みなさんこんにちは、どうもです。前回のその2をご覧になってない方はまずはそちらからどうぞ

前回はMMDのすごさを実感したわけですが、今回はその機能をさらにフルにつかっていこうと思います。

元来、MMDとはただの「ミクちゃん躍らせたい」ツールなので、機能としてはモデルを操作するためのもののみでした。もちろん実写合成のことを前提になんかしてないでしょう。なので、実写合成用にいろいろいじっていい感じにしたいところですが、実際、何をいじればいいんでしょうかね?

そこで出てくるものの一つが「MME」というツールです。
MMEとはMiku Miku Effectの略称で、要はMMDにエフェクトつけてくれる優れものです。しかもタダで。
で、その性能なんですが以下をご参照ください。画像はクリックで大きい画像がみれます。

effectなしMMEなし

effectありMMEあり

どうですか。差を感じるでしょ。

もう一度言います。これ、タダです。

いやー、いい時代。っと、こんな感じでいい感じにしてくれるMME様なのですが、MMDに標準で搭載されているわけではありません。というかMMEそのものはMMD開発者の樋口優氏が開発した訳ではなく、舞力介入P氏によって開発されたものなので当たり前といえば当たり前なのですが…。

失礼、閑話休題。

ということでMMEを使うにはそれなりに準備が必要です。最初はそれがおっくうに感じるかもしれませんが、既にそれ関連の記事は大量にありますし、見てわかる通りあるとないとじゃ全然違うのでMMDやるならそれこそ標準で入れるくらいの気持ちでしょうね。

さりげなく先ほど「MME」にリンク入れときましたがそれを見れば大体はわかるでしょう。ただ、最後の方の使い方のあたりは動画の通りでももちろん使えますが、今はもっと便利な使い方ができます。

MMEを入れるとMMDに表示されるようになる「MMEffect」ボタンから「エフェクト割り当て」を選べばいいのです。
それで任意のモデルに任意のエフェクトをかけられるようになります。具体的な動作や使用はエフェクトごとに異なるのでREADMEなどをよく読んで見てくださいね。

それではまた

MMD実写合成の道~その2~

前回の記事からだいぶ時間が経ちましたが、続きを書きたいと思います。

あの動画を見て「実写合成したい」と思ったはいいですが、僕は当時MMDすら触ったこともなく、そもそも実写合成って何すりゃいいのかすらもわからん状態でした。

まず、MMDの使い方についてですがこれは他のサイト様の方で解説されてるところも沢山あると思うのでここでは説明を省かせていただきます。

MMDのはじめかた

なんでMMD使うかなんですが、単純に素材が大量にフリーで出回っていること。これが大きいですね。最近は「金払わなくていいの?」ってレベルのものがゴロゴロしてますからそれだけで使う価値があると思います。

で、大量に素材だけはあるMMDなのですが肝心のアイデアの方が僕にありませんので最初は適当に「とりあえず写真撮ってそれを背景において躍らせればいんでしょ」ってことで作ったのが次の動画。

 

なんつ~か、いろいろ稚拙ですよね。

もし読者様にこれがよく見えたとしたらそれはモデルとモーションのの出来の良さに起因するものであり、僕のした部分はまったく関係ないです。

まず、影の色。
これがあまりにも明るい。これじゃ、陰なのか光ってるのかって感じです。

次に後ろの人間がまったく動いていない。
これはそもそもテストなので、そこはあんまり考えてなかったのですが、やはり後ろに男が座ってるのにまったく動かないと不自然さがぬぐえません。

他にもまわりは本物なのにミクだけどう見てもアニメ調(MMDではデフォルトでアニメ調に描画されます)。
ここら辺も変えたいところです。

まぁ、それでもそれなりに見えてくるのはやはりMMDパワーというところなんでしょうか。

MMD実写合成への道

いきなりですが、この動画をご覧ください。

どうでしょう?

「初音ミク」を御存じない方もいらっしゃるとは思いますが、それにしてもこのモデル。めちゃくちゃ背景の実写に馴染んでますよね。そこに燃えるもとい萌えませんか?

この動画を見て、僕は感じたんです。

「これを日吉でやらなアカン」

そんな訳で僕のMMD実写合成の道が開始されるのでした。