Skip to content

Latest commit

 

History

History
123 lines (81 loc) · 11.9 KB

File metadata and controls

123 lines (81 loc) · 11.9 KB

Step 1 フレーム抽出GUI

Step 1 は、360°動画、通常動画、または既に用意してある連番静止画フォルダから、SfM/3DGSに使うシーン画像を作る画面です。ここで作った images/_stechdrive/frames/selected_frames.csv が、Step 2の確認、Step 3のマスク生成、Metashape、COLMAP、SphereSfMなどへ進む土台になります。

シーンフォルダを指定し、右側の 入力ソース一覧 に動画や静止画フォルダを追加して処理します。動画は指定した間隔でフレーム抽出し、静止画フォルダはシーンの images/ にコピーして登録します。既定でONの 変化補正 により、似ている冗長なフレームを減らし、視点変化が大きい区間の候補を追加できます。抽出処理を高速化したい場合は 変化補正 をOFFにします。

抽出の考え方

このStepは、動画からできるだけ多くの静止画を作るためのものではありません。後段のSfMに渡しやすい画像セットを、必要十分な枚数で作るための前処理です。

まず前提として、撮影素材の品質が最も重要です。撮影時点で強くブレている、露出が破綻している、特徴点が少ない、移動経路が悪い、といった問題は、抽出アルゴリズムだけでは根本的には直せません。このStepでできるのは、良い素材からSfMに使いやすい候補を選び、問題がありそうなフレームを確認しやすくすることです。

狙いは、SfMに必要な視点変化とカバレッジを保ちながら、似すぎたフレームを減らして計算量を抑えることです。固定間隔を基準にすると動画全体を安定して覆いやすく、変化補正を使うと、移動が遅い区間では冗長な候補を落とし、移動が速い区間では候補を補えます。

近傍で一番シャープなフレームを選ぶだけでは、SfM向けの候補としては不十分です。シャープでも、直前の採用フレームと似すぎている、特徴点が少ない、重なりが弱い、といったフレームは再構成に効きにくいことがあります。そのため、このStepでは鮮明度だけでなく、直前の採用フレームとの変化量、特徴点追跡、低テクスチャ判定も合わせて見ます。

この設計は、必要なところだけ詳しく見るためのものです。全フレームを高解像度・高コストに評価して常に一番シャープな画像を探す方式ではなく、固定間隔を土台にして、似すぎ・視点変化不足・ブレ候補など判断が必要な箇所を重点的に見ます。そのため、SfMに使う候補の品質を確認しやすくしながら、処理時間、出力枚数、後段SfMの計算量を抑えやすくなります。

撮影方法は主に歩行撮影とドローン撮影を想定しています。歩行撮影でも、室内や展示物のように対象が近い場合と、公園や広場のように対象が遠めの場合では、同じ移動量で得られる視差が変わります。そのため 撮影プロファイル で、基準間隔、最小/最大間隔、変化補正の自動閾値をまとめて選びます。

まず決めること

やりたいこと 推奨設定
まずSfM用のフレームを普通に作りたい 撮影プロファイル: 歩行・標準, 変化補正 ON
とにかく早くフレームだけ出したい クイック抽出 ON
壁、展示物、家具など近い対象が多い 撮影プロファイル: 歩行・近接
公園、広場、外観など広めの歩行撮影 撮影プロファイル: 歩行・広域
空撮や遠景中心の動画 撮影プロファイル: ドローン・遠景
同じ動画を設定を変えて作り直したい 抽出対象: 選択動画を再抽出
複数動画を同じシーンに追加したい 抽出対象: 未抽出動画を追加
既にある連番静止画から始めたい 入力ソース一覧静止画フォルダを追加

シーンフォルダのパスに日本語などの非ASCII文字、極端に長いパス、制御文字や " が含まれる場合、GUIは実行前に止めます。外部ツールで失敗しやすいため、英数字だけの短い作業パスを使ってください。

基本操作

  1. まず シーンフォルダ を選びます。出力はこの中の images/ に入ります。
  2. 右側の 入力ソース一覧 を確認します。シーンフォルダ内に動画があれば自動で登録されます。
  3. 目的の素材がない場合は、動画を追加 または 静止画フォルダを追加 で入力ソースを追加します。追加操作は既存の一覧を置き換えないため、別フォルダの動画や静止画フォルダも後から追加できます。
  4. 動画と静止画フォルダは同じ一覧に混在できます。実行時は一覧の上から順番に、動画抽出または静止画登録を行います。
  5. まず 撮影プロファイル を選びます。通常の歩行撮影は 歩行・標準 から始めます。
  6. 通常は 変化補正 をONにします。すぐ切り出したいだけなら クイック抽出 をONにします。
  7. 抽出対象 を選びます。初回や別動画の追加は 未抽出動画を追加 で十分です。
  8. 実行前チェックが 準備完了 になったら フレーム抽出を実行 を押します。
  9. 完了後、Step 2で抽出結果を確認します。

入力ソース一覧は、これから処理する素材を確認する場所です。動画には抽出状態、360°/通常判定、解像度、fps、尺、推定フレーム数が表示されます。静止画フォルダには対象画像数が表示されます。素材を間違って追加した場合は、一覧で行を選んで削除できます。元の動画ファイルや静止画フォルダそのものは削除されません。

