Unityを活用した3Dシミュレーション環境の構築

1.1K Views

October 19, 20

スライド概要

3Dシミュレーター開発におけるUnityの利点や農業用ロボットをはじめとするロボット開発における3Dシミュレーションの活用例、ROSを使用した開発環境の構築例についてお話します。

profile-image

リアルタイム3Dコンテンツを制作・運用するための世界的にリードするプラットフォームである「Unity」の日本国内における販売、サポート、コミュニティ活動、研究開発、教育支援を行っています。ゲーム開発者からアーティスト、建築家、自動車デザイナー、映画製作者など、さまざまなクリエイターがUnityを使い想像力を発揮しています。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
2.

株式会社プラスプラス 安達 武範 Generative Art — Made with Unity Unityを活用した 3Dシミュレーション 環境の構築

3.

自己紹介 — 株式会社プラスプラス 開発部 — 主に業務系のシステム開発を担当 — 1994年ころからLightWave3Dなどを使用して 3DCGの技術を習得 — 2008年 Flashを使用して3Dコンテンツを 表示するシステムなどを開発 twitter: @TheCoolMuseum — 現在は3Dプリンタを活用してフィギュア制作 なども行っている 3

4.

株式会社 プラスプラス — 岩手県盛岡市を拠点とするソフトウェア開発会社 — 前身は地方CMなどの3DCGを作成する制作会社 — 得意分野の3DCG・AI・ブロックチェーンなどを活かした 業務用システム、Webアプリ、モバイルアプリ等を開発 — Unityを使用したゲーム、施設映像システムなどを開発 — Unityを使用してバーチャルキャラクター配信用システム 「3tene」を開発 VRM等のバーチャルキャラクターの制作も行う 4

5.

農業用ロボット開発における 3Dシミュレーターの必要性 5

6.

現在の農業が抱える問題 — 少子高齢化による農業従事者の高齢化と減少 — 経験や勘に頼った作業による技術継承の難しさ — 農場の大規模化・消費者ニーズの多様化による負担の増加 — 上記の要因により、農業従事者のなり手が減り人手不足が深刻化 — 将来の食糧不足・供給不安定への不安 これらを解決するために農作業の省力化・軽労化が望まれている 6

7.

現実世界の農業用ロボット開発の問題点 — 自然が相手であることの難しさ – すべての現象が複雑である – 実験のために実際に農地を用意する必要がある – 様々な気象条件があり、コントロールできない – 季節の変化によって作物の状態が大きく変化し、変化が短期間で起こる – すべての事象が不可逆で進行する — ロボット開発における制約 – AIの学習速度がロボットの物理的スピードに依存する – 新しいロボットの学習に時間的・場所的な制約が存在する 7

8.

3Dシミュレーターを用いた農業用ロボット開発 — 3Dシミュレーターを用いるメリット – 実際の土地を用意する必要がなく、制限なく自由に農場を設計できる – 様々な気象条件を自由に選択できる – 実際の時期や期間に影響されずに実験できる – 何度でも同じ条件・異なる条件で繰り返し・やり直しが行える — コンピューター資源の活用 – 計算機の進歩に伴って、実時間以上の速度で学習を行える – クラウドなどのリソースを用いて並列化して効率をスケールできる 8

9.

3Dシミュレーター開発 におけるUnityの活用 9

10.

3Dシミュレーターの例 — スマート農業向け3Dシミュレーター「Smart 3tene」を開発中 https://smart.3tene.com/ — 大学・研究機関様や農作業機械・ロボット開発企業様と 共同開発をすすめる — 実際の開発には数年単位の期間を考えているので、 現状はデモレベル。共同研究パートナー向けの開発を 行っている段階で、多くの機能はまだ構想レベル 10

11.

Unityはシーンの構築が容易 — 静的な環境であればエディタでかんたんにオブジェクトを 配置して、すぐに見え方の確認が可能 — 動的な環境の構築の場合でも、GameObjectなどの扱いが 簡単で、比較的容易にシーンが構築できる — 超大規模な構成の場合Burstなどを使用して動作効率 をあげられるが、従来と作りが変わるため開発難易度はあがる 11

12.

