Kaolin:3Dディープラーニング用のPyTorchライブラリ

NVIDIAから3D系のディープラーニング研究のためのPyTorchライブラリが公開された。
まだベータ版だから、これからどんどん充実していくんでしょうね。読み方はカオリンで良いのかな?(なんかかわいい)

Kaolin



Kaolinは3Dディープラーニングの研究を加速させるためのPyTorchライブラリです。Kaolinは、ディープラーニングシステムで使用できる微分可能な3Dモジュールを効率的な実装で提供します。
Kaolinには一般的な公開3Dデータセットの読み込みと前処理を行ったり、メッシュ、点群、符号付き距離関数、ボクセルグリッドを操作するネイティブ関数があり、無駄な定型コードの記述を最小限に抑えています。Kaolinは、レンダリング、ライティング、シェーディング、view warpingなどの微分可能なグラフィックスモジュールをパッケージ化しています。また、Kaolinは一連の損失関数と評価指標をサポートすることでシームレスな評価を可能とし、3Dの結果をレンダリングする可視化機能も提供します。

最も重視しているのは、最先端の様々な3Dディープラーニングアーキテクチャを集めた包括的なModel Zooをキュレートし、将来の研究活動の出発点に立つ手助けとなることです。

ドキュメントのページがまだ作成されていないのか404だけど。

NVIDIAの公式ブログ↓
https://news.developer.nvidia.com/kaolin-library-research-3d/
https://blogs.nvidia.co.jp/2019/11/27/kaolin-library-research-3d/

Kaolinって名前は造形用粘土のKaolinite(カオリナイト)が由来なのね。


スポンサーリンク


ベータ版の時点で何ができるのか。


スポンサーリンク

機能



現在、(ベータ版)リリースには、メッシュ、ボクセル、符号付き距離関数、点群での3Dディープラーニングのための処理関数が含まれています。
一般的なデータセット(例:ShapeNet, ModelNet, SHRECなど)の読み込みもすぐにサポートされます。また、いくつかの3D変換および変換操作を実装します。

Kaolinは以下のような3Dタスクをサポートします:

  • Differentiable rendering (see Neural Mesh Renderer, its PyTorch port, Soft Rasterizer, Differentiable Interpolation-based Renderer, and a modular and extensible abstract DifferentiableRenderer specification).
  • Single-image based mesh reconstruction (Pixel2Mesh, GEOMetrics, OccupancyNets, and more…)
  • Pointcloud classification and segmentation (PointNet, PoinNet++, DGCNN, …)
  • Mesh classification and segmentation (MeshCNN, GCN)
  • 3D superresolution on voxel grids (ODM, VoxelUNet, and more…)
  • Basic graphics utilities (lighting, shading, etc.)

Model Zoo

Kaolinは、一般的な3Dディープラーニングアーキテクチャのリファレンス実装を含む大規模なModel Zooをキュレーションします。詳しくはこちらでご確認ください。

https://note.com/npaka/m/m85457421b99f

TensorFlowを使うならTensorFlow Graphicsがあるけど、PyTorch派ならKaolinだろうか。



あ、Siggraph 2019で発表されて話題になったMeshCNNのモデルもKaolinに含まれてるんですね。



MeshCNNのコードもPyTorchで実装されてるからまあ、すでに割と手軽ではあるんだけど。
https://github.com/ranahanocka/MeshCNN/


スポンサーリンク

関連記事

Google App EngineでWordPress
RefineNet (Multi-Path Refinement Network):ディープラーニン...
ZBrushで仮面ライダー3号を造る 仮面編 リファレンス画像の表示
WordPressのサーバ引っ越し方法を考える
ZBrushでアヴァン・ガメラを作ってみる 口のバランス調整
人型3Dキャラクターアニメーション制作サービス『Mixamo』で遊ぶ
Blenderでよく使うaddon
OpenCVの三角測量関数『cv::triangulatepoints』
ZBrushでアヴァン・ガメラを作ってみる 脚のポーズ調整
色んな三面図があるサイト
AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する
UnityでOpenCVを使うには?
OpenCVベースのマーカーARライブラリ『OpenAR』
映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウン まとめ
Raspberry Pi 2を買いました
トランスフォーマー/ロストエイジのメイキング
マイケル・ベイの動画の感覚
単純に遊びに行くのはだめなのか?
Deep Fluids:流体シミュレーションをディープラーニングで近似する
Unity ARKitプラグインサンプルのドキュメントを読む
参考書
オープンソースの顔認識フレームワーク『OpenBR』
『シン・ゴジラ』のコンセプトアニメーションのメイキング動画が公開された
『ピクサー展』へ行ってきた
このブログのデザインに飽きてきた
After Effects全エフェクトの解説(6.5)
ZBrushでゴジラ2001を作ってみる 側頭部のボリュームを探る
天体写真の3D動画
顔追跡による擬似3D表示『Dynamic Perspective』
ZBrushの作業環境を見直す
ZBrushで仮面ライダー3号を造る 仮面編 PolyGroupを分割する
ZBrushで仮面ライダー3号を造る 仮面編
為替レートの読み方 2WAYプライス表示
SVM (Support Vector Machine)
Raspberry PiでIoTごっこ
海外ドラマのChromaKey
3Dグラフィックスの入門書
NumSharp:C#で使えるNumPyライクな数値計算ライブラリ
組み込み向けのWindows OS 『Windows Embedded』
PolyPaint
KelpNet:C#で使える可読性重視のディープラーニングライブラリ
Google App Engine上のWordPressでFlickrの画像を貼る

コメント