図 1 会津大学の目指すロボティクスクラウドの概念図と本プロジェクト(Robot Data Repository)の位置づけ
(Y. Watanobe et. al, “Data Acquisition Framework for Could Robotics,” iCAST 2019)

会津大学では、産学連携ロボット研究開発支援事業の第二期 (AY2018-20) にて、クラウドロボティクスによる「異種複数ロボットのデータの利活用」というテーマを設定して研究・開発を行っております。図1は、この研究開発の全体像を示した図になります。本項目では、特に右側上部に位置するRobot Data Repository (RDR) についての研究開発事例を紹介します。

ROBOT DATA REPOSITORYの目的

クラウドロボティクスは、インターネット上に配置されるクラウドと呼ばれる巨大で柔軟なサーバー群を用いることで、人、モノ、ロボットが有機的に結合し、サービスを構築し提供することのできる仕組みと方法論を研究する分野です(図2)。ロボット単体は、おおよそモーターや油圧などのアクチュエーターと、それらを制御する電子機器、観測のためのセンサによって構成されていますが、ロボットの動作の1つ1つは単純な動作の積み重ねです。そのようなロボットが、熟練し卓越した職人のような動作をするには、そのロボットの個体に合わせた動作の計画が必要です。その計画を『学習』によって得るには、『データ』が必要になります。図2の左端、Log data & AIは、今一番ホットな『人工知能』を用いた動作や判断の部分になりますが、人工知能を使うためには、ロボットの動作した『ログ』が不可欠です。RDRは、このためのデータ収集・整理の基盤として研究するものです。

図 2 クラウドロボティクスの概念図

ROBOT DATA REPOSITORYの構成

会津大学で研究を行っているRDRの基本的な考え方は、Data Centric Architecture (データ中心アーキテクチャ)というものです。サービスを構成するために必要なデータの授受や格納に焦点を当てて、それらがどのように各コンポーネントに結合されるのかを中心に物事を考えるところから始まります。システムにおけるデータは、人における血、ロボットにおける電気のようなものと同等と考えられるからです。

また、ロボットから出てくるデータは、決して『同じタイミングで、全てのデータが揃って吐き出される』ものではありません。ロボット毎についても、モーターが違ったり、搭載されるセンサが違ったり、精度が違ったりして、全てを同質のものとして扱うことができません。一般的なデータベース(Relational DB: RDB)は、表形式で記述するものですが、各項目で並ぶ値は同質であり、かつほぼ必ず同じタイミングで全てのデータが揃っている必要があります。そのため、ロボットからのログデータは、オブジェクト(物体)として定義するタイプのデータベース(Object Oriented DB: OODB)の考え方を使うと、効率的にデータが収集できます。
一方で、ロボットから吐き出されたログを、機械学習等で用いようとする場合は、表形式になっていたり、特定の条件下で選定 (Query) されたデータであったりしてほしいものです。OODBではそれが難しいため、RDBのような形式で保持するのが望ましいことになります。そのため、私たちの利用しているデータベースの形式は、Object-Relational Database (ORDB)と呼ばれる、RDBとOODBの中間のようなデータベースで管理します (図3)。
RDRで構成するORDBは、RDBの一種であるPostgreSQLと、OODBの亜種であるMongoDBを用いて構成します。ロボットから取り出されたログは、タイミング毎にドキュメントとしてMongoDBに保持されます。それらをMongoDB内のメソッドを用いて整理し、データをそろえて、PostgreSQLに構成されるレコードとして変換されます。この過程の中間データもRDRでは保持されるので、PostgreSQLで利用されるような既存プロシージャの組み合わせによる『トランザクション』が、RDR全体で保持されることとなります。これが、RDRの一番の特徴です。

図 3 RDB, ORDB, OODBの特徴の比較
図 4 RDRにおけるデータ変換の構成: 多段(数珠繋ぎ)DBの構成

AY2019におけるRDRの研究・開発

2019年度では、RDRの研究として、

  • データの仕様とシナリオを記述することで、Ontology Mappingを用いた自律的なRDR多段DBの構築を行う研究
  • RDRを用いた実アプリケーションの実例としての、3Dマップの構築と閲覧を行う研究開発

を行いました。また、RDRに関連する開発として、

  • 映像検索システムのメタ情報検索部分の開発
  • 温度センサによるロボット環境データの収集に関する研究開発

を行いました。以下で、詳細な説明を行います。

文責: 会津大学 矢口勇一 2020.5.15


オントロジーを用いたデータ仕様とシナリオからのRDR自動生成フレームワーク

会津大学 宮地利宗(学生)、渡部有隆、矢口勇一

図 5 オントロジーを用いたデータ仕様とシナリオからのRDR自動フレームワークの成果: オントロジーからのRTC生成(左)と、生成されたRTC対を用いての観測からの制御利用(右)

