Category Archives

26 Articles

ニコニコ技術部京都ミーティング2010(NT京都)に出展してきた。

3月27日、京都で行われたニコニコ技術部京都ミーティング2010(通称:NT京都)に出展者として参加して来たのでレポート書きます。
・春日神社
SANY0301.jpg
会場は右京区にある春日神社の構内の幼稚園です。が、外見も中もとても幼稚園とは思えないような綺麗な会場でした。
朝6時過ぎくらいに家を出発したのに、会場に着いたときには9時を過ぎてました。(´Д`;)遠い
10時から開場になるので急いで自分のブースの準備をして、準備が完了した頃には開場し、開会式的なのが始まってニコ生でも生放送が始まってました。
開会式では諸注意や、各出展者がひとりずつ喋って、それから展示物紹介の時間がスタート。
そういう私は何を展示したのかというと・・・
SANY0303.jpg
「初音ミクに触りたい」
・・・と題しまして、画面の中のはちゅねミクを指で触って遊ぶ事のできるものを展示しました。
これは大学の卒業研究の副産物として出来た物なのですが、卒業研究の「Shadow touch!!」で使った、
指の三次元位置計測の部分を使用して、指の座標を取得してはちゅねを突っついたり掴んだり投げたり積み重ねたりできちゃうんです。
スライド1
スライド2
具体的にはWiiリモコンを2台使って、2台のWiiリモコン内の赤外線カメラの座標の視差から指につけた反射材の三次元座標を計算して物理演算ワールド内で指オブジェクトを生成しているわけです。
ただ、赤外線を反射する・発する物があると誤作動を起こしてしまうので、開場では外から入ってきた日光だったり、
正面に置かれたパイプ椅子なんかの金属に反射して誤作動ばかり起きてしまい、見に来てくださった方にはすごく情けない所を見せてしまいました・・・orz
でもそんな中、多くのお褒めの言葉を頂きとても嬉しかったです^^
やっぱり色々な感想をいただけると制作意欲が沸きますね!本当にありがとうございました!
すでにレポート動画を上げている方がいました!私の作品は、2:44~あたりからです。
【ニコニコ技術部】NT京都201003 に行ってきたレポート

展示物紹介をするのにいっぱいいっぱいで、なかなか他の出展者の所を見に行く時間がありませんでしたが、少しだけ途中で抜け出して他の方の作品を見に行けたので、ここからは他の方の作品を紹介させていただきます。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

石川コンテンツマーケット2010に出展しました。

Shadow touch!!を石川県で毎年行われているメディアコンテスト「石川コンテンツマーケット2010」に出展しました。
shadow_poster10s.jpg
Shadow touch!!を大学外に持ち出して一般に公開するのはこれが初めてでしたが、赤外線LEDの関係で今まで納得の行く動作が出来てなかったのでかなりの不安がありました。
しかし、直前まで卒業旅行や卒業式、研究室・アパートの引越しや不動産屋とのトラブルなどで手直しする暇もなく、ポスターも作ったのに印刷する暇も無くそのまま本番当日を迎えることに・・・。
そして当日の今日はミス&ハプニングのオンパレード!
・朝からポスター印刷する為に早起きして大学の施設に行ったのに、休館日で印刷できなくて無駄に時間を費やしてしまう。
・そのせいで肝心のShadow touch!!のセッティングが時間に間に合わない。
・セッティングが終わってお客さんに作品の説明をしてる最中にエラーでプログラムが止まる。
・キャリブレーションに時間がかかりすぎてお客さんをかなりを待たせてしまう。
・色んな光が入ってきているためにWiiリモコンが誤作動。
・やっぱり指の位置を取得できる範囲が狭い。

そして私はそんなボロボロの作品の展示を、事もあろうか「Wiimoteプログラミング」の著者である金沢高専の小坂先生の目の前のブースでやってのけました。(´Д`;)
命知らずもいいとこですよね。世界のイチローの前で自分の野球の腕前を自慢している様な気分になりました。
その小坂研究室はというと、
妊婦体験システム MommyTummy(マミータミー)
口臭を用いた吹き矢型デバイス La fl醇Qche de l’odeur(ラ・フレッシュ・デ・ロドー)

