東京大学 3Dスキャン勉強会「フォトグラメトリ」

65.6K Views

October 15, 23

スライド概要

フォトグラメトリの基礎、基本的な撮影方法や事例。
RealityCaptureを用いたフォトグラメトリ処理やコンテンツ作成方法を解説。
撮影効率を優先した360度カメラの動画を用いたノウハウも紹介。

・フォトグラメトリとは?
・事例紹介
・ワークフロー紹介
・フォトグラメトリ足運び紹介
・360度カメラの活用
・フォトグラメトリ処理デモ
・フォトグラメトリ以外の空間再現技術への活用 / 機材紹介 / 制作環境紹介

講義の録画はこちら:https://t.co/194x5BXyFW

profile-image

🍅藤原龍 Ryo Fujiwara / ホロラボ HoloLab Inc. 📸仕事、趣味で物理空間をフォトグラメトリやレーザースキャンで3DデジタルアーカイブしてVRやARのデジタルツインコンテンツつくったりしてる人 🎨制作依頼も承り

シェア

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

3Dスキャン勉強会 フォトグラメトリ 龍 lilea / ホロラボ

2.

自己紹介  藤原 龍 - Ryo Fujiwara  職歴とか ・鹿島建設Grアルモ設計:建築ビジュアライゼーション / シミュレーションあれこれ ・ホロラボ :SIARチーム (Spatial Info ARchitects - 空間情報技術部)  趣味/仕事 実空間をデジタルアーカイブしてあれこれ活用(フォトグラメトリ&レーザースキャン) 龍 lilea @lileaLab 2

3.

主要作品 – フォトグラメトリにより作成したコンテンツ  2019 年 VRAA Meetup会場 エンジンルームVR 熱海土石流 可視化 FLOWER4U 阿武隈川氾濫 可視化  2020 年 旧都城市民会館  2021 年  2022 年 中銀カプセルタワービル 東京メトロ 電車/駅/橋梁 博物館動物園駅  2023 年 3

4.

本日のメニュー  フォトグラメトリとは?  事例紹介  ワークフロー紹介  フォトグラメトリ足運び紹介  360度カメラの活用  フォトグラメトリ処理デモ  残り時間次第で… フォトグラメトリ以外の空間再現技術への活用 / 機材紹介 / 制作環境紹介 4

5.

事例『京都VR 清水寺参道』 先週公開最新作! cluster起動URL(スマホ対応) VRChat起動URL(PCVR用) https://youtu.be/Qb0AV_C2iKI 5

6.

フォトグラメトリとは? 連続的に撮影した複数の写真から3Dモデルを生成する手法 ①写真を撮影 物 地上 空撮 … 8割ほど重なり合うようにオーバーラップを 取りながら連続した写真を撮影する ︙ ︙ 6

7.

フォトグラメトリとは? ②アライメント(写真位置推定)を実行 物 地上 空撮 各写真の特徴的な箇所のピクセル の動きから写真がどこから撮影さ れたのか3D空間上に復元する。 7

8.

フォトグラメトリとは? ③メッシュ生成 物 地上 空撮 写真推定結果から各ピクセルの奥 行きを算出しメッシュを生成する。 8

9.

フォトグラメトリとは? ④テクスチャ生成 物 地上 空撮 メッシュに対し写真からテクスチャ を投影、生成する。 9

10.

京都VRデモ cluster, Unity 10

11.

ワークフロー 写真撮影/レーザースキャンから完成までの大まかな流れと使用ソフト 写真撮影+編集 事前準備 写真撮影 [α7R IV] [RX0] [Insta360] [THETA] [ドローン] [iPhone] 撮影データ編集 ファイル名編集 キーワード,タグ付け 現像 [Bridge] 現地事前下見 ※可能な場合は 事前仮撮影 レーザースキャン+編集 レーザースキャン [RTC360] [BLK360] 点群データ読込 [REGISTER 360] 点群データ整備 位置合わせ調整 ノイズ除去 点群色編集 [InfiPoints] フォトグラメトリ+編集 フォトグラメトリ [RealityCapture] [Metashape] [3DF Zephyr] モデル整備 ジオメトリ編集 [Cinema4D] [Blender] [Houdini] [ZBrush] テクスチャ編集 [SubstancePainter] [Photoshop] 活用 コンテンツ制作 [Unity] [UnrealEngine] [Cinema4D] [Blender] etc. 11

