【このテーマでは、多数の設定の組み合わせについてMetashapeでSfMを実行し、高精度を出せる解析設定を探すためのPythonスクリプト"repeatSfM"について説明します。】
repeatSfMはMetashape バージョン1.5.5を対象に開発されています。より新しいバージョン1.6.x, 1.7.xでの動作は十分にテストされていませんが、少なくとも「アラインメント精度」の設定(入力画像の縮小の設定)を変える必要があります。
例えば「アラインメント精度」を「高」とする場合、1.5.5ではaccuracy = Metashape.HighAccuracyとしていたところ、新しいバージョンでは、downscale = 1としなければなりません。
その結果、アラインメントの設定を文字列で列挙するlistStr_MatchingParの行は、例えば次のようになります。
listStr_MatchingPar = ['downscale = 1, generic_preselection = True, reference_preselection = True, filter_mask = False, mask_tiepoints = False, keypoint_limit = 50000, tiepoint_limit = 0',
'downscale = 4, generic_preselection = True, reference_preselection = True, filter_mask = False, mask_tiepoints = False, keypoint_limit = 2000, tiepoint_limit = 0'
] # マッチングの設定の組