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 による動画編集の自動化により、パンダの目を持つ編集者が解放されます。

ブログ    
ブログ    

推薦する

2018年に注目すべき4つのAIトレンド

[[218374]]今年、AIによる意思決定はより透明化されるでしょうか?現在、IT ビジネスで A...

...

マッキンゼー:2024年にGenAIが人工知能のビジネス界を支配する

人工知能(AI)は2023年に世界的な革命を引き起こし、多くの企業がこの高度なテクノロジーを自ら習得...

インタビュー必須:バックトラッキングアルゴリズムの詳細な説明

序文みなさんこんにちは。私はカタツムリを採っている小さな男の子です。 LeetCode を練習してい...

アメリカの科学者が新技術を開発:ロボットが行動する前によく考えさせる

カリフォルニア大学バークレー校の新しい研究によると、ロボットはビデオ認識技術を通じて物体を移動させる...

パフォーマンスは 5000 個の H100 でトレーニングされた GPT-4 に近いです。 DeepMindが新世代の大規模モデルを共同開発

最近、InflectionAI は新しい AI モデルをリリースしました。さらに衝撃的なのは、Inf...

ホットトピックのクイックレビュー:ドイツはシステムと技術の複数回の並行開発でAI戦略を強化

世界を見渡すと、各国の社会進歩、産業グレードアップ、国防建設などにおける科学技術の価値がますます明ら...

...

このような秩序だったニューロンは、皆さんがよくご存知の再帰型ニューラル ネットワークに似ていますか?

本論文では、これまでの RNN モデル研究に基づいて、隠れ状態ニューロン間の更新頻度の順序を強制し、...

PaddlePaddle と TensorFlow の比較分析

【51CTO.comオリジナル記事】この記事では主に、フレームワークの概要、システム アーキテクチャ...

米国は中国のAI企業に対する制裁で目的を果たせなかったのか?

[[278497]]中国の人工知能企業数社は、ある日、自分たちがこのようなユニークな形で世界の注目...

...

顧客体験を改善できませんか? AIを試してみませんか?

いつの時代も、顧客獲得競争は企業にとって永遠の課題です。AI技術がある程度発達した現在、多くの企業が...