「 2016 8月」のアーカイブを表示中です。

投稿者: 望月 宥冶

Maya迷走中

2016年8月30日 (開発者日記)

こんにちは。
明るい家族計画の望月です。

2D画像の処理がトントン拍子で進み、平均顔を使ってβ版を作ろうという話になりましたが、ここで問題発生!

2D画像をどうやって3Dに起こすのか…

Kinectで赤ちゃん人形の顔を撮影し、MeshmixerやMeshLabで加工したり、
babydoll_mesh

Point Cloud Libraryというライブラリを使い、顔のメッシュを生成したりしました。
Point Cloud Libraryは点群情報と画像情報の両方を保持できるフォーマット(.ply)を使用できたので少しだけ便利でした。
pcl

最終的にたどり着いたのが、Mayaを使用し、赤ちゃんの正面画像と横画像からメッシュを生成していく方法です。
2016-08-19
2016-08-23
2016-08-23 (1)
2016-08-30
2016-08-30 (1)

しかし、作成したメッシュをUnityにエクスポートした際にメッシュの情報が欠損し、使い物にならない結果に…
mesh
どうやら法線が裏返っておかしくなってるようで、手直しに非常に手間がかかり、これ以上はメッシュに時間を割けないので、球体に顔画像を張ることで対処。最初の段階でメッシュに関しては考えていなかったことも非常に時間を取らされてしまった感じがあり、今回のことから、妥協点を見つけるということや、ある程度やってみて、実装が非常に難しい(時間がかかる)と感じたことからは手を引く潔さが大切だと思いました。迷宮入りしそうになったときは、目に見えるタスクから終わらせること、初心に返ることを心がけ、メッシュにとりかかる前の目標であるβ版制作にとりかかろうと思います。
2016-08-29 (2)

↑球体を若干潰したオブジェクトに顔画像を張ると、見た目が改善されます!

投稿者: 望月 宥冶

顔の特徴点取得できました!

2016年8月30日 (開発者日記)

こんにちは。
明るい家族計画の望月です。

今回はdlibというC++のライブラリを使用しました。
dlibは画像処理や機械学習などの機能を持ち、顔の特徴点を取得するのに使用しました。

特徴点取得の参考画像がこちらです。
landmark

dlibに用意されている学習データを用いることで顔画像領域の切り出し、ランドマークの検出などが行えます。ちなみにOpenCVを用いても顔画像を切り出すことは可能ですが、それよりも精度よく顔画像を切り出すことができます。

またランドマークはdlibによって、ソートされて出力されるので、モーフィングなどで重要な対応点なども簡単に調べることができます。dlib_face_landmark_point

こんな感じで対応点をソートしてくれます。

ただdlibの導入は少し面倒なのでCMakeの使い方には慣れておいたほうが良いかもしれません。

まだ慣れていないのもありますが構文もかなり難しいです。

また、特徴点が取得できたので、赤ちゃんの平均顔画像も作成しました。
平均顔画像の作成にはOpenCVを使用しました。
baby_face.ave

平均顔の赤ちゃんは非常に可愛いです。
この可愛い赤ちゃん画像から若年変化について考えていきたいと思います。

投稿者: 望月 宥冶

ハッカソン2日目「α版製作」

2016年8月30日 (開発者日記)

こんにちは。
明るい家族計画の望月です。

7月23日、24日に行ったハッカソンの2日目の様子です。2日目の目標は「Wiiリモコンの値で赤ちゃんを制御」、「Mayaで作成したオブジェクトをUnityで読み込み」、「赤ちゃんをViveで制御」です。Mayaで作成したオブジェクトの読み込みは錦澤君が事前にベットのモデルを作成してきてくれていたので、スムーズに行うことができました。球体の読み込みは200*200頂点くらいのものから若干重くなった気がしましたが、許容範囲内でした。
IMG_3175

Wiiリモコンによる制御は、加速度センサの値を取得し、そこから角度を割り出し赤ちゃん(Unityちゃん)と同期。赤ちゃん人形の服の中にWiiリモコンを隠し完成。出来上がったのがこちらです。

