概要
- SHARP は単一画像から高精度な3Dビュー合成を実現する技術
- 標準的なGPU上で 1秒未満 の高速処理を実現
- 3D Gaussian表現による リアルタイム高解像度レンダリング が可能
- 複数データセットで 最先端性能 と大幅な高速化を達成
- Python環境で簡単に導入・利用が可能
SHARP:単眼画像からの高速・高精度ビュー合成
- SHARP は、単一の写真から フォトリアルな3Dビュー を合成する手法
- 入力画像から 3D Gaussian表現 のパラメータを推定し、3Dシーンを再現
- ニューラルネットワークによる 1回のフィードフォワード処理 で、標準GPU上でも1秒未満の高速推論
- 得られた3D Gaussian表現は リアルタイムで高解像度レンダリング が可能
- シーン表現は メートル単位の絶対スケール を持ち、カメラ移動にも対応
- ゼロショット汎化性能 に優れ、様々なデータセットで高い再現性を発揮
- 先行手法と比較し、 LPIPSを25–34%・DISTSを21–43%削減、合成時間も1000分の1に短縮
導入方法
- Python環境の作成
- conda環境推奨:
conda create -n sharp python=3.13
- conda環境推奨:
- 依存ライブラリのインストール
pip install -r requirements.txtで必要なパッケージを導入
- 動作確認
sharp --helpでCLIヘルプを表示し、インストールを確認
コマンドラインインターフェース(CLI)の利用
- 予測の実行
- 入力画像から3D Gaussianを生成:
sharp predict -i /path/to/input/images -o /path/to/output/gaussians
- 初回実行時に モデルチェックポイント が自動ダウンロード
- チェックポイントの手動ダウンロード:
wget https://ml-site.cdn-apple.com/models/sharp/sharp_2572gikvuh.pt
- 手動ダウンロードした場合は
-cフラグで指定:sharp predict -i /path/to/input/images -o /path/to/output/gaussians -c sharp_2572gikvuh.pt
- 入力画像から3D Gaussianを生成:
- 出力形式
- 出力は 3D Gaussian Splatting(3DGS) の.plyファイル
- 一般的な3DGSレンダラーに対応
- OpenCV座標系 (x右、y下、z前方向)を採用
- シーン中心はおおよそ(0, 0, +z)
- 他レンダラー使用時はスケール・回転調整が必要
レンダリングとビデオ生成(CUDA GPUのみ)
- カメラ軌道に沿った動画レンダリング
- 3D Gaussian予測はCPU/CUDA/MPS全てで動作
- --renderオプション による動画生成は CUDA GPU必須
- 初回起動時はgsplatレンダラーの初期化に時間がかかる場合あり
- 使用例:
sharp predict -i /path/to/input/images -o /path/to/output/gaussians --render- 既存のGaussianからレンダリング:
sharp render -i /path/to/output/gaussians -o /path/to/output/renderings
評価・参考情報
- 定量・定性評価 は論文参照
- ビデオ比較例 は公式ページで公開
- 引用方法
- 論文を利用する場合は、指定のBibTeXを利用
- ソースコード・モデルのライセンス
- 利用前に LICENSE および LICENSE_MODEL を確認
- オープンソース貢献
- 詳細は ACKNOWLEDGEMENTS を参照