Skip to content

Calibrex 開発レビュー

カメラ–LiDAR校正:現在地と次の開発判断
2026年10月29日(日本時間)/評価の基準コミット 064ea6f3

1. 現在地

合成条件で遮蔽への対応が改善した。実データでの優位性と、安全な自動採用は未確認。

直近の開発では、ステレオ推定器の交換から、校正の探索・目的関数・遮蔽の扱いへと問題を切り分けた。距離を直接合わせ、カメラから隠れた可能性のある点の影響を弱める方式に、継続検証する価値がある。

ただし、これはカメラ–LiDAR校正の開発結果であり、Calibrex全機能の総合評価ではない。この系統でSOTA達成を主張できる証拠はまだない。新しい推定器は研究用で、コアや標準設定には採用していない。

判断 現状
開発を続ける根拠 遮蔽を含む合成条件で、固定基準の復元が改善
標準採用を見送る理由 深度バイアス、実データ精度、誤った校正の検出が未解決
次の焦点 深度バイアスと外部パラメータの位置ずれを区別できるか

2. 実データで確認できたこと

既使用のKITTI 6走行、各2初期値を用いた開発評価。合格は数値収束・回転誤差0.5°未満・位置誤差20 cm未満を同時に満たすこと。12ケースは6走行に依存しており、12個の独立な実験とは扱わない。

同じ条件内での比較 SGBM UniMatch 判断
中央1フレームで校正 2/12 2/12 学習済みステレオへの交換だけでは合格数は増えない
3フレームで共同校正 6/12 5/12 複数フレーム化は有効な兆候。ただしUniMatchは対照を上回らない

両手法で画像対・幾何補正・初期値・校正ソルバーを揃えた。UniMatchはRGB、SGBMはグレースケールという入力表現の違いはある。過去の「3フレームで5/12」は前処理が異なり、上表の対照値と混同しない。

UniMatchのコードとSceneFlow学習済み重みは固定済み。CPUでも元解像度で動くことは確認できたが、実行可能であることと校正精度が高いことは別である。最新の遮蔽対応方式は、この実データ比較にはまだ入っていない。

根拠:単一フレーム比較/3フレーム比較/モデル・実行環境

3. なぜ探索・目的関数まで調べたか

カメラとLiDARを別々の視点から解析的に描画し、正解が分かる合成条件を用意した。正確な深度と、カメラから見える点だけを与えても、現行MI方式はずらした2初期値から両方とも復元に失敗した。

MI(相互情報量)は深度値どうしの統計的な関係を高める指標。高いMIが必ずしも正しい位置・姿勢を意味するわけではない。

実験 観測したこと 開発上の意味
5点に予算を均等配分 精度基準内の候補は増えたが、未収束で正式合格0/10 開始点だけ増やす方法は不十分
現行解を保持して探索を継続 合格1/10→5/10。ただし正解から約0.86°ずれる例 予算問題は改善しても、目的関数による誤選択が残る
別の点群で距離整合性を検証 上記の誤校正を通してしまった 「使う点を分けた」「距離誤差が小さい」だけでは安全を保証できない
距離を直接合わせる方式 合格1/10→6/10。ただし遮蔽と深度バイアスで失敗 測定モデルの扱いに改善余地がある

上表は同じ系統の合成形状を使った適応的な開発であり、未見データでのランキングではない。別点群の検証も同じ深度画像を共有している。

根拠:正解形状による切り分け/探索継続/検証の誤判定/距離を直接合わせた結果

4. 直近の成果:遮蔽を含む条件で改善

カメラには最も手前の面が写る。一方、離れた位置にあるLiDARには、その面の奥が見える場合がある。そこで、測定面より奥の大きな距離残差だけ影響を弱める非対称な方式を試した。手前側の矛盾と、対応不能点のペナルティは維持している。

これは遮蔽に着想を得た近似であり、遮蔽を厳密に推定するモデルではない。正解姿勢を使って点を除く処理は、推定器には入れていない。

3種類の球配置と背景平面、同じ3視点、2方向の初期ずれで比較した。

合成条件 対称な距離残差 非対称な距離残差
遮蔽を除いた点:摂動から復元 6/6 6/6
遮蔽を含む点:摂動から復元 2/6 6/6
合計:摂動から復元 8/12 12/12
正解から開始して精度基準内に残る 4/6 6/6

正解開始の6件は、摂動からの復元12件と別の検査である。合計18/18を「復元率」として示さない。

