2017年2月13日月曜日

前回、2台のHoloLensで同じユニティちゃんを見られるようにしました。今回は予定よりだいぶ遅くなりましたが、2台のHoloLensでそれぞれ生成したユニティちゃんを1台の端末から見られるようにしたいと思います。


【HoloLens開発】ユニティちゃんとHoloLensで戯れる - シェアリング編2 -

前回、2台のHoloLensで同じユニティちゃんを見られるようにしました。今回は予定よりだいぶ遅くなりましたが、2台のHoloLensでそれぞれ生成したユニティちゃんを1台の端末から見られるようにしたいと思います。


2017年2月1日水曜日

図1 VoxcelChainの概念図
ソースコードはGithubにあります(ページ下部のリンク先参照)。


はじめに

オブジェクトの認識はロボットが現実の環境のなかで自律的に行動できるためには重要な技術です。LiDARやRGBDカメラといったセンシング技術はロボットにとって必要な豊富な3D情報を提供する重要な技術となっています。しかしながらこの情報は大量のPointCloudデータであり、効率的に処理するのは難しいのが現状です。本稿では「VoxcelChain」を提案します。VoxcelChainはディープラーニング(深層学習)による3次元形状の畳み込みニューラルネットワークを利用することにより、この問題を解決します。

VoxcelChain

VoxcelChainとはディープラーニング (深層学習)を使用た3次元形状の一般物体認識プログラムです。VoxcelChainは3次元畳み込みニューラルネットワークで、畳み込み層とプーリング層の2種類の層を交互に積み重ねたフィードフォワード型のニューラルネットワークです。

VoxcelChain 3次元畳み込みニューラルネットワークを使ったディープラーニング (深層学習)|Chainerによる3次元形状の認識

図1 VoxcelChainの概念図
ソースコードはGithubにあります(ページ下部のリンク先参照)。


はじめに

オブジェクトの認識はロボットが現実の環境のなかで自律的に行動できるためには重要な技術です。LiDARやRGBDカメラといったセンシング技術はロボットにとって必要な豊富な3D情報を提供する重要な技術となっています。しかしながらこの情報は大量のPointCloudデータであり、効率的に処理するのは難しいのが現状です。本稿では「VoxcelChain」を提案します。VoxcelChainはディープラーニング(深層学習)による3次元形状の畳み込みニューラルネットワークを利用することにより、この問題を解決します。

VoxcelChain

VoxcelChainとはディープラーニング (深層学習)を使用た3次元形状の一般物体認識プログラムです。VoxcelChainは3次元畳み込みニューラルネットワークで、畳み込み層とプーリング層の2種類の層を交互に積み重ねたフィードフォワード型のニューラルネットワークです。

2016年12月12日月曜日



前回はロボットの車体部分を作成しました。それでは、Raspberry PiのGPIOを使い、モータードライバを制御することでロボットのモータを回転してみましょう。まずはOSインストールからです。

[コラム]ROSで始めるロボティクス(11) ー オムニホイールで全方向移動可能ロボットを作る 2



前回はロボットの車体部分を作成しました。それでは、Raspberry PiのGPIOを使い、モータードライバを制御することでロボットのモータを回転してみましょう。まずはOSインストールからです。

2016年12月5日月曜日




今までロボットシミュレータでROSの使い方を習得してきましたが、そろそろ実際のロボットをROSで動かしてみたいと思います。

実際のロボットを入手しROSで動かすには、「ロボットを作る」必要があります。モーターとRaspberry PiやArduinoなどを使うことで自作することが可能です。
本記事では、比較的安価にロボットを作ることを目標にしつつも、電子回路やオムニホイールの制御を学びつつROSによるロボット制御の学習を進めていきたいと思います。

[コラム]ROSで始めるロボティクス(10) ー オムニホイールで全方向移動可能ロボットを作る 1




今までロボットシミュレータでROSの使い方を習得してきましたが、そろそろ実際のロボットをROSで動かしてみたいと思います。