12.

ワークフロー 簡略版 簡易かつ低コストで行う場合のワークフロー 撮影 スマホ 360度カメラ 活用 フォトグラメトリ RealityCapture https://www.capturingreality.com/RealityCapture-PPI Metashape https://www.agisoft.com/features/standard-edition/ 3DF Zephyr https://www.3dflow.net/3df-zephyr-free/ PPI版あり 少額から可能な従量課金タイプあり Standard版あり 無料版あり 約2.7万円 写真50枚まで ObjectCapture https://lilea.net/lab/how-to-use-object-capture/ Meshroom https://alicevision.org/ 無料 macで処理 (最低限の機能のみ 物体特化) Unity UnrealEngine Blender etc. 無料 etc. なお、フォトグラメトリの品質を左右のするのはソフトではなく写真撮影! 12

13.

フォトグラメトリ足運び 13

14.

フォトグラメトリ足運び どうやって撮ってるのという話  大きな対象  広い空間  狭い空間  暗い空間  長距離 14

15.

フォトグラメトリ足運び 横移動 基本足運び カニ歩き 前後関係が認識されやすく位置推定精度が高い 15

16.

フォトグラメトリ足運び 斜め構え横移動 狭い通路の場合は真横ではなく斜め前方に向けオーバーラップ率を上げる 狭い通路や、横向きでは特徴が捉えづらいシーンでの足運び カメラを斜め前方に向け特徴点を多く捉えるようにする 16

17.

フォトグラメトリ足運び 小刻み 暗い+狭い+似た景色が続く 銭洗弁天の入口トンネルの例 1mピッチ程度で前進しながら撮影 25~30cmピッチ程度に小刻みに前進しながら撮影 繋がらない or 繋がっても破綻 (途中でスケールがおかしくなっている) きれいに繋がった 17

18.

フォトグラメトリ足運び スイッチバック 通路奥まで撮影したら振り返らず、バックしながら逆側の面を撮影する 暗く狭く特徴点が少ないような空間で、通路の奥でUターンするにはリスクがあったので行った動き 18

19.

フォトグラメトリ足運び 閉じる 円を描くように一周させて閉じる 空間をスキャンする場合でも基本は外向きではなく内向きに撮り、始点を終点を繋ぐ 19

20.

フォトグラメトリ足運び 円で繋ぐ 長距離を撮影する場合は道の左右でズレが生まれないよう円を繋げる 一度に長距離移動すると「繋がらない」「ずれる」ので、確実につながる距離ごとに円を閉じ、それを繋げていく。 20

21.

フォトグラメトリ足運び 二週 全体を押さえてからディテールを撮る 1周目は全体を引きで撮影 空間のベースを抑える 2周目で対象に近づきディテールを撮影 ディテールのみを撮影していると現在地を見失い位置推定エラーとなるリスクがあるのでまず全体を抑える 21

22.

フォトグラメトリ足運び 蛇行 前後左右全てを撮りながら蛇行で進む あまりおすすめはしない 撮影時間が限られている時に使う程度留まらず一気に 撮っていく必要がある場合に使用 22

23.

フォトグラメトリ足運び 戻る 適度に全体が見える位置へ戻る ディテールを撮り続ける動きは誤差がかさむ 位置推定時に迷子になる ディテールを撮ったらその都度一旦全体が見える位置に戻る 迷子にならないように今どこにいたのか教えてあげる 23

24.

フォトグラメトリ足運び 一筆書き 不慣れなうちは往復は位置推定エラーになりやすいので一筆書きで意識 同じ場所を何度も撮影するとそれぞれの誤差によりテクスチャの品質が下がってしまうデメリットも 24

25.

フォトグラメトリ足運び RealityCapture画面紹介 中銀カプセルタワービル, 大黒湯, 小江戸川越 25

26.

360度カメラ撮影TIPS 26

27.