の2つを出展されていました。
SANY0269s.jpg
・小坂研究室ブース
Shadow touch!!を制作するにあたり小坂研究室のホームページにはとてもお世話になっていたので、この2つの作品については良く知っていました。
しかし、どちらも実際に体験をさせて頂きましたが、予想以上の完成度に驚きました。
マミータミーはお腹が大きくなるだけではなく、本当にお腹に赤ちゃんが入っているかのように、温もりやお腹を蹴る動きが体に伝わってきました。さらに、赤ちゃんに悪い影響を与える激しい動きをすると赤ちゃんの機嫌が悪くなり、
お腹を蹴ったりしますが、逆になでたりしているとおとなしくなったり、妊婦だけでなく赤ちゃんの気持ちまで考えた作品でした。
プレゼンも「ご妊娠おめでとうございます!」から始まり最後には自分の写真付き母子手帳をもらえるという個性あふれるプレゼンで、とても引き込まれました。
ラフレは口臭の強い弱いによって強さの変わる吹き矢で敵を倒していくゲームで、ゲームはもちろんとても細かく作りこまれてますが、今回初めて見たのは臭いをつけるための食べ物の容器が光ったり振動したりして、口臭を有効に高める食べ物をナビゲーションしてくれるようになっていました。また、最後に口臭の推移をグラフでかなり細かく表示されるようになっていた事にも驚きました。これにより食べ物の好き嫌いが無くなる!というのが売りらしいです。
他にも小坂研究室の学生さんと沢山お話をしたので、ゲームのいたるところに隠された「ハルヒ」や「らき☆すた」の絵の場所も教えてくれたり、色々な研究に対する情報交換ができてすごく楽しかったです。
また、Shadow touch!!の事もブログで書きますと言って頂いたので嬉しくて仕方ないです(^ー^)
小坂研究室の他にも、去年も出展されていた代々木アニメーション学院の方や、3DCGのモーションアクターをさせていただいた有限会社アイロジーさんなど以外にも知っている方が多く、会話も弾みました。
SANY0290s.jpg
・俺のモーションでサルが踊ってるー♪(有限会社アイロジーさん)
肝心のShadow touch!!の反応はというと、意外や意外。「発想がすごい!」「面白い!」「どういうことなの・・・」というお声を多数頂き、地味にウケは良かったです。どんどん知り合いを集めて連れてくる熱狂的なファン(?)の方までいました。
特に子供たちは純粋だから、本気で不思議がってすごく楽しそうに遊んでくれていました^^
そういや途中でNHKの取材が来たから俺テレビ出れるんかな!?(笑)
そしてコンテストの結果ですが、大賞は小坂先生のマミータミー。
残念ながらShadow touch!!は賞に選ばれませんでした。
だけどもだけど、授賞式が終わった後に審査員をやっていたエイベックスの方が、わざわざ感想を言いに来て下さったので俺はもうそれだけでお腹いっぱい^^
小坂先生とエイベックスの方はさすが全てお見通しですね。「作品の目的をしっかり考えた方が良い」「もう少し中身を膨らませた方が良い」とイターイ所を突っ込まれてしまいました(笑)
といっても研究費で買った機材等は研究室に返却したので、Shadow touch!!はもうこれ以上触れなくなってしまいましたが、これからもまた違った形でこの技術を活かした物を作って行きたいと思います。

初音ミクに触るインタラクティヴ・アート -Miku touch!!- ってか!(笑)

ギャー!!
物理演算ミク
ただいま制作中のShadow touch!!にお遊び要素入れようと思って「M」キーで初音ミクを投入できるようにしたら、
Shadow touch!!じゃなくてMiku touch!!になってしまった!!
ミクに直接手で触る事ができるし、掴み上げて下から覗く・・・なんてことも出来てしまいました。ハァハァ・・・じゃなくて!
そんなことよりもっと指の3次元座標計測の精度上げろよって感じです。
でも画面の中のモデルに手で触る事が出来るってなかなか面白いですね!だれかこの技術を使って紳士的なゲームを作ってください(笑)