実際のロボットを入手しROSで動かすには、「ロボットを作る」必要があります。モーターとRaspberry PiやArduinoなどを使うことで自作することが可能です。
本記事では、比較的安価にロボットを作ることを目標にしつつも、電子回路やオムニホイールの制御を学びつつROSによるロボット制御の学習を進めていきたいと思います。
今回は2台のHoloLensを使い、「シェアリング(空間共有)」を利用して片方のHoloLensで操作しているユニティちゃんをもう片方のHoloLensで表示させたいと思います。

【HoloLens開発】ユニティちゃんとHoloLensで戯れる - シェアリング編1 -

今回は2台のHoloLensを使い、「シェアリング(空間共有)」を利用して片方のHoloLensで操作しているユニティちゃんをもう片方のHoloLensで表示させたいと思います。

2016年11月22日火曜日

今回は前回実装したSpatial Mappingで作成された空間をXbox Oneコントローラーを使ってユニティちゃんを走らせてみたいと思います。


【12/01動画追加】【HoloLens開発】ユニティちゃんとHoloLensで戯れる - ゲームパッド編 -

今回は前回実装したSpatial Mappingで作成された空間をXbox Oneコントローラーを使ってユニティちゃんを走らせてみたいと思います。


2016年11月18日金曜日


今回はステレオカメラです。この機能自体はROSのパッケージを導入すれば実現可能ですが、よい結果を得るためにはキャリブレーション(校正)をしっかりと行うことがステレオ性能を左右する重要な要素となります。

今回はステレオカメラを良好に動作させるためのキャリブレーション方法について紹介いたします。

ROSで始めるロボティクス(9) ー ROSを使ったステレオカメラキャリブレーション


今回はステレオカメラです。この機能自体はROSのパッケージを導入すれば実現可能ですが、よい結果を得るためにはキャリブレーション(校正)をしっかりと行うことがステレオ性能を左右する重要な要素となります。

今回はステレオカメラを良好に動作させるためのキャリブレーション方法について紹介いたします。

2016年11月9日水曜日

今回は表示編で予告していた、HoloLensの「Spatial Mapping(空間認識)」を実装します。


【HoloLens開発】ユニティちゃんとHoloLensで戯れる - 空間認識編 -

今回は表示編で予告していた、HoloLensの「Spatial Mapping(空間認識)」を実装します。


2016年10月31日月曜日

前回はHololensにユニティちゃんを表示させただけでしたが、今回はそのユニティちゃんを音声認識で動かしたいと思います。


【HoloLens開発】ユニティちゃんとHoloLensで戯れる - 音声認識編 -

前回はHololensにユニティちゃんを表示させただけでしたが、今回はそのユニティちゃんを音声認識で動かしたいと思います。


2016年10月17日月曜日


ROSではロボットを目的の位置まで移動させるためのライブラリ群であるNavigationスタックが用意されています。自作のロボットでNavigationスタックが使えるようにしていきたいと思います。



ROSで始めるロボティクス(8) ー ロボットのナビゲーションを行う


ROSではロボットを目的の位置まで移動させるためのライブラリ群であるNavigationスタックが用意されています。自作のロボットでNavigationスタックが使えるようにしていきたいと思います。




前回までの作業でシミュレータ上で動くロボットが準備出来ましたが、今のままでは人が指示を出して動くただのラジコンでしかありません。
ここからは、障害物を避けながら目的の位置まで自立で移動するようにしていきましょう。

まずは地図を用意します。人間でも知らない場所に行く時には事前に地図を確認しますよね。ロボットにも同じように地図が必要になります。

ROSで始めるロボティクス(7) ー ロボットのための二次元mapを作る


前回までの作業でシミュレータ上で動くロボットが準備出来ましたが、今のままでは人が指示を出して動くただのラジコンでしかありません。
ここからは、障害物を避けながら目的の位置まで自立で移動するようにしていきましょう。

まずは地図を用意します。人間でも知らない場所に行く時には事前に地図を確認しますよね。ロボットにも同じように地図が必要になります。

PMD CamBoard pico flexxは3D形状を認識することが可能な非常に小型のToFセンサーです。たまたま別部署用に購入していたものを借りることが出来ましたので、色々試してみました。

