プログラミング

プログラミング

PR

「Kaolin」とは?NVIDIAが開発した3Dディープラーニング研究を加速する「PyTorchライブラリ」を深掘り

RankRED

RankRed is a place where you can find a lot of interesting and inspiring stuff about science and technology, internet, programming tools and plugins, robots, machines and high tech gadgets, and much more.

本記事は、NVIDIA Develops PyTorch Library To Accelerate 3D Deep Learning Research
翻訳・再構成したものです。
配信元または著者の許可を得て配信しています。

542 views

読了時間 : 約2分6秒

・Kaolinは、3Dモデルをニューラルネットワークの領域に移行させる新しい包括的なPyTorchライブラリである。
・レンダリング、シェーディング、ライトニングなど、多くのグラフィック要素を搭載。
・ディープラーニングのための3Dモデルを作成する作業を、300行のコードからわずか5行に削減する。

 

3Dディープラーニングは、AR(拡張現実)、自動運転車、ロボット工学などの複雑なタスクにおける関連性が高いため、最近注目を集めています。強力なグラフィックカード【パソコンのグラフィック処理を担当する拡張ボード】とディープラーニング手法の登場により、これまで困難だった大規模な3Dデータの解析が可能になりました。

 

それでも、この分野で実験を行うことは非常に困難な作業です。というのも、研究者が一般的な3Dデータセットを簡単にロードし、機械学習のアーキテクチャを学習・評価するための標準的なシステムがないからです。

 

そこでNVIDIA【アメリカの半導体メーカー】の研究チームは、3Dモデルをニューラルネットワークの領域へと移行させるツール「Kaolin」を開発しました。これは、ディープラーニング研究を加速するためのPyTorchライブラリです。

 

Kaolinという名前は、3Dモデルの彫刻に使われることもある塑像(粘土)の一種、Kaolinite(カオリナイト)に由来します。

 

初心者にも経験豊富な開発者にも価値あるツール

この包括的なライブラリを実装することで、ユーザーはディープラーニング用の3Dモデルを作成する作業を、300行のコードからわずか5行に削減することができます。

 

Kaolinは、様々な3Dデータセットのロードと前処理を行う機能と、ポイントクラウド、ボクセルグリッド、メッシュといった様々な表現を制御するローカル関数を提供します。また、不要な定型コードの使用を削減します。

 

PointNet++による飛行機と自動車の分類器の学習とテストに必要な5行のコードの例

 

このライブラリには、レンダリングやシェーディング【陰影付け】からビューのワーピング【歪み補正】まで、様々なグラフィック要素が搭載されています。また、シームレスな評価のための評価指標と損失関数のセットをサポートしているほか、3D結果をレンダリングするための可視化モジュールもあります。

 

Kaolinは、ほとんどすべての一般的な3Dタスクのほか、次の点をサポートしています。

 

1.基本的なグラフィックユーティリティ(シェーディング、ライティングなど)
2.微分可能レンダリング
3.単一画像ベースのメッシュ再構築
4.メッシュの分類とセグメンテーション
5.ボクセルグリッド上の3D超解像

 

現実の世界での応用

 

 

分類:通常、複雑なプロセスの最初のステップは、3Dシーン内のオブジェクトを識別することです。

 

3Dパーツのセグメンテーション:Kaolinは、3Dモデルの様々な部分を自動的に識別することで、3Dモデルのカスタマイズや、アニメーション用のキャラクターのリギング【キャラクターを動かすための仕組み(リグ)を作ること】を容易にします。

 

画像から3Dへ:学習済みニューラルネットワークによって検出された製品画像から3Dモデルを構築することもできます。

 

研究チームは、このようなタスクのソースコードと、標準的なベンチマークで事前に学習済みのモデルを公開しています。Kaolinを中心とした強力なオープンソースコミュニティを育成するつもりです。他の研究者や実務家からの貢献は大歓迎です。

おすすめ新着記事

おすすめタグ