Viveによる制御では、素晴らしいものを生み出してしまいました。なにやらサマーレッスン(ロリ)みたいなもので、これを基盤に商品にできそうなイメージでした。プログラム的には、ハッカソン1日目に行ったSteamVRの応用で、あとはHMDを被ったときに違和感がないかどうか調整して完成です。

今回のハッカソンでわかったことはViveが凄いということと、赤ちゃんをどう可愛いと思わせるかが大切だと思いました。今回はUnitychanの迫力が強すぎたということもあると思うので、完成品ではUnitychanを上回れるような作品作りをしていきたいと思います。

© Unity Technologies Japan/UCL

投稿者: 望月 宥冶

ハッカソン1日目「Unity勉強会」

2016年8月30日 (開発者日記)

こんにちは。
明るい家族計画の望月です。

7月23日、24日に行ったハッカソンの1日目の様子です。1日目の目標は「unityを触ること」、「SteamVRの使い方」でしたが、とても良い流れで進んで行き、Kinect v2にも少し触れることができたので、1日目は大成功でした。

浅野君が作成してきてくれたスライドを元に作業を進めた結果、午後までかかる見通しのブロック崩し完成が午前中で終了してしまったため、その後、一足先に午後のSteamVRを我妻君主導のもと勉強しました。
IMG_3166
その後、先ほどUnityで製作したブロック崩しをViveで操作できるようにしたのがこちらです。

一段落したのち、ゲークリで途中抜けしていた浅野君と合流し、来来亭で昼飯兼夕飯を食べ、Kinectを触るはずが、Kinectを動かすために必要なSDK(ver2.0)がWindows7では動かないことが判明し、Windows10にアップグレード。なんとかKinectを動かし、サンプルプログラムから赤ちゃんを3Dスキャンしました。
IMG_3171
赤ちゃんの深度がうまく読み取れているのか疑問が生じましたが、隣に移ってる人の深度はしっかり読み取れていたので一安心。人形程度の凹凸だとあまりよくないようですが、人間相手なら十分使い物になると思います。

ソフトウェア的なことはここまでで終わりですが、夜に合流した武田君とパソコンを組み立てて、1日目は解散しました。余談ですが最近のBIOSがしっかりしすぎていて、すこし驚きました。
IMG_3172
IMG_3174

投稿者: 望月 宥冶

ハッカソン発表会とα版レビュー

2016年8月30日 (開発者日記)

こんにちは。
明るい家族計画の望月です。

前回のハッカソンで作成したwiiリモコンを使った赤ちゃん制御を改良し、HMDで制御できるようにしました。
発表会の様子も載せておきます。

ゲームデザインのより深いところを考えられるような発表会になりました。
「可愛い」についての論文を読みつつ、顔画像についても挑戦していきたいと思います。

© Unity Technologies Japan/UCL

投稿者: 望月 宥冶

赤ちゃんプロジェクト始動

2016年8月30日 (開発者日記)

初めまして。
明るい家族計画の望月と申します。

IVRCに応募した企画書が無事当選し、今後はプロトタイプ制作に励みたいと思います。

今回はチームメンバーと企画について紹介していこうと思います。

明るい家族計画のリーダーであり、”Real baby / Real family”の立案者。Blogの記事は主に私が書いていきます。

顔技術担当。顔に対する情熱が凄まじい。この企画の要。

コンテンツ担当。企画書制作以降からチームに加わって頂き、Unityを自由に使いこなす。別プロジェクトにも参加しているようで多忙。

    • 我妻 大樹

ハードウェア系、VR技術担当。別学科からの参戦で、上記3人とは持っている技術が違うため、話しているだけでとても勉強になる。

以上のメンバーでIVRCのプロトタイプ制作に挑んでいきます。

最後に企画紹介

タイトル
「Real baby / Real family」
概要
これは新しい家族の愛を体験できるVRです。お友達やカップル、同性のお友達の顔画像を合成し、赤ちゃんの顔画像を生成します。HMDを装着したまま、赤ちゃん人形をあやしてみましょう。きっと、体験者は子供とパートナーをかけがえのない存在として認識することができ、未来のコンピュータと人間の関わりについて深く考えることができるでしょう。

企画書はこちらから

赤ちゃんを作るVRです。唯一無二の存在を作り上げれるように頑張っていきたいと思います。