背景と目的

RDRの開発で工数が特に多いのは、データベース間で発生するデータ変換のプログラムをいかに利用し配置するかです。どのようなタイプのDBシステムであっても、この部分を、自動的に入出力を合わせることができないので、非常に多くの工数がかかります。
本研究では、この部分を、ロボットに共有される知識層をOntologyと呼ばれる形式言語で記述し、その形式言語を基に、入力と出力の仕様を合わせる既存プログラムの組み合わせを経て、自動的にRDRの多層DBを構築することを目的としています。
図6では、RDRの自動生成の考え方を示しています。ロボットは、各コンポーネントからログデータを出力してOODB型のログデータベースに保存します。保存されるデータの仕様は、ロボットのコンポーネントの出口にありますので、それらを指定の言語で記述します。また、データベースからの出力として使用したいアプリケーションのデータの仕様も、そのアプリケーションとなるコンポーネントの入り口のデータの仕様が当てはまります。これらのデータスキームを提示し、そのデータスキームを繋ぐことのできるような中間コンポーネントを取り出して計算し、2次ないしn次のデータベースを作成することで、サービスを提供するものです。

図 6 RDRの自動生成の考え方: ロボットシステムのモデリング(ロボット仕様・環境条件・シナリオの定義)から、オントロジーを用いて変換コンポーネントを配置し、DBの変換を行う。

2019年度の取り組み

RDRの自動生成のために、2019年度では、Protégéツールを用いたロボット用Ontologyの簡単な定義(図7)と、それを利用したRTコンポーネントの生成を、Spring Frameworkを用いて(図8)実装しました。
Protégéツールを用いて構成されたロボットで利用されているセンサとデータの関係性や、単位系などを知識として木構造で保持したものを、XMLを用いてプログラムに入力します。また、実際のロボットの仕様を、XMLを用いて同様に入力します。Frameworkは、それらのXMLを解析した結果を用いてRTコンポーネントのテンプレートから、実行可能なRTコンポーネントを生成します。また、RDRで使用するDBのスキームと、変換するためのプログラムを自動で生成します。あとは、それぞれの場所でロボットとサーバーサービスを動作させれば、実行が可能となります。

図 7 シナリオ定義の一例 – Ontology: Protégéツールを用いて、センサとデータの関係性、および単位系などを知識として木構造で保持する。
図 8 RDRの自動生成フレームワーク

2019年度の成果

2019年度は、図5のように、2つの項目について実装を行い、それぞれ自動生成ができることを確認しました。

  1. 緯度経度の度分秒及び十進数角度の変換式の自動生成(左側)
    (ア) 目的: フレームワークが、アプリケーションとして動作するために必要なコンポーネント、サービス、リポジトリをシームレスに生成および展開したことを示しました。
  2. 動作済みロボットログを用いた別なロボットへの動作モデルの提供 (右側)
    (ア) 目的: フレームワークが、プログラム層の定義からのコンポーネント群の自動生成を行い、ライブラリ内のレガシーソフトウエアの再利用をしながら、クラウドデータを介した異なるロボット間の連携を行うことができることを示しました。

文責: 会津大学 矢口勇一 2020.5.15


多段DBシステムを用いたロボットデータ蓄積と利活用の一例: 3Dマップの生成と提供(Multi-stage DB System for Robot Data Storage and Utilization)

会津大学 矢口勇一、山田竜平
東日本計算センター 丹内智博、鈴木教文

背景と目的

RDRの持ち味の一つに、データのスキーマを変換する変換コンポーネントを挟んだ、クラスとテーブルの多段化があります。この多段DBシステムを用いて、異種複数ロボットの内界(ロボット自身に具備される、自分の状態を監視するセンサ等からの情報)および外界(ロボットが動く環境を計測する計測器等の情報)データをクラウド環境上に配置されたOODBに蓄積し、そのデータをRDBとして利用できる環境を提供するのがRDRです。本項目では、この1つのアプリケーション例として、ロボットの観測データと動作ログからの3Dマップの生成と提供を行うシステムを構築しました(図9)。

図 9 多段DBシステムを用いた3Dマップ生成と提供スキームの概要図

2019年度の取り組み

図10は、私たちの目指すRDRの形の一つである、多段DBシステムを用いた3Dマップ生成に係る様々なデータの情報や、それらをどのように統合して、マップを提供するかの構成図です。この中から、2019年度は、ロボットに取り付けたLiDAR(レーザー距離センサ)やステレオカメラが捉えたデータを1次DBと呼ばれるOODB環境にログを蓄積し、それらを整理したのち、ROSで提供されているLOAMと呼ばれるLiDAR SLAMの技術を用いて3次元地図を生成します。併せて、事前に取得しておいたステレオカメラとLiDARとの間の対応関係を取り込み、LiDARで示された点群マップに色を付ける形で、カラー付き3次元地図を構成します。これを配布用のDBに格納し、ユーザーが閲覧できるようにします。