静止画フォルダを追加した場合は、対応する静止画をシーンの images/ に取り込み、動画抽出と同じ形式の確認メタデータを書きます。これにより、既存の連番画像も手作業でねじ込まずに Step 2 と Step 3 へ進めます。

固定間隔と変化補正

固定間隔

基準間隔 は、何秒ごとに1枚を候補にするかです。30fpsの動画で 1.5 秒なら、おおよそ45フレームごとに1枚を候補にします。

値を大きくすると枚数は減り、値を小さくすると増えます。SfMでは、まず時間方向のカバレッジが安定した固定間隔を基準にするほうが扱いやすいです。

固定間隔は、最終的な品質を決める唯一の基準ではなく、動画全体を安定して覆うための土台です。ここから、実際の視点変化やブレ候補を見て調整します。

変化補正

変化補正 は、固定間隔だけでは拾いきれないSfM向けの条件を補う判断です。直前に採用したフレームとのペア解析を使い、単なるカメラの向きの変化ではなく、yaw補正後に残る見え方の変化を見ます。主に次のように候補を調整します。

  • 似すぎた候補は 除外: 似たフレーム として落とす
  • 固定間隔より前でも視点変化が大きい候補は 追加: 視点変化を補完 として足す
  • ブレ候補を落とした場合は最大間隔までの範囲から代替候補を探し、再評価して 追加: ブレ候補を置換 として残す
  • 採用間隔が空きすぎる場合は 追加: 間隔の空きすぎを防止 として残す
  • ブレを 除外: ブレ要確認: ブレの可能性 に分け、低テクスチャや弱い特徴点追跡の可能性がある候補もStep 2で確認しやすいように印を付ける

クイック抽出

クイック抽出 は解析を飛ばして、指定した 基準間隔 でそのまま切り出すモードです。早い代わりに、変化補正やStep 2向けの確認ラベルは作りません。

内容確認用の軽い切り出しや、手元ですぐ画像だけ欲しいときに使います。SfMへ送る本番フレームを作る場合は、通常はOFFにして変化補正を使うほうが安全です。

間隔の考え方

設定 意味 目安
基準間隔 基準候補の間隔 歩行・標準: 1.5
最小 追加候補を入れる最小間隔 歩行・標準: 0.8
最大 低変化でも空きすぎない安全間隔 歩行・標準: 4.0

枚数が多すぎる場合は 基準間隔 を少し上げます。逆にカメラ移動が速く、視点変化を取り逃がしていそうなら 基準間隔 を下げるか、最小 を小さくします。

撮影プロファイル

撮影プロファイル は、変化補正の自動閾値と、基準間隔・最小間隔・最大間隔の初期値をまとめて選ぶ設定です。撮影ジャンルそのものを固定するものではなく、同じ移動量で画像上にどれくらい有効な変化が出るかの前提を選びます。

  • 歩行・標準: 施設内外、街路、通常の歩行撮影向けです。迷ったらここから始めます。
  • 歩行・近接: 壁、展示物、家具、狭い通路など、近い対象が多い撮影向けです。
  • 歩行・広域: 公園、広場、建物外観など、歩行撮影でも対象が遠めの撮影向けです。
  • ドローン・遠景: 空撮や遠景中心の撮影向けです。

選択後も 基準間隔最小最大 は手動で調整できます。

解析幅とJPEG品質

解析幅 は、変化補正、ブレ確認、特徴点追跡でどれくらい細かく画像を見るかの設定です。大きくすると細部の判定が少し安定する場合がありますが、処理は遅くなります。出力される images/ の解像度は変わりません。通常は既定値のままで十分で、判定が明らかに不安定な素材だけ調整を検討します。

JPEG品質 は、保存される画像の画質と容量のバランスです。数値が小さいほど高画質で容量が大きくなります。既定の 2 は高品質寄りなので、通常は変更しません。

実行後にできるもの

出力 内容
images/ 抽出または取り込みされたシーン画像
_stechdrive/frames/selected_frames.csv Step 2で確認する採用/除外候補とソース情報
_stechdrive/frames/extract_report.json 抽出条件や結果の記録
extract_cache.npz 再解析を速くするためのキャッシュ

Step 2では、_stechdrive/frames/selected_frames.csv の判定をGUIラベルに変換して表示します。追加除外要確認 が多すぎる場合は、Step 1の間隔や撮影プロファイルを見直します。

よくある判断

  • まずは 撮影プロファイル: 歩行・標準, 変化補正 ON で試します。
  • 抽出枚数が多すぎる場合は 基準間隔 を上げます。
  • 似たフレームが多い場合は、Step 2で確認し、必要なら 基準間隔 を上げるか 歩行・広域 を試します。
  • ブレ候補の除外や要確認が多い場合は、まず撮影素材自体を確認します。明確なブレには近傍の代替候補を探しますが、撮影全体がブレている場合は根本的には救えません。Step 2で問題ない境界フレームは採用のまま進められます。
  • 同じ動画を作り直すときは リセットして上書き を選びます。
  • クイック抽出 は便利ですが、Step 2向けの解析ラベルが出ないため、本番用の選別には通常抽出を使います。