機械学習のためのビジュアル表現 — 画像を用いた機械学習を行う場合にRGB画像の他に、 ステレオ画像、デプス画像、LiDAR画像などの深度情報、 物体を個別認識するために領域分けしたセグメンテーション画像 といった付加情報があると精度を高めることができる — Unityでは多彩なマテリアル・シェーダー表現を活用して、 各種センサや人の手では手間がかかる領域分けデータを 容易に作成することができる — 現在のデモでは従来のビルトインレンダーパイプラインを使用 しているが、URPやHDRPを始めとしたスクリプタブルRPを使用し 最適化・高度化が行えるので移行を検討している 12

13.

機械学習の活用 — Unityで機械学習といえば、ML-Agentを使用したゲームAIの 強化学習による作成が主要な使われ方であったが、 独自のニューラルネット推定ライブラリ Unity Barracuda の搭載 などにより、画像認識や姿勢推定、GANによる画像生成などを Unity内で行えるようになりつつある — 現在のデモでは、樹木や葉、果実などに用いているテクスチャは あらかじめ作成しておいたものだが、今後はGANなどを用いて Unity内で無限のバリエーションを作成できるようになると考えられ る 13

14.

メッシュの動的生成 — 現在のデモでは、樹木の生成はあらかじめ Houdini 使用して 作成したデジタルアセットを Houdini engine for Unity を用いて Unityエディター上で静的なメッシュとして作成している — 成長の過程の表示や、高度な物理などを適用するためには Unity内でリアルタイムにメッシュを作成する必要があり 今後はその方向で研究開発を行う予定である — 動的なメッシュ生成は割と重い処理だったが、 最近はNativeArrayを使用し、Burstと組み合わせることで 大きなメッシュを高速に扱う方法もあり検討したい 14

15.

バーチャルキャラクターの採用について — 「Smart3tene」の構想機能のうち最も特徴的な点として バーチャルキャラクター表示機能がある 機械学習の様子やレポートなどをバーチャルキャラクターの 形で見れる機能 — 農業への若い層の新規従事者不足が問題となるのと同様に 農業ロボット・スマート農業開発に興味をもつ人も不足すると 予想しています こういったバーチャルキャラクターが「刺さる」層へのアピール を行うことで業界の活発化に寄与できればと考えています — またロボットとの協業シミュレーションのためにも人物表示と 自立行動AIの開発が必要と考えています 15

16.

ロボット開発以外の用途について — 今後考えている3Dシミュレーションの応用範囲 – VRを利用したスキルの継承・農業体験システム – リモート農業システムへの応用 — 直接ロボットの開発に用いる以外の要望・引き合いがわりと多い – 農場の改良のシミュレーション・ビジュアライズ – 機械学習のための植物のアノテーションデータの生成 16

17.

今後の技術的課題について 1 — 現実に即した物理表現 — フォトリアルな映像表現 — センシングに必要な情報生成 — 外部データの取り込み — 主要な規格に対応する外部インターフェイスの搭載 — 大量のオブジェクトに対する表示耐性 — リアルタイム3DCG表示技術の進歩に合わせた継続的改善 17

18.

今後の技術的課題について 2 — 多様な作物への対応 — 人為的な加工への対応 — AI機械学習向けの対応 — 外部データとの連携 — 人間/他ロボット等との協働への対応 18

19.

ROSに関して(とお詫び) — 本セミナーの概要でROSの解説を予定しておりましたが、 いまこれを書いている締切日の朝方まで、岩手の開発担当と なにかROS2とUnityの連携デモ的なものを用意しようと 準備を進めていました。しかしきちんと動く環境とデモの作成 まで至らなかったため今回はお詫びのみとなります。 — ROS(1)とROS2では、ROS(1)が通信仕様的なものなのに対して、 ROS2はシステムネイティブのライブラリの実装を含むものと なっており、いまのところ、依存ライブラリとの関連などで ビルドがなかなかうまく行かない — 今後は必ず必要となるため、引き続き検証・研究を行います 19

20.

今後の展開に関して — このプロジェクトの成功のためには、1社だけの力では 成し遂げられないと考えています 特に弊社はコンピュータ上のシステム開発がメインで その他領域について、広く専門家の方と協業していく 必要があります – – – 政府/自治体/研究機関/学術機関 AI/農作業機械/ロボット/部品開発会社 農家・農業法人 — もしも、協業に興味がある、こういう事ができないか? といった事がありましたら一度弊社の方にお問い合わせ いただければと思います 20

21.

以上、ご覧いただき ありがとうございました #unity3d Generative Art — Made with Unity