卒研メモ

最近卒研の制作が思うように進まなくてやる気が起きない…。
でもやらなければいけない事は増える一方
自分が忘れないようにこれからやる事をメモメモ…φ(..)
■ソフトウェア
・インターフェースの作成。
インタラクティヴ・アートなので作るかわからなくなってきた。
・モデルのバリエーションを増やす。
DOGA-Lシリーズではそろそろ限界か。MAYAを使おうか。
・二次元で取得した手の位置で3Dモデルの座標を操作する。
ステレオ画像による三次元計測を使う。
・物理演算ライブラリの導入。
Black Curry Engineというフリーのものを使用。
・リモコン距離でライトの範囲変化
反射板を2点以上配置してリモコンに映る2点の距離で遠近を擬似的に再現。
・ポイントを見失った時にゆっくりフェードアウト
現段階では光の飛びが多く見栄えが悪い。
・物理演算の影をアルファを高さと連動させる。
現段階では影の濃さが変わらない。ズレは修正済み。
■環境設営・ハードウェア
・設置場所を考える。
高さのあるラックのような物の一番上にプロジェクター。投影台と同じ高さにはWiiリモコンを設置。
もしくは布を張り、下からプロジェクターで投影して手の影が落ちないようにする。
赤外線の影響を受けるので、周囲を黒い布で囲み直射日光が入らないように気をつける。
・地面に投影する方法。
鏡を使うのが有力。大きめの鏡と固定する物を準備する。
・2つのWiiリモコンを定位置で固定する物を作る。
2つのリモコンの距離を固定する事はステレオ画像による三次元計測で重要になる。
・手に反射板をつける方法。
手袋⇒たくさんの人が使うと気になる人がいるかも。
指サック⇒つけるのが簡単で気軽に付けれる。
マジックハンドなど⇒間接的にさわるのでリアリティが薄れるが、ゲームのような感覚になり面白いかも。
意識をせずに行動を制限できるので、誤作動を減らす効果もあるかも。
・懐中電灯型ポインティングデバイスの作成
100均で買ってきて型だけ使う?
・キャップ方再帰性反射板
指につけるためのキャップ。指サックを使う?
■発表準備
・発表用スライド。
来週水曜に中間発表。早めに完成させる。
・PR用ポスター。
石川コンテンツマーケット出展用のポスターなど。1月ごろまでに。
・卒論用まとめ。
卒論を書きやすいように少しずつまとめていくべし。
・テーマをどのように結論付けるか。
実際に体験してもらって感想を聞き、不思議な感覚を体感してもらえた的な感じでいけないか。
・アブストラクト、プロジェクトレポート作成。
2月1日提出。
自分を焦らせる為のメモですが…
思い出し次第追加していきます。
12月6日追記完了

AR(拡張現実)&Wiiリモコンをやってみた

