NVIDIA は、わずか 5 行のコードで画像を 3D モデルに変換する 3D ディープラーニング ツール Kaolin をリリースしました。

NVIDIA は、わずか 5 行のコードで画像を 3D モデルに変換する 3D ディープラーニング ツール Kaolin をリリースしました。

近年、3D コンピューター ビジョンと人工知能はともに急速に進歩していますが、両者の効果的な組み合わせを実現するにはまだ長い道のりがあります。これを踏まえて、NVIDIA は本日、Kaolin PyTorch ライブラリをリリースしました。このライブラリを使用すると、わずか数ステップで 3D モデルをニューラル ネットワークのアプリケーション範囲に移行できます。

さらに、Kaolin ライブラリを使用すると、ディープラーニング用の 3D モデルを準備する作業負荷が大幅に軽減され、コードが 300 行からわずか 5 行にまで削減されます。

3D ディープラーニング研究を加速するために設計された PyTorch ライブラリとして、Kaolin はディープラーニング システムで使用するための微分可能な 3D モジュールの効率的な実装を提供します。 Kaolin は、一般的な 3D データセットを読み込んで前処理できるだけでなく、メッシュ、ポイント クラウド、符号付き距離関数、ボクセル グリッドを操作するためのネイティブ関数も備えているため、不要な定型コードの記述が削減されます。

Kaolin ライブラリには、レンダリング、ライティング、シェーディング、ビューワーピングなどのさまざまなグラフィック モジュールが含まれています。さらに、Kaolin ライブラリは、シームレスな評価のためのさまざまな損失関数と評価メトリックをサポートし、3D 効果をレンダリングするための視覚化機能を提供します。重要なのは、NVIDIA が将来の研究の出発点として、現在最も優れた 3D ディープラーニング アーキテクチャの多くを含むモデル ズーを作成したことです。

こうしたツールは、ロボット工学、自動運転、医療用画像処理、仮想現実など、さまざまな分野の研究者に役立つ可能性があります。 3D モデルへの関心が高まるにつれ、Nvidia の Kaolin ライブラリがこの分野に大きな影響を与える可能性があります。現在、世界中で使用されている 3D 画像を撮影できる深度カメラが 3,000 万台と推定されており、オンライン リポジトリ (レポ) には多くの 3D データセットがホストされています。

GitHub アドレス: https://github.com/NVIDIAGameWorks/kaolin/

では、カオリンライブラリの具体的な表示効果は何でしょうか? NVIDIA は次のような実用的なアプリケーション例を示しています。

3D シーンでは、オブジェクトは分類によって識別されます (この画像では椅子が識別されています)

3D コンポーネント セグメンテーションは、3D モデルのさまざまなコンポーネントを自動的に識別し、アニメーション キャラクターを「リギング」したり、モデルをカスタマイズしてオブジェクトのバリエーションを生成したりすることを容易にします (左側の 3D モデルは、右側の服や靴などを身に着けています)

画像から 3D 機能を使用すると、トレーニングされたニューラル ネットワークによって認識された画像に基づいて 3D モデルを構築できます (右側に椅子の 3D モデルが生成されます)

NVIDIA が現在リリースしている Kaolin ライブラリのベータ版には、メッシュ、ボクセル、符号付き距離関数、ポイント クラウドでの 3D ディープラーニング用の処理関数がいくつか含まれています。 ShapeNet、ModelNet、SHREC などの一般的なデータセットがすぐにロードされます。さらに、NVIDIA はいくつかの 3D 移行および変換操作を実装しました。

Kaolin ライブラリでサポートされている 3D タスクは次のとおりです。

  • 微分可能レンダラー(ニューラル メッシュ レンダラー、ソフト ラスタライザー、微分可能補間ベース レンダラー、およびモジュール式で拡張可能な抽象微分可能レンダラー仕様)
  • 単一の画像に基づくメッシュ再構築 (Pixel2Mesh、GEOMetrics、OccupancyNets など)。
  • ポイントクラウドの分類とセグメンテーション(PointNet、PoinNet++、DGCNN など)
  • メッシュの分類とセグメンテーション。
  • ボクセルグリッドの 3D 超解像度。
  • 基本的な画像処理(ハイライト、シャドウなど)。

Kaolinライブラリのインストールと使用

サポートされているプラ​​ットフォーム

Kaolin は Linux プラットフォームで正式にサポートされており、Ubuntu 18 でビルドおよびテストされています。 Windows および Mac プラットフォームでの実験的なサポートも検討する必要があります。

インストール手順

NVIDIA は、ユーザーが Kaolin ライブラリを仮想環境 (conda または virtualenv を使用して作成された仮想環境など) にインストールすることを推奨しています。 Kaolin には Python バージョン 3.6 以上が必要であり、現在ビルド時には CUDA 対応マシン (つまり、nvcc がインストールされている必要があります) が必要です。

まず仮想環境を作成します。次の例は、Kaolin ライブラリをインストールするための conda 仮想環境を作成する方法を示しています。

  1. $ conda create --name kaolin python= 3.6 $ conda activate kaolin

次に、関連する依存関係 (numpy と torch) をインストールします。構成ファイルでは、これら 2 つの依存関係を自動的にインストールできないことに注意してください。

  1. conda numpy をインストール

次に、Pytorch をインストールして、Kaolin ライブラリをインストールできるようにします。最後に、リポジトリのルート ディレクトリ (README ファイルを含むディレクトリ) から、次のコマンドを実行します。

  1. $ python setup.py をインストール

インストール中に、packman パッケージ マネージャーは、Universal Scene Description (USD) ファイルの読み取りと書き込みに必要なパッケージを含む nv-usd パッケージを ~/packman-repo/ にダウンロードします。