図 10 多段DBシステムを用いた3Dマップ生成の構成図

システム概要

図 11 多段DBシステムによる3Dマップのシステムフロー図

前項で示した目標に対して、実際に作成された多段DBシステムは、ロボットが採取したデータをシステムにアップロードしてから、地図データ取得までを図11で示されるようなフローで構築した。各ポイントの説明は以下の通りです。
①採取したデータをアップロード
②データのはずれ値を検知した場合はそれを除去(または補間)
③LiDAR/ステレオカメラ情報をタイムスタンプ昇順で統合
④RDBに転送
⑤データ補間(直前の値で穴埋めもしくは線形補間)
⑥SLAM[1](LOAM[2])処理にて地図生成後、ノイズ(不要な点群データ)を除去
⑦3次元地図データをダウンロード

[1] Simultaneous Localization and Mapping:自己位置推定+地図生成
[2] Lidar Odometry and Mapping:LiDARによるリアルタイム性SLAM

実施風景と成果

本実験では、実際のロボットのほかに、ロボットを模した台車システム (図12) を構築し、それから取得したLiDAR及びステレオカメラ(ZED Stereo Camera)からの画像を用いて、会津大学LICTiA、会津大学研究棟、福島ロボットテストフィールド内模擬プラント1階, 2階の3D点群生成を行いました。実際に、台車システムを用いて3D計測を行っている映像は以下のようになります。

[ 映像 ]

このように、LiDAR点群を取得し、そのデータをRDRで整理し、途中にROSベースのSLAM処理を施して、ノイズを除去すると、図13のように、3次元地図データを生成することができます。また、ステレオカメラとLiDARの対応関係を正しく計測できれば、図14のように、色付きの点群としてのマップを作ることも可能となりました。

図 12 台車3D計測システム2号機(最新版)
図 13 3次元点群地図データ例
図 14 台車システムを用いた色付き3D点群マップの生成例

今後の課題

2019年度ではLiDARの点群による地図生成を行っていましたが、実際にロボットが動作する場合は、高価なLiDARではなく、安価な単眼のカメラで動作することが多いので、LiDARの点群に、画像の特徴点を紐づけ、それをほかのロボットに適用して自己位置の推定と、経路計画に利用する計画です。また、屋内外の地図データをシームレスに結合し、GPS/非GPS環境下でのシームレスなロボットの運用が可能となるようなシステムを構築したいと考えています。

文責: 会津大学 矢口勇一 2020.5.15

お問い合わせ

会津大学企画連携課
電話:0242-37-2511
Email:cl-innov@u-aizu.ac.jp


ロボット動作解析のための動画検索システム(Video Search System for Robot Motion Analysis)

会津大学 矢口勇一
東日本計算センター 菊地浩之、鈴木教文

背景と目的

RDRを用いた3Dマッピングの一例は、ロボットの『内界』と『外界』の観測を基に、外部環境を復元する試みでしたが、一方で、RDRには、外部からのロボットの観測情報も併せて含めることが可能です。このプロジェクトでは、異種複数ロボットの外部からの観測データ(固定カメラからの映像など)をクラウド環境上に配置されたDBに蓄積し、そのデータが利用できる環境を構築します。具体的には、映像データベースから、そのデータが撮られた場所と日時などの情報をメタ情報として付与し、映像データだけでなく、メタデータをRDRに蓄積して、そのメタデータ側から目的の映像区間を検索するシステムを構築することを目的としています。また、そうして取り出された区間でロボットがどのように動いたのかという情報を認識して、ロボットの内界・外界観測データと照らし合わせながら、正しくロボットが動いたのか、ロボットに実装するプログラムにバグがないかをテストする目的で利用することを想定しています。

図 15 ロボットにまつわる三界: 内界、外界、外部観測

2019年度の取り組み

2019年度では、まず動画検索システムで利用するためのデータとして、福島ロボットテストフィールドや会津大学ICTラボで撮影されたロボット動作動画をクラウドDBに蓄積する作業を行いました。
また、クラウドDBから撮影場所と撮影日時の情報を別なDBに蓄積し、それらを基に検索し、検索結果の区間の動画を提供するシステム開発を行いました。

システム概要

図 16 ロボット監視映像データへのメタ検索システムの概要図