前から拡張現実と呼ばれるARWiiリモコンを組み合わせた物を作ってみたいと思っていました。
そこで、今回は卒業研究の方も順調に進んでいる(?)ので、一晩でARとWiiリモコンを組み合わせた作品を作る事にしました!
miku
↓動画は下のほうにあります。
ARとWiiリモコンを組み合わせるにあたり、初めはFLASHで実装しようと思いました。
というのも、FLASHはWeb上で実際に動かせる上に既にFLARToolKitというFlash用のARが作られていて、さらにWiiFlashというサーバーソフトを使えば、FlashのActionScript3.0とWiiリモコン間で情報をやりとりできるからです。
しかし!!
WiiFlashですが、研究室のパソコンでは動いたのですが、同じように自分のノートパソコンにインストールしてサンプルを動かしても動かない(´Д`;)
色々調べましたが、問題はFlashでもWiiリモコンでもなく、「Bluetoothスタック」にありました。
WiiFlashの使えるBluetoothスタックは限られているようで、こればかりはBluetoothアダプタを買い換えるしか方法がありません・・・
ということでFlashは諦めて、C#で実装する事にしました!
C#でARを動かすために、A虎@さんの作った「NyARToolKit for C#」というクラスライブラリを使わせて頂きました。
そのソース解読に時間がかかりましたが、なんとかWiiリモコン制御用のプログラムを打ち込んで行って、ARとWiiリモコンを同時に動かす事が出来ました(・∀・)
■AR(拡張現実)&Wiiリモコン

ここから解説。
Wiiリモコンから取得できる値として前も日記に書きましたが、
・XYZ軸加速度(傾き)
・赤外線座標(4点まで)
・11ボタン

があります。
まず、
[加速度]
平行移動がXとY軸、垂直(縦)の移動がZ軸となっていて、XとYの加速度をモデルの加速度に加算し、平行移動させています。Z軸は一定値以上の加速度が加わると、モデルの加速度に加算されるようになっています。
壁に当たった場合は加速度×-1して反射させ、さらに×0.8して擬似跳ね返り係数を作っています。
次に、
[赤外線]
赤外線の座標をX.Yで取得できるので、今回はX軸のみ使用してモデルをZ軸を中心に回転させています。
そして[ボタン]ですが、今回はマーカーの土台として使用したので、ボタンは使用しない設定で行きました。
ということで今回はARとWiiリモコン組み合わせてみました
ARとWiiリモコンを組み合わせるとかなり自由度が上がりますよね
これでARの世界もさらにインタラクティブに生まれ変わります
あとは、コンタクトレンズ型ディスプレイの製品化を待つのみですね
さぁ、みんなも電脳ワールドに飛び込もう!!

最近の事

このあいだ書いた記事、書き込みミスかなんかで消えてました(泣)
最近やったことのまとめです。ちょっと長くなると思うのでちょっとずつ書きます(^ー^;)
■eAT金沢アワード2010 動画作品
最近と言っても、もう3週間も前になりますが、石川県が主催しているメディアコンテスト「eAT金沢アワード2010」の動画部門に作品を応募すべく、作品作りを頑張っていました。
3分間の動画ですが、毎日朝から夜9時まで研究室にこもって素材作り・撮影・動画編集などを頑張ったかいあってなんとか締め切りに間に合いました。
「絶対にこのコンテストに出す」って決めて頑張ってきて本当に良かったです。自分も大きく成長出来たし、なんにも目標も無くだらだらした毎日を送るより、「作品を出した」「行動した」っていう事が一番大切なんだって実感しました。
賞を取れるかなんてわかりませんが、結構頑張った作品なので割と本気で賞狙ってます(笑)
ちなみに15秒の動画部門に応募したのですが、一番メインの部門なのでグランプリは50万円相当の商品だとかフフフ・・・
作品は今はまだ公開しません。
というのも、まぁちょっと恥ずかしかったり、2週間かけてこれかとか言われるとショックなので
でも、もし賞が取れたら公開するつもりですが、今は静止画だけで我慢してね
賞が取れなかったら永遠に未公開かも(笑)
 
こんな感じの作品です。
eAT2
eAT1
わたくし、普段(?)はストリートダンスなんかもやってまして、作品制作しながら2つくらい出演イベントが決まってたりして、夜中ダンスの練習してたので家に帰ってくるのはいつも深夜4時くらいになってました(´Д`;)
良く体が持ったとつくづく思う。
■Wiiリモコン用 赤外線照射デバイス
IR1
研究にWiiリモコンを利用するにあたり、必要になると思ったので赤外線を照射するためのデバイスを自作してました。
過去にUSB電源のWiiリモコン用のセンサーバーを自作したので、その経験を活かして赤外線LED96個を使った最強のLED群を作りました。
しかも今回もUSB電源です。
USBが5Vなので、1つにつき1.25V必要なLEDは4つまでしか直列できません。
そこで4つ直列になったLEDを24列作り、全て並列に接続して電圧を保ちました!
IR2
IR3
これである程度の強さを持った赤外線が作れたので、LEDから照射された赤外線が再帰性反射板(光が来た方向に反射させる素材)にあたって反射した座標を読み取れるわけですね。
それを使ってなにを作るかはまだ考え中です^^;

謎の浮遊物体

台所になんか浮いてたきめぇげっそり

ここでトリックのネタばらしですが・・・

みなさん「磁性流体」ってご存知ですか?