360度カメラ 360度カメラの使用は本来はおすすめしないです。 なぜならー  解像度が足りない  スティッチング部分にずれがあり光学的に正しくない  センサーサイズが小さくノイズが乗りやすい しかし一方でー  圧倒的に素早く撮影出来る 観光地のような場所の場合朝早い時間でも人がやってきてしまう。 本来は一眼撮影で品質を上げたいが、 拘ったが故にそもそも撮影が終わらなかったら本末転倒。 27

28.

360度カメラ 360度カメラ選定時はスティッチングの精度に注意 「THETA X」の動画の場合はずれが大きかったので「Insta360 One RS 1-inch」を採用した 28

29.

360度カメラ 観光地等で撮影時間が限られる場合の効率的な撮影方法。あくまで特殊な例。 歩きつつゆっくりロッドを上げ下げし、低いアングルと高いアングルをまとめて撮影。 https://youtu.be/Z87yRCCjyMM 29

30.

360度カメラ 高さ違いが必要な理由 360度カメラを頭上に掲げた高さ 瓦の面や軒下が死角になってしまう アバターはなにかとジャンプする! アバターはなぜか低身長が多い! 屋根や軒下の破綻は避けたい! 30

31.

360度カメラ 上からも下からも撮る。 31

32.

360度カメラ 実際のカメラの位置 32

33.

360度カメラ RealityCapture画面紹介 33

34.

360度カメラ 実際に撮影した動画 34

35.

360度カメラ レンズの向きによる違い (Theta X使用時の検証結果) 35

36.

360度カメラ レンズの向きによる違い (Theta X使用時の検証結果) 36

37.

360度カメラ レンズの向きによる違い (Theta X使用時の検証結果) 37

38.

フォトグラメトリ処理デモ 38

39.

モデルクリーンアップ例 39

40.

モデルクリーンアップ例 40

41.

モデルクリーンアップ例 41

42.

モデルクリーンアップ例 42

43.

モデルクリーンアップ例 43

44.

モデルクリーンアップ例 44

45.

モデルクリーンアップ例 45

46.

モデルクリーンアップ例 46

47.

モデルクリーンアップ例 47

48.

モデルクリーンアップ例 48

49.

モデルクリーンアップ例 49

50.

モデルクリーンアップ例 50

51.

モデルクリーンアップ例 51

52.

モデルクリーンアップ例 52

53.

モデルクリーンアップ例 53

54.

モデルクリーンアップ例 54

55.

モデルクリーンアップ例 55

56.

モデルクリーンアップ例 56

57.

モデルクリーンアップ例 57

58.

空マスクの作成 58

59.

空マスクの作成 ドローン無し、地上のみで撮影した場合屋根と空が一体化してしまう現象が発生する 59

60.

空マスクの作成 そこで、空部分をマスクするテクスチャを作成する 60

61.

空マスクの作成 すると、面倒なモデルクリーンアップをせずとも屋根が綺麗になる 61

62.

空マスクの作成 作り方は、フォトグラメトリする写真自体を空をマスクした画像に置き換える 62

63.

空マスクの作成 作り方は、フォトグラメトリする写真自体を空をマスクした画像に置き換える 63

64.

空マスクの作成 画像認識用の環境を作る必要があったが、実はPhotoshopでも出来る 空を選択し白黒画像化するアクションを作成し、一括処理を走らせる 64

65.

応用 - NeRF / 3D Gaussian Splattingへの活用 写真位置推定 規定ワークフロー 空間構築 NeRF処理 COLMAP 3D Gaussian Splatting処理 コンテンツ制作 Unity UnrealEngine etc. Open Source Software 大規模シーンや複雑なシーンの写真位置推定は不得手 応用ワークフロー RealityCapture 1. Bundler形式 .outファイルへ書き出し 2. outファイルをCOLMAP形式へ変換 (Blenderのプラグイン等) Metashape フォトグラメトリソフト 大規模、複雑なシーンの処理も可能! 65

66.

フォトグラメトリ手順書 広域フォトグラメトリの制作過程をまとめた手順書を公開しました! 1. 機材とソフトウェア 2. 写真の整理と現像 3. フォトグラメトリ処理 写真編 4. フォトグラメトリ処理 レーザースキャン編 5. 写真とレーザースキャンの合体 6. モデル修正 7. テクスチャの再生成 8. テクスチャの調整 https://lilea.net/lab/how-to-photogrammetry/ 9. Unityへ読み込み 66