Photogrammetryでなんかやってる人

Photogrammetryから心理学、人類学までいろいろ話したかった

MetashapeとRealityCaptureのAlignment情報を相互にImportするためのメモ書き

昨日人に聞かれたので、忘れないうちにメモ書きを

 

 

Metashape から RealityCapture へ

 

Metashapeから

0. 一連の画像を0からの [番号.jpeg] にRenameするかRawからそうなるよう現像

 (左0埋めしない)

1. 通常Align

2. ツール→カメラを最適化 Camera Optimization

  f,k1,k2,k3だけ✓を残す

2.1 Alignできなかった画像を削除

 画像選択→右クリック→カメラを削除

3. ファイル→エクスポート→イメージを変換する 

v1.8.3まで
Export undistorted images (.jpeg)

 歪みを取り除く✓

 主点をセンターリング✓

 正方形ピクセル ✓

 ファイル名:{filenum}.jpeg    #0.renameも兼ねる 

v1.8.4 (検証中)

「Transform to initial calibration(初期キャリブレーションに変換)」

 

v1.8.4 (検証中)

 または ファイル→エクスポート→Maya ASC2

も画像を自動にundistortしてくれるっぽい

 

4. ファイル→エクスポート→カメラをエクスポート Export bundle-out (*.out)

5. 画像と*.out を一つのフォルダーにまとめる

 

RealityCaptureへ

1. 左上ボタン→Open → RC projectからbundle-out (*.out)に切り替え。先ほどの*.outを選択ロード

(或いは*.outをRCにドラッグアンドドロップ)

2. 好きに料理。例えばそのまま再構築

 

f:id:fft_kedar:20211009161128p:plain



 

RealityCapture から Metashape へ

 

RealityCaptureから

0. 上記のようにRenameか現像

1. 通常Align

2. Alignment tag → Export → Registration → bundle v0.3 

 Export Images [Yes]  

 naming conventionは0000...のデフォルトで

3. 画像と*.out を一つのフォルダーにまとめる 

 

Metashapeへ

1. 画像をImport

2. File→Import → Import Cameras →*.outを選択

3. 好きに料理

 

 

 

備考:

  • RenameはフリーソフトPython数行でいけるので簡単。下準備にしなくていい 
  • bundle-out (*.out)には各カメラの内部/外部パラメータが格納されているが、f(フォーカルレングス)以外の内部パラメータが入ってないため画像のUndistortが必要。
  • [MetashapeからRealityCaptureに]の場合、画像は*.jpegしかサポートされてない。
  • 上の2つを解決するために、
  • RealityCaptureにMetashapeのalignment情報をimportしたあとに画像の差し替えやxmp書き出し、元のundistortの画像と一緒に処理するなども可能。
  • 完全互換のやり方はMetashapeからcamera.xmpを書き出し、それをrc形式のxmpに変換するけど、なかなかめんどくさいので。Metashapeのcamera.xmpの中に内部パラメータも格納されているので完全互換。

 

ほとんど使わなくていい技。

 

参考:

Import Agisoft Camera Alignment – RealityCapture Support

 

参考:

Metashape pdf

https://www.agisoft.com/pdf/metashape-pro_1_7_en.pdf