ようするに液体の磁石です。

この浮遊している青い球体はその磁性流体というのを使ってるんですね。

作り方ですが、今回は形をある程度保つ為にスライムを作る時と同じ要領で作っていきました。

■材料

水30ml

PVA洗濯のり10ml

ホウ砂小さじ3

砂鉄50g

絵の具(お好み)

■作り方

①まず水30mlとポリビニールアルコール性の洗濯のり10mlを70度の温度であたためながら混ぜます。

②次に薬局で売っているホウ砂を小さじ3倍混ぜると、ゲル状になってきます。

③ここで青色絵の具(1本)を投入。青いスライムの出来上がり!

④できたスライムと砂鉄50gをよく混ぜて完成。

簡単ですよね!手(チョキ)

■そしてここからが本番exclamation ×2浮かせますexclamation ×2

皆さんの家にはあるかわかりませんが、電磁調理器(IH)を使用します。

まず電磁調理器の上に完成したスライムを乗せて、電磁調理器のスイッチを弱からゆっくりと強へと上げていきます。

電磁調理器から発生する電磁波の力が磁気を持ったスライム君に反応して押し上げるので、電磁波とスライムの重さが平等になったところで宙に浮かび上がります。

上手く強さを調整するとキレイにフワフワと浮かんでくれます。

※あまり出力を強くしすぎると飛びすぎてしまうので注意!

という事で、今回は不思議な浮かぶスライム(磁性流体)を作りました。

みなさんも上手く浮かべる事ができましたか?ウッシッシ

ん?できないだって?

まぁ、浮かべることが出来なくて失敗してしまった人も、ここで書いた事は全部ウソなので気を落とさないで下さいねexclamation ×2わーい(嬉しい顔)ぴかぴか(新しい)

-----------------------------------------------------------------—
という記事をmixiで書いたら結構な人がだまされてくれました(笑)
本当はマッチムーブという実際の映像と3DCGを自然に合成する技術を使っているんです。
最近では映画などで使われているのも良く見かけます。

マッチムーブソフトはVoodoo camera trackingというフリーのソフト。
映画などで使われているものは数百万円するものが普通ですが、なんとこのソフトはフリーなのです!

3DソフトもBlenderというフリーのものを使っているので映画なみの技術がタダで作れてしまうんですよね^^

流れとしては、
①素材となる動画を取ってきて
②それを連番tga画像形式に変換
③Voodooで読み込んでカメラの動きを解析。3Dソフト用のデータを作る。
④Blenderで読み込んでCGと重ねる
できあがりです

思ったより簡単でしたが、古いノートパソコンでレンダリングしたのでたかが3秒くらいの動画なのに結構レンダリングに時間がかかりました(´Д`;)

他にもマッチムーブではありませんが、Blenderを始めて使ったので流体シミュレーションなんかも試してみました。
みなさんも興味があったらマッチムーブに挑戦してみてはいかがでしょうか(^ヮ^)

ついにWiimoteLibがMotionPlusに対応!?

タイトルどおりなのですが、ついこの間の7月20日にCodeplexでWiiリモコンをパソコンで使う為のライブラリ「WiimoteLib」に新しくMotionPlusが対応したものが公開されました。
まだWiimoteLib_1.8 Beta版ということですが、問題ないと思います。
↓ここからDLできます
http://wiimotelib.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=30401
WiiMotionPlusには3軸(正確には2軸+1軸)のジャイロセンサが搭載されていて、Wiiリモコンがどちらの向きにどれくらい回転したかが正確にわかります。
その精度がすごいということで一部で話題になっていましたが、
いままでのジャイロセンサが一秒間に300度の回転を読み取ることが出来たのですが、それではスポーツなどの素早い運動に対応できないという事で1秒間に1600度まで対応させたという高精度さ。
そんなすごいジャイロセンサが1500円という低価格で手に入ってしまうとは時代も変わりましたね・・・。
ちなみにうちの研究室にあるモーションキャプチャーのジャイロセンサは1つ50万するらしいですが(笑)
MotionPlusを研究室で買ってくれるみたいですが、待ちきれない&俺が欲しいので個人で買ってしまいそうです。

Processing -sound-

最近Processingというビジュアル表現の為のプログラミング言語をさわり始めました。
Processingはプログラム初心者にオススメするだけあって、難しい表記無しに簡単な命令文でプログラムが動かせる上に、コンパイル無しで動き、Processing自体のインストールもしなくてもいいというすごいソフト。
ビジュアル表現に便利な映像・音楽・3D表現などのライブラリも初めから用意されているので、それらを組み合わせたプログラムが簡単に作れます。
Processingに慣れる為に音楽を読み込んでその波形から映像を作り出す、いわゆるビジュアライザというものを作ってみました。
sound(別窓でアプレットを起動します)
sound.png
プログラムとしてはとても簡単で、80行程度でこんな楽しいプログラムが出来てしまいます。
minimという音楽を扱うライブラリを使用してステレオ音源を読み込みloadFile()、左右のスピーカーのレベル合計mix.get()で大きさと場所が変わる円をellipse()で真ん中に書いているんですね。
ちなみにクリックすると、マウスの位置によって音程が変わるSinカーブの音を鳴らすモードに変わります。(まさかここでメディア情報論の知識が出てくるとは・・・)
バックでドラム音が流れてるのでそれにあわせてメロディーを作ってみては?
3Dにも簡単に対応できそうなので可能性がひろがります。
そういやiTunesの新しいビジュアライザのビジュアルプロトタイプ開発にもProcessingが使われたとか・・・

Wiiリモコンで出来る事

WiiリモコンはBluetooth通信を使っているので、Bluetoothが入っているパソコンなら簡単にWiiリモコンをPCとワイヤレス接続する事ができます。
さらにcodeplexで公開されているWiimoteLibというライブラリを使うとC#なんかで簡単にWiiリモコンの制御を行う事ができる訳です。
■WiimoteLibはこちら
http://www.codeplex.com/WiimoteLib
Wiiリモコンについている機能として前の記事でも書きましたが、
・赤外線カメラ
・XYZ軸加速度センサ
・XY軸傾きセンサ(加速度センサから求める)
・11ボタン
・4つのLED
・バイブレーション機能
・サウンド機能

と、これだけ沢山のセンサがワイアレスで使えてしまうので色々な可能性が広がりますよね。
ここで少しWiiリモコンから受け取る値の説明をしようかと思います。
・赤外線カメラ
赤外線カメラでは赤外線光源を4つまで検出する事ができ、それぞれIRSensors[0]~[3]の中にX・Yの座標が格納されます。
X・Yはそれぞれ0~1の間で表されて、小数点以下もかなり細かいところまで正確に検出できます。
たとえば・・・
if(IRState.IRSensors[0].found)で赤外線が1つ見つかったときに、
(IRState.IRSensors[0].X , IRState.IRSensors[0].Y) の位置にマークを表示したりして使います。
・加速度センサ
X・Y・Z軸それぞれ-1~+1の間で加速度が検出されて、こちらもかなり細かい数値がでます。
ちなみにWiiリモコンを平行に地面に置いた状態では重力でY軸が常に+1になります。
こちらはAccselState.Value.Xでその軸の値を呼び出して使用することが出来ます。
この二つだけでもかなり面白そうなものができそうです。
今研究で、フィジカルコンピューティングという現実とデジタルを組み合わせて身体的に操作できるものが作りたいと思っています。
そこで考えたのが、Wiiリモコンの赤外線カメラでボールの位置をトラッキングして遊べるゲームもしくはインタラクティブアート
仕組みとしてはこんな感じ。
図
・Wiiリモコンを部屋の上部に固定し、その方向から赤外線を放出
・ボール(赤外線を反射するもの)から反射した赤外線の座標をWiiリモコンで検出
・プロジェクタでボールに重ね合わせてエフェクトを表示したり敵キャラクターを表示する
・一人はボールを転がして遊び、別の人がもう1つのWiiリモコンで敵キャラクターを操作できて対戦できると楽しいかも
図2
簡単だけどこんなイメージ。
実際にプロトタイプは作ってるけど、動いてる所を録画したらまたここに載せたいとおもいます。