このセンサーはとにかく小さいです。ミントケースの半分ぐらいのセンサーで十分な解像度のToFセンサーなので、使い勝手は最高です。早速、ロボットのセンサーに使うため、ROSで使えるように環境を整えていきましょう。



ROSで始めるロボティクス(6) ー ROSでデプスカメラPMD CamBoard pico flexxを使う


PMD CamBoard pico flexxは3D形状を認識することが可能な非常に小型のToFセンサーです。たまたま別部署用に購入していたものを借りることが出来ましたので、色々試してみました。

このセンサーはとにかく小さいです。ミントケースの半分ぐらいのセンサーで十分な解像度のToFセンサーなので、使い勝手は最高です。早速、ロボットのセンサーに使うため、ROSで使えるように環境を整えていきましょう。




ロボットに使用される定番センサーとしてステレオカメラやレーザーレンジファインダーなどがあります。これらを使うことで、ロボットの周囲の環境を判定し、ロボットの動作を決めることができるようになり、ロボットの自立制御の第一歩となります。
センサーのその他の選択として、マイクロソフト社Kinectやインテル社のRealSenseといった、デプスカメラなどが挙げられます。今回はロボットシミュレータにデプスカメラを追加していきます。



ROSで始めるロボティクス(5) ー GazeboでToFセンサーをシミュレーションする


ロボットに使用される定番センサーとしてステレオカメラやレーザーレンジファインダーなどがあります。これらを使うことで、ロボットの周囲の環境を判定し、ロボットの動作を決めることができるようになり、ロボットの自立制御の第一歩となります。
センサーのその他の選択として、マイクロソフト社Kinectやインテル社のRealSenseといった、デプスカメラなどが挙げられます。今回はロボットシミュレータにデプスカメラを追加していきます。




ロボットシミュレータとしてGazeboを使用します。Gazeboはオープンソースで開発されたロボットアプリケーション開発のための動力学シミュレータです。ROSとも連携しており、モータのみならず、ToFセンサやカメラなどもシミュレーション出来ます。


ROSで始めるロボティクス(4) ー シミュレータ上でロボットを動かしてみる


ロボットシミュレータとしてGazeboを使用します。Gazeboはオープンソースで開発されたロボットアプリケーション開発のための動力学シミュレータです。ROSとも連携しており、モータのみならず、ToFセンサやカメラなどもシミュレーション出来ます。



実際のロボットを動かす前に、シミュレータで動かしてみましょう。
まずは、ロボットのモデリングです。

次のような2つのモーターと2つの車輪で動作する移動ロボットを定義しましょう。




ROSで始めるロボティクス(3) ー 差動二輪ロボットを準備する


実際のロボットを動かす前に、シミュレータで動かしてみましょう。
まずは、ロボットのモデリングです。

次のような2つのモーターと2つの車輪で動作する移動ロボットを定義しましょう。





それではROSの開発環境をインストールしていきます。現在ROSの最新バージョンは「Kinetic Kame」ですが、ここでは「Indigo Igloo」を使用します。というのも、このバージョンはユーザーも多く、サポートする周辺のライブラリも多いため、最初はこのバージョンを選択しておくのが無難だからです。

ROSのサイト。http://www.ros.org/ ROSに関する情報はこのサイトを確認しよう。


ROSで始めるロボティクス(2) ー ROSのインストールとセットアップ


それではROSの開発環境をインストールしていきます。現在ROSの最新バージョンは「Kinetic Kame」ですが、ここでは「Indigo Igloo」を使用します。というのも、このバージョンはユーザーも多く、サポートする周辺のライブラリも多いため、最初はこのバージョンを選択しておくのが無難だからです。

ROSのサイト。http://www.ros.org/ ROSに関する情報はこのサイトを確認しよう。