残る限界:元の形状で遮蔽がない場合、回転誤差は約0.14°から約0.20°へ増えた。正解からのずれもゼロではない。球・平面・ノイズなしという共通の前提があり、12/12は実環境での成功率を示さない。深度バイアスはこの実験に含めていない。

根拠:固定した実験条件/全ケースの結果

5. 次の開発:深度バイアスと位置ずれの混同

カメラの深度が一律に長く見積もられると、校正器がセンサーの位置を動かして帳尻を合わせる可能性がある。以前の距離フィットでは、深度に+25 cmを加えると位置誤差が約22.2 cmとなり、基準を外れた。

以下は2026-10-29時点の設計案として書いたもの。その後、9bee5c16 で凍結して実施した。結果は下の8章。

段階 実施すること 判断に使う証拠
A:混同の測定 遮蔽方式を固定し、3配置で深度バイアス0・+25・−25 cmを比較 位置・回転の誤差、正解開始のずれ、両方向の初期値依存
B:識別できるか 深度バイアスとセンサー位置を変えたとき、残差がどれだけ似るかを調べる 感度・不確かさ・似た目的関数値を持つ異なる解
C:必要なら補正変数を追加 識別可能性を確認した条件でのみ、バイアス同時推定を試す バイアス推定誤差と位置姿勢誤差を別々に報告。ゼロバイアスを壊さないか

実装前に条件・計算予算・採否基準を固定する。誤差が減るだけで採用せず、位置ずれとバイアスを区別できない場合は、その曖昧さを結果に残す。閾値や遮蔽の飽和量を今回の成功例に合わせて調整しない。

6. 実データ・SOTAへ進む条件

  1. 制御実験を通す。 遮蔽・バイアス・正解開始のずれを分離し、近い誤解を安全だと判定しないことを調べる。
  2. 同条件の実データ比較を行う。 既使用6走行で現行方式と候補を比較し、全初期値・失敗・処理時間を残す。合成結果をそのまま実データの成果として扱わない。
  3. 独立した評価を用意する。 新しい形状・センサー配置・実データを事前登録し、調整用データと分ける。
  4. 比較可能な外部手法と評価する。 入力、参照校正、学習データへの露出、実行予算、精度基準を揃える。誤校正の採用率も測る。

これらの証拠が揃うまでは「有望な研究用方式」として扱う。現時点のSOTA判定は未達/未立証。

7. 引き継ぎと再現

  • 最新結果の固定:プロトコル a2e22ce5、結果 064ea6f3。
  • 実験前にコード・入力条件のハッシュを固定し、全ケースを保存。
  • 元の形状の対称方式6件は、前回結果と完全一致を確認。
  • 直近変更の検証:関連テスト7件、リポジトリLint、strict文書ビルドに成功。
  • 基準資料:開発引き継ぎ。より詳細な値・制約は各実験資料を参照。

次の判断会議で答える問い:「バイアスを推定すると精度が上がるか」だけでなく、「バイアスと位置ずれを、この観測から本当に区別できるか」。

8. 追記:深度バイアス検証の結果(2026-10-29)

5章の案を 9bee5c16 で凍結し、1回だけ実行した。210フィットと84回の感度評価がすべて完了し、除外した失敗はない。判定はnot_supported(不採用)。

段階 結果
A:姿勢のみ 正バイアス(深度が長い)は0/18。位置がカメラ光軸方向にバイアスの85〜97%動いた。負バイアスは18/18で合格したが、遮蔽用の飽和で隠れただけで、検出はできていない
B:識別性 正解点での局所感度では全条件が「区別可能」だった。ただし予測した位置ずれ(0.10〜0.18×b)は、Aの実測と大きく食い違う。局所指標は安全確認に使えない
C:同時推定 位置姿勢は66/66で合格。一方、バイアス誤差0.05 m以内は22/66。推定値は β̂−b ≈ −Δt_z の方向に4〜7 cmずれ、ゼロバイアスの位置精度も悪化した(2.3〜4.9 cm→4.4〜8.5 cm)

結論:このノイズなしの合成条件でも、一定の深度バイアスとカメラ光軸方向の位置ずれは、基準の精度では区別できない。バイアス変数は採用しない。許容誤差も緩めない。正バイアスは、実データで再実行する前に解決すべき課題として残る。

印刷用のHTMLとPDFは 064ea6f3 時点の版で、この追記は含まない。詳細:固定した実験条件/全ケースの結果