図16は、本プロジェクトで構築するロボット監視映像データへのメタ検索システムの概略図です。動画には、EXIF情報というメタデータが含まれるので、それらを抽出し、映像情報からメタ情報を分離し、データベースに整理して蓄積します。それらを用いて、当該区間のビデオとメタデータを抽出し、それらをユーザーが閲覧できるようにローカルのディレクトリに切り出すというシステムを構築しました。

  • 動画のアップロード
    • アップロードされた動画の最適化
    • 動画のメタ情報取得
    • DBに動画パス情報とメタ情報を保存
  • 撮影場所と撮影日時情報による動画検索
    • 検索条件に該当する動画をDBから検索
    • 検索結果から選択された動画(メタ情報含む)をローカルディレクトリに展開

プロジェクトの成果

以下の例は、実際に作製されたシステムを用いた一例になります。

  • システムの検索画面から撮影場所、撮影日時を入力して動画を検索。
  • 結果、DBに蓄積された動画の中から撮影場所と撮影日時の条件に該当する動画を検索することができた。
図 17 画面遷移と検索結果の表示例

今後の課題

ロボットを監視する監視カメラのログとしての映像検索は、2018年度に画像特徴量を使った物体の類似検索、2019年度にメタデータを用いた検索を実装しましたが、RDRとの連携及び『ロボットの動作情報』を認識して検索することや、『ロボット自体の認識と自動的な分類』を行ってそれを検索に用いることなど、非常に多くの課題があります。また、作製されたシステムは、現時点ではそのままサービスインできるほどの通信基盤を得ていないので、アップロードの速度の向上や、データストアの柔軟なスケーリング、動画検索手法の多様化など、技術的課題も多く存在します。しかしながら、『人の介在しないところで動くロボットの管理・監視』のための検索・認識エンジンとして、利用価値の高いシステムであると考えているので、一つ一つ改善していきたいと思います。

文責: 会津大学 矢口勇一 2020.5.15

お問い合わせ

会津大学企画連携課
電話:0242-37-2511
Email:cl-innov@u-aizu.ac.jp


温度センサーによるロボット環境データ: サーモセンサーアレイによる物体検知

株式会社会津ラボ

昨今ではロボットの自律走行において、LiDARを搭載することが必須事項となっています。パルスレーザーならびに散乱光により、障害物を避けた走行が可能になりますが、一方でガラス素材の対象物を空間であると誤検知してしまうことも少なくありません。本事例ではサーモアレイセンサーを用い、センサーネットワークを構築することで部屋、一定範囲空間の熱情報データベータマップを構築します。人、ロボットなどへ得られた情報送信、通知することによる通行・移動の補助情報として活用できるか検証を行っています。

目的

①サーモセンサアレイ(センサ整列)による空間のデータ化
一般的なサーモパイルセンサがセンサ内部に1つの素子しか無いのに対して、サーモパイルアレイセンサは複数の素子がセンサ内部に整列して搭載されているため、8×8解像度の熱データを取得できます。また、サーモデバイスを、小型デバイスのマイコンボードへ搭載し温度データを保管。小型デバイスを天井ならびに壁へ設置し、室内の空間データ生成します。

②高解像度データへの変換処理
高解像処理(画素拡大)やノイズ除去処理を組み込み、オリジナルデータに対し16×16、32×32とした、高解像度化による詳細データを再構築します。

③Wi-Fiによるデータ送信
サーモアレイセンサーから収集した情報はWi-Fiによる無線通信にて熱信号データを逐次RDRへ送信します。

図18:サーモアレイ イメージ
図19:熱画像活用
図20:熱画像データの高解像度化とデータ通信

実施概要

サーモセンサーユニット4台をLictia1Fへ設置し、センサー毎の温度を得る実験を行いました。

図21:Lictia1F センサーユニット設置状況
図22:サーモアレイユニット
図23:サーモセンサーユニット

構成部品

  • Raspberry Pi Zero
  • 赤外線アレイセンサGrid-EYE
  • 赤外線フィルターレスカメラユニット
  • ユニット設置ケースと止め具:製作

サーモアレイセンサー仕様詳細

  • 8×8(64画素)で2次元エリア温度検知
  • 電源電圧:3.3V
  • 増幅率:ハイゲイン仕様(遠距離での特性を考慮)
  • 計測温度範囲(ハイゲイン): 0℃ ~ 80℃
  • 精度:Typical±2.5℃
  • 計測サイクル(最小) 0.1sec (内部レジスタ設定 0.1/1.0sec )
  • 内臓演算機能:移動平均なし または 2 回移動平均

実施結果

図24:実験風景・カメラとサーマルデータを重ね合わせた画像・実際にアップロードされた映像

0.5度単位でサーモデータを取得することが確認できました。1sec毎に温度データをリクエストするため、熱源物体(人など)の通過を捉えることができ、移動体検知の通知に応用ができると考えられます。