皆さんは、「ロボット開発」と聞いてどんなイメージをお持ちでしょうか。「難しい」「専門知識が必要」「大量のプログラミングが必要」そんなイメージの方も多いのではないでしょうか。本連載ではROSを使用することで手軽に「ロボット開発」を行います。ROSではロボットの「シミュレータ」環境も充実しており、「動作するロボット」がなくても開発することが可能です。
本連載ではROSを使って差動二輪ロボットを作成し、シミュレータ上でうごかしていきます。連載を通じてROSのイメージを掴んていくことができます。また実際のToFセンサーも扱います。実際に動くロボットも作成していきます。



ROSで始めるロボティクス(1) ー The Robot Operating System


皆さんは、「ロボット開発」と聞いてどんなイメージをお持ちでしょうか。「難しい」「専門知識が必要」「大量のプログラミングが必要」そんなイメージの方も多いのではないでしょうか。本連載ではROSを使用することで手軽に「ロボット開発」を行います。ROSではロボットの「シミュレータ」環境も充実しており、「動作するロボット」がなくても開発することが可能です。
本連載ではROSを使って差動二輪ロボットを作成し、シミュレータ上でうごかしていきます。連載を通じてROSのイメージを掴んていくことができます。また実際のToFセンサーも扱います。実際に動くロボットも作成していきます。



2016年9月6日火曜日

UnityもVisual Studioも触ったことのなかった筆者が、Unity公式キャラクターである『ユニティちゃん』を使ってHololens開発をしてみます。その第1回目としてユニティちゃんをHoloLensで表示してみます。


【HoloLens開発】ユニティちゃんとHololensで戯れる - 表示編 -

UnityもVisual Studioも触ったことのなかった筆者が、Unity公式キャラクターである『ユニティちゃん』を使ってHololens開発をしてみます。その第1回目としてユニティちゃんをHoloLensで表示してみます。


2016年8月29日月曜日


HoloLensの肝であるHPUチップは○○で出来ていた!?

法人向けHoloLens(Commercial Suite)が発売!追加された新機能とは?等の最新情報に加え、HoloLensに関する基本的な知識を今回の記事で書いていきます。次回、Part3の記事では、遂にHoloLens開発の中身を書いていきますのでご期待ください!
連載目次
Part 2: 【HoloLens開発】日本での発売に備える実機開発 - 基礎知識編 - ←本記事
Part 8: 【HoloLens開発】ユニティちゃんとHoloLensで戯れる - シェアリング編2 - (予定)
本記事目次

【HoloLens開発】日本での発売に備える実機開発 基礎知識編


HoloLensの肝であるHPUチップは○○で出来ていた!?

法人向けHoloLens(Commercial Suite)が発売!追加された新機能とは?等の最新情報に加え、HoloLensに関する基本的な知識を今回の記事で書いていきます。次回、Part3の記事では、遂にHoloLens開発の中身を書いていきますのでご期待ください!
連載目次
Part 2: 【HoloLens開発】日本での発売に備える実機開発 - 基礎知識編 - ←本記事
Part 8: 【HoloLens開発】ユニティちゃんとHoloLensで戯れる - シェアリング編2 - (予定)
本記事目次

2016年8月19日金曜日

HoloLensは13m先の壁まで認識できる!?


HoloLensの実機を使ったからこそ分かったことを装着感・空間把握・視野・酔い・ジェスチャー操作・HoloLensに向いている用途・向いていない用途という7項目に分けて書いていきます。


連載目次
Part 1: 【HoloLens開発】日本での発売に備える実機開発 - 体験編 - ←本記事
Part 8: 【HoloLens開発】ユニティちゃんとHoloLensで戯れる - シェアリング編2 - (予定)

【HoloLens開発】日本での発売に備える実機開発 体験編

HoloLensは13m先の壁まで認識できる!?


HoloLensの実機を使ったからこそ分かったことを装着感・空間把握・視野・酔い・ジェスチャー操作・HoloLensに向いている用途・向いていない用途という7項目に分けて書いていきます。


連載目次
Part 1: 【HoloLens開発】日本での発売に備える実機開発 - 体験編 - ←本記事
Part 8: 【HoloLens開発】ユニティちゃんとHoloLensで戯れる - シェアリング編2 - (予定)

Related Posts Plugin for WordPress, Blogger...