インストールの確認

Kaolin ライブラリがインストールされていることを確認するには、ユーザーは Python インタープリターを起動し、次のコマンドを実行します。

  1. >>> kaolin を kal としてインポートします>>> print(kal.__version)

ドキュメントを作成する

Kaolin ライブラリを詳細に調査するために、ユーザーはドキュメントを作成できます。リポジトリのルート ディレクトリ (README ファイルを含むディレクトリ) から、次のコマンドを実行します。

  1. $ cd docs $ sphinx-build . _build

ユニットテストの実行

ユニット テストを実行するには、ユーザーはリポジトリのルート ディレクトリ (README ファイルを含むディレクトリ) から次のコマンドを実行します。

  1. $ pytest テスト/

Kaolinライブラリの主な機能モジュール

repo: サポートされている 3D アセット表現には、三角形メッシュ、四辺形メッシュ、ボクセル グリッド、ポイント クラウド、符号付き距離関数が含まれます。

変換: すべての一般的な 3D 表現の変換をサポートします。
実装されたモデルは次のとおりです。

  • DGCNN (https://arxiv.org/abs/1801.07829v1)
  • DIB-R (https://arxiv.org/abs/1908.01210)
  • GEOMetrics (https://arxiv.org/abs/1901.11461)
  • Image2Mesh (https://arxiv.org/abs/1711.10669)
  • 占有ネットワーク (https://arxiv.org/abs/1812.03828)
  • Pixel2Mesh (https://arxiv.org/abs/1804.01654)
  • ポイントネット (https://arxiv.org/abs/1612.00593)
  • ポイントネット++ (https://arxiv.org/abs/1706.02413)
  • MeshEncoder: シンプルなメッシュ エンコーダー アーキテクチャ。
  • GraphResNet: 残余接続を持つ MeshEncoder。
  • 占有ネットワーク (https://arxiv.org/abs/1812.03828)
  • 他の

グラフィックス: ライブラリは、差別化可能なレンダラーを構築するための柔軟なモジュール フレームワークを提供し、個々のコンポーネントの実装と置き換えを容易にします。さらに、Kaolin ライブラリは、次の微分可能レンダラーの実装を提供します。

DIB-R (https://arxiv.org/abs/1908.01210)

ソフトRas (https://arxiv.org/abs/1904.01786)

ニューラル 3D メッシュ レンダラー (https://arxiv.org/abs/1711.07566)

メトリクス: 実装されたメトリクスと損失関数は次のとおりです。

メッシュ: 三角形の距離、面取りの距離、エッジの長さの正規化、ラプラシアン正規化、点と面の距離、法線の一貫性

点群: 辺距離、面取り距離、方向距離

ボクセル グリッド: 交差和 (3D IoU)、F スコア

<<:  GACの第2世代Trumpchi GS4が発売され、WeChat車載バージョンは安全で効率的な車内通信を実現

>>:  ストーリーを伝えれば、動画が編集されます。AI による動画編集の自動化により、パンダの目を持つ編集者が解放されます。

ブログ    

推薦する

人々を幸せにしたり不安にさせたり:注目すべき11の人工知能アプリケーション

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

LeCun 氏はリツイートしました: 中国がトップ AI カンファレンスのリストで首位を占め、米国が 2 位です!中国と米国が世界の数学計算分野を支配している

最近、「科学は戦略だ」というネットユーザーが、近年いくつかの海外の主要メディアや調査機関がまとめたグ...

コンピューターにビデオの字幕を認識させる

馬文華氏は、中国科学院自動化研究所でパターン認識と人工知能の博士号を取得しました。主に画像認識、ター...

世界最高の AI 教育会社はどこでしょうか?米国、中国、欧州、イスラエルが先頭を走る

GoogleがモバイルファーストではなくAIファーストを語り、テンセントがAIをあらゆるものに取り入...

...

Word2vec の作者が明かす: seq2seq は私のアイデア、GloVe はスキルを盗用、反撃が迫る

NeurIPS 2023の受賞論文が発表され、10年前の単語埋め込み技術word2vecが当然の「T...

高齢化社会に積極的に対応、サービスロボットがトレンドを活用

統計によると、2021年には65歳以上の高齢者人口が2億人を超え、総人口の14.2%を占める。家庭用...

OpenAI、「超知能」AIを制御するための新チームを発表

米国現地時間7月6日水曜日、人工知能の新興企業OpenAIは、「超知能」人工知能システムを誘導・制御...

...

AIビッグモデルオープンソースヒーロー!ザッカーバーグ氏はLLaMAリークについて議会から質問を受けた。「慣れている」

ザッカーバーグ氏は最近また大きなトラブルに巻き込まれた。リチャード・ブルーメンソール議員(プライバシ...

Windows Update で使用される指数アルゴリズムにより、XP マシンの速度が大幅に低下する

Windows XP ユーザーは、現在の XP が 2001 年にリリースされた XP よりも遅いこ...

機械学習で必ず学ぶべき 10 のアルゴリズム

この記事では、線形回帰、ロジスティック回帰、線形判別分析、ナイーブベイズ、KNN、ランダムフォレスト...

実際に大規模な戦争を指揮しているのはビッグデータと人工知能なのでしょうか?

ビッグデータと人工知能はどれほどの力を持っているのでしょうか。ほとんどの人はまだそれを直感的に理解し...

2018 年に最も人気のあるディープラーニング フレームワークはどれでしょうか?この科学的なランキングからわかることは

ディープラーニングは、機械学習の分野で最も注目されているテクノロジーです。ディープラーニング フレー...