Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
全方位カメラやPostshotを利用した3D Gaussian Splattingの実行方法の例
Search
Kenta Itakura
May 14, 2025
Technology
0
13
全方位カメラやPostshotを利用した3D Gaussian Splattingの実行方法の例
Kenta Itakura
May 14, 2025
Tweet
Share
More Decks by Kenta Itakura
See All by Kenta Itakura
ImVisionLabs株式会社: 東京電力HD様との取り組み
kentaitakura
0
16
3次元点群の地表面抽出の方法であるCSF (Cloth Simulation Filter) について
kentaitakura
0
41
画像への投影を用いた3D点群認識
kentaitakura
0
17
深層学習を用いた根菜類の個数カウントによる収量推定法の開発
kentaitakura
0
86
3次元点群からの点の間引き(サンプリング)について
kentaitakura
0
160
テクスチャ画像付きのメッシュモデルを3次元点群へ変換する
kentaitakura
1
550
点群ライブラリPDALをGoogleColabにて実行する方法の紹介
kentaitakura
1
200
地表面抽出の方法であるSMRFについて紹介
kentaitakura
1
640
3次元点群を利用した植物の葉の自動セグメンテーションについて
kentaitakura
2
1.1k
Other Decks in Technology
See All in Technology
MCPが変えるAIとの協働
knishioka
1
150
正式リリースされた Semantic Kernel の Agent Framework 全部紹介!
okazuki
1
1.1k
データベース04: SQL (1/3) 単純質問 & 集約演算
trycycle
PRO
0
730
Part1 GitHubってなんだろう?その2
tomokusaba
2
740
3D生成AIのための画像生成
kosukeito
2
620
Datadog のトライアルを成功に導く技術 / Techniques for a successful Datadog trial
nulabinc
PRO
0
140
経済メディア編集部の実務に小さく刺さるAI / small-ai-with-editorial
nkzn
2
370
genspark_presentation.pdf
haruki_uiru
1
250
AndroidアプリエンジニアもMCPを触ろう
kgmyshin
2
650
Google Cloud Next 2025 Recap アプリケーション開発を加速する機能アップデート / Application development-related features of Google Cloud
ryokotmng
0
170
猫でもわかるS3 Tables【Apache Iceberg編】
kentapapa
2
190
使えるデータ基盤を作る技術選定の秘訣 / selecting-the-right-data-technology
pei0804
5
1.1k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
700
Site-Speed That Sticks
csswizardry
6
540
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Automating Front-end Workflow
addyosmani
1370
200k
Typedesign – Prime Four
hannesfritz
41
2.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.2k
KATA
mclloyd
29
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.6k
Bash Introduction
62gerente
613
210k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Transcript
全方位カメラを利用した3D Gaussian Splattingの実行方法の例 板倉健太 ImVisionLabs株式会社
3D Gaussian Splatting(3DGS)の概要 任意の角度から見たときの対象の画像情報の再構成を可能にする技術 図1:花瓶に対する実行結果 図1, 3 はScaniverse、図2はSupersplatを利用して可視化しています 図2:樹木細部に対する実行結果 図3:樹木に対する実行結果
点群にガウス分布を割り当て、視点に応じてその分布をレンダリングすることで、 きめ細かな描写とスムーズな可視化を両立可能 従来のNeRF(Neural Radiance Fields)に比べて高速かつ高精細な表現が可能
3DGSの実行について PCで実行するPostshotやスマートフォン/タブレット内で実行するScaniverseなどがある 項目 Postshot Scaniverse 開発元 Jawset Visual Computing 社
Niantic Spatial 社 プラットフォーム PC スマートフォン / タブレット 入力 静止画や動画 スマートフォン / タブレットでのスキャン 利便性 様々なパラメータや手法を利用可能 デバイス単体で完結、スキャン操作が簡単 費用 無料 無料 動作要件 Windows 10 以降、NVIDIA GPU (RTX 2060、Quadro T400 / RTX 4000以上)必須 ・iPhone Xシリーズ以降のモデル (X、11シリーズは一部機能に制限アリ) ・A12 プロセッサ以降を搭載した iPad ・Android 7.0(Nougat)以降のモデル
全方位画像を利用した3DGSの実行について 全方位カメラは、単一の撮影位置から水平方向360度、 垂直方向も広範囲にわたる画像を撮影可能 全方位カメラを利用して3DGSを実行したい 2025年2月に調べた限りではPostshotなど主要な3DGSツールにおいて、全方位画像を 直接的な入力とした3DGSの手法は明確に整備された例は少ない 本スライドでは、全方位カメラから取得された動画を利用して、3DGSを実行する手順の 例を紹介 図:撮影風景と撮影写真の例 図出典:RICOH360
Blog https://blog.ricoh360.com/ja
3DGS実行のワークフロー 1. 全方位カメラ映像の取得 2. Dual Fisheye 形式の動画を正距円筒図法に変換 3. NeRFStudio を含む3DGS関連ツールを環境構築不要で実行するため
の仮想実行環境の構築 4. 正距円筒画像を平面投影し、画像群を作成 5. 画像群からフレームを間引く 6. 3D Gaussian Splatting により画像群から3D点群を生成
THETAによる撮影 RICHO社製THETAを利用して対象の撮影を行いました 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot
の実行 RICOH THETA Z1 https://www.ricoh360.com/ja/theta/ 撮影例
正距円筒図法への変換 使用アプリケーション:RICOH360公式アプリ 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot
の実行 https://www.ricoh360.com/ja/apps/ アプリに撮影した動画をドラッグ&ドロップで正距円筒図法へ変換
正距円筒図法への変換 RICOH360公式アプリを使用して、Dual Fisheye 形式の動画を正距円筒図法に変換 変換したデータは、「データ名_st.mp4」で出力される Dual Fisheye 正距円筒図法 正距円筒図 法への変換
平面 投影 THEAによ る撮影 間引き Postshot の実行
NeRFStudioを利用した平面投影 NeRFStudioは、NeRF(Neural Radiance Fields) を簡単に扱えるようにした、オープンソースのツール NeRFを用いた3D再構築や新しい視点からのレンダリングを行う際に便利 このスライドでは、前処理として用意されている画像を平面投影する機能を利用 画像出典: https://docs.nerf.studio/ 正距円筒図
法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
仮想実行環境の構築 Dockerを利用して仮想実行環境を構築 動画が保存されているフォルダで、以下のコマンドを実行し、DockerContainerを起動 Container起動後、コンテナ内で以下のコマンドを実行し、正距円筒図法を平面投影 ※ 同様の処理はffmpegで実行可能: 例)ffmpeg -i in.MP4 -vf
"v360=input=equirect:output=flat:w=640:h=640:yaw=180:pitch=0" -c:v libx264 -crf 18 -preset fast -y out.mp4 ns-process-data video --camera-type equirectangular --images-per-equirect 8 --data R0010240_st.MP4 --output-dir image_planer docker run --gpus all ` -v ${PWD}:/workspace/ ` -w /workspace/ ` -p 7007:7007 ` --rm ` -it ` --shm-size=12gb ` ghcr.io/nerfstudio-project/nerfstudio:main 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
NeRFStudioでの平面投影結果 コマンドを実行したフォルダにimage_planerというフォルダが新たに追加され、平面 投影された画像群が取得できる image_planer内のimagesに平面画像へ変換したデータが入っており、8枚で1セット 正距円筒図 法への変換 平面 投影 THEAによ る撮影
間引き Postshot の実行
画像枚数の削減 作成した画像群をそのまま使用するとフレーム数が多すぎて3DGSに変化する処理に 時間がかかりすぎてしまうため、 MATLABでフレームを間引いて画像数を削減を行う。 今回の例では、1000枚以下になるように削減 正距円筒図 法への変換 平面 投影 THEAによ
る撮影 間引き Postshot の実行
3DGSへの変換 Postshotを使用して、画像群をもとに3DGSを実行 画像群をPostshotにドラッグ&ドロップすると学習を開始 主な学習パラメータ パラメータ名 内容 デフォルト 今回の設定 ImageSelection 使用画像の選択
UseBestImages Use All Images DownSampleImages 画像サイズ調整 1600 1600 MaxSplatCount 点群密度 3000k 3000k StopTrainingAfter 学習ステップ数 30k 68k 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
3DGSへの変換 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
Postshotを使用して、画像群をもとに3DGSを実行
SSIMの有効化 設定で有効化することにより、SSIM(構造的類似度指標)を表示することが可能 SSIM:画像構造の類似度の観点から評価する画像評価指標 ➢ 画素(輝度値) ➢ 構造(被写体の構造) ➢ コントラスト 𝑆𝑆𝐼𝑀(𝑥,
𝑦) = (2𝜇𝑥 𝜇𝑦 + 𝐶1 )(2𝜎𝑥𝑦 + 𝐶2 ) (𝜇𝑥 2 + 𝜇𝑦 2 + 𝐶1 )(𝜎𝑥 2 + 𝜎𝑦 2 + 𝐶2 ) ・ 𝜇𝑥 , 𝜇𝑦 :画像 x, y の平均画素値 ・ 𝜎𝑥 2, 𝜎𝑦 2 :画像 x, y の分散 ・ 𝜎𝑥𝑦 :画像 x, y の共分散 ・ 𝐶1 , 𝐶2 :定数 計算式 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
3DGSの実行結果 1 木々に囲まれている地形を変換した結果 ➢ 周囲の植生や階段などの構造物が うまく再現されている ➢ 撮影者の通過ルートはやや不明瞭 な形で表現されていた →撮影者をマスク処理することで改善
する可能性 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
3DGSの実行結果 2 池の周辺を変換した結果 画像出典:Deliberate Learning https://tech-deliberate-jiro.com/downsampling-grid/ ➢ 植生や構造物に加えて、水面の 再現もできた ➢
元の動画には明確に映っていな かった水面と地面との段差も、やや 粗いながらも再現できた ➢ 撮影者から離れた対岸の植生につ いても再現できた 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
画像削減枚数による3DGSの違い 画像枚数の少ない結果(680枚) ✓ 水面や木々が極端に明るくなる ✓ 池の橋が霧のようにぼやけて見える 画像枚数の多い結果(1352枚) ✓ 明るさが自然で安定 ✓
池の橋がより鮮明に再現 正距円筒図 法への変換 平面 投影 THEAによ る撮影 間引き Postshot の実行
まとめ 全方位カメラを利用して3DGSを実行する簡単な例について紹介しました Postshotでアライメントと3DGSのメイン部を両方実行できますが、アライメントは MetashapeやReality Captureなどの別ソフトで行う方が精度が向上すると思われます
Postshotの補足事項: SfMソフトの併用 本スライドでは、Postshotの中で画像のアライメントを行いましたが、Metashapeや Reality Captureを利用してアライメントを行うことも可能です。 Postshotでアライメントと3DGSのメイン部を両方実行できますが、アライメントは Metashapeなどで行う方が精度が良い場合が多いようです。 工数は増えますが3DGSの品質は向上すると考えられます。
Postshotの補足事項 学習終了時にポップアップが表示される 学習中は、図の赤枠の機能を無効にしておくと 学習が速く進んだり、クラッシュの防止に役立つ
Postshotの補足事項 Postshotでは、「トレーニング誤差を可視化する」という機能 を有効化するとSSIM(構造的類似度指標)を計算できる。 ここをチェック ここに表示される SSIMの値が低い場合、学習のパラメータを変化させること で3DGSの改善が見込める。