hirax.net::Keywords::「3次元」のブログ



2016-09-24[n年前へ]

その瞬間に眺めた世界をいつでもリアルに記録していく 

 自分を囲んでいる周りの世界を、あるいは掌の上に載せたものを、他の誰かに見せるために、いつか自分で眺め返す時のために、その瞬間にできる最大限のやり方で記録しています。…といっても、重い特殊な機材を持ち歩くのは辛いので、その時手にしたお手軽機材で、けれど時間が許す限りのやり方で、目にしたものをリアルに撮影したりしています。

 たとえば、2014年くらいのタイ・バンコクでは、自転車でうろうろする時、いつでも全天周の動画を撮影していたりしました。そして、1年後の2015年には同じく自転車で通り抜けたバンコク路地裏は、3次元で(暗い部分から輝いている部分まですべて記録する)HDRな世界になっていました。あるいは、チェンマイで11月の満月に眺める「空へ灯籠を流すお祭り」をヘッドマウントディスプレイを掛ければ、もう一度眺めたりすることができます。

 今年は、色んな物質で作り上げられた周囲の世界を、その素材感を伝える特性や立体的な形も含めて撮影することがようになりました。たとえば、安っぽいプラスチックの外装や、油で汚れて鈍く黒光りする金属塊や、年期を経た木板のさまを、リアルに写し出してコンピュータ画面の中で眺めることもできるようになりました。本当の世界ほどにリアルではないけれど、現実が持つ複雑なさまを、少しづつ記録して残すことができるようになっています。

 2016年の今年は、やはりバンコクを自転車でウロウロしつつ、記録する情報の次元や内容を、またバージョンアップできたら面白いな!と思っています。遠くに見える大通りを走るバスや、近くの路地裏を区切る土壁や、店の机に並ぶアジアな小物、そんなものを昨年より少しでもリアルに記録できたら面白いな、と思っています。

その瞬間に眺めた世界をいつでもリアルに記録していくその瞬間に眺めた世界をいつでもリアルに記録していく






2016-10-02[n年前へ]

続「その瞬間に眺めた世界をいつでもリアルに記録していく」 

 一年前の2015年の秋頃に、自転車を漕ぎつつRicoh Theta Sを手に持って、バンコクの裏小路を撮影してみました。その(色んな場所から眺めた)撮影映像を元にして、路地裏の構造を表す3次元情報や、眺める場所・方向に応じて見える風景を表現する関数を推定・生成してみました。下に貼り付けた動画は、その3次元情報のみを使ってレンダリングしてみたものです。

 日記に「その瞬間に眺めた世界をいつでもリアルに記録していく」として書いたように、ポケットに入るくらいの安い(スマホや安カメラといった)機材で、3次元の空間情報あるいは眺める時間空間方向に応じた見え方をキャプチャするようなことも簡単にできたりします。今年2016年の秋頃には、一体どんな世界を切り取ることができるのだろう?と考えたりします。

 今この瞬間の世界で、未来に残したいと誰かが思う場所があれば、その場所を知りたいと思います。その場所に行って、その3次元情報や見え方を表す関数表現や、記録できる限りの多くの情報を眺めに行ってみたい…と考えたりします。

2017-04-30[n年前へ]

スマホ(BLE)から動かせる街中スナップ用の(Ricoh Theta S用)2軸自動制御アームを作ってみる。 

 先週、Ricoh Theta用の極座標自動アームを作った。それを旅先で持ち歩き・街中で2軸アームを 動かしつつ気軽なスナップ写真を撮るために、今日は「ステージ制御をスマホ(iPhone)からできる」ようにしてみました。作戦は、iPhoneとアーム制御ボード間をBluetooth(BLE)で繋ぎ、iPhone上で動くPython環境(Pythonista)から制御アームとRicoh Theta Sを同期制御するという仕組みです。

 先週組んだアームはMakeblockのパーツを使っているので、その制御に使ってる(Makeblock製の)ArduinoボードにBluetooth I/Fを繋ぎ、ドキュメントとiOSアプリのLightBlue Explorerで制御ボードにアクセスしてみると、servicesのFFE1中にあるcharacteristics FFE3 に書き込みを行えば、制御ボードに情報を渡すことができることがわかります。…というわけで、「iPad + Pythonista(iOSで動くPython) + BLEで、Genuino101のLチカをしてみた。」を参考に、Makeblock(Arduino UNO)ボードに(適当に俺ルールで決めた5byte一組の)コマンドをiPhone(Pythonista)から送りつけ、そのコマンドをもとに2軸アームを動かしてみることにしました。

 というわけで、スマホから制御できる「Ricoh Theta S+制御アーム」を持ち歩き、山道で撮影した(円筒表面上の48枚の)画像から、試しに生成してみたた3次元風景が下の動画です。Ricoh Theta S自体は、全天周撮影を行うカメラですが、それを閉曲面状の複数点で撮影することで、3次元な全天周世界を復元したり、周囲の見た目を再現したり(ライトフィールド)することができます。

 ちなみに、iOS Pythonista ( Python ) からの制御コードは、上記参考コードをもとにして、たとえば下のような感じにしています。

    def did_discover_services(self, p, error):
        for s in p.services:
            print(s.uuid)
            if 'FFE1' in s.uuid:
                p.discover_characteristics(s)

    def did_discover_characteristics(self, s, error):
        if 'FFE1' in s.uuid:
            for c in s.characteristics:
            if 'FFE3' in c.uuid:
                 self.myProcedureWithTheta(c)
その上で、(上記コードのmyProcedureWithThetaとしたような部分で)適当なコマンドや値をMakeblock Arduinoボードに渡す(そしてその情報をもとにアームのモータなどを動かす)ことで、持ち歩き用の自動制御アーム付き三脚のできあがり!というわけです。
self.peripheral.write_characteristic_value(
        c, cmd, False)
self.peripheral.write_characteristic_value(
        c, bytes([step]), False)

スマホから動かせる街中スナップ用の(Ricoh Theta S用)2軸自動制御アームを作ってみる。スマホから動かせる街中スナップ用の(Ricoh Theta S用)2軸自動制御アームを作ってみる。スマホから動かせる街中スナップ用の(Ricoh Theta S用)2軸自動制御アームを作ってみる。






2018-05-26[n年前へ]

オレの周りのすべての世界,スマホで3Dデータにしてやろう! 

 今週発売された「Software Design 2018年6月号」に、4p記事を書きました。あまりに普通過ぎる内容であるような気もしていますが、題して「オレの周りのすべての世界,スマホで3Dデータにしてやろう!」です。…つまり、平成最後の年を迎えた今日この頃、誰もがやってる普通の作業の話です。具体的には、スマホ撮影画像からColmapを使って3次元復元をする手順解説です。

オレの周りのすべての世界,スマホで3Dデータにしてやろう! 






2018-07-17[n年前へ]

80グラムなトイドローン、Ryze Tello 撮影動画からの3次元再構成 

 重量わずか80グラムなトイドローン 、 Ryze Tello を使ってみました。飛ばしてみたとこっろ、Amazonなどのレビューを眺めて持っていた印象よりも、静止画も動画象も良かったので、Ryze Tello 搭載のカメラ動画象からのSLAMとかやってみたくなります。…さらには、Ryze Tello は制御用のSDKも公式・非公式ともども各種情報が公開されているので、撮影画像からのエトセトラだけでなくて、とにかく色んなことをやってみたくなります。

 …というわけで、まずは撮影動画から3Dシーンを再構成してみました。風が吹く中のファーストフライトからの処理画像の割には悪くない感じかな?と思います。

 …ちなみに、これはRyze Tello よりもっと小さなマイクロドローンで撮影された「オンナノコズ:"Onnanocos" × Micro Drone」から、教室教壇ラストシーンを3D再構成してみた結果です。とても小さなドローンでも、リアルな風景を描き出すことができることが不思議で魅力的に感じます。

Ryze Tello 撮影動画からの3次元再構成Ryze Tello 撮影動画からの3次元再構成Ryze Tello 撮影動画からの3次元再構成








■Powered by yagm.net