研究

Fast Single-Scale Retinexの提案と低照度環境におけるリアルタイム骨格検出性能の評価

輝度成分のみを分離型ガウシアンで処理し、2次元SSRの約5.7倍の速さで暗所映像の手部骨格検出を可能にしたRetinex手法

MediaPipeやOpenPoseなどの骨格検出ライブラリは十分な照度を前提としており、暗所では検出が困難です。Retinex理論に基づく低照度画像強調は明るさを自然に補正できますが、従来のSingle-Scale Retinex(SSR)は2次元ガウシアンによる照明推定が重く、リアルタイム動画処理には向きませんでした。SSRを骨格検出の前処理として定量評価した例もほぼありませんでした。本研究では動画処理に間に合う速さのFast Single-Scale Retinex(FSSR)を提案し、骨格検出が実際に改善するかを確かめました。2025年11月12日にJxivで単著のプレプリントとして公開しています。

手法

FSSRは輝度成分だけを処理します。Y=0.299R+0.587G+0.114Bで抽出した輝度を、Retinex理論に従って照明成分と反射成分の積とみなし、対数空間で和に変換します。照明成分は分離型ガウシアンフィルタで推定し、x方向とy方向の1次元平滑化に分けることで画素あたりの計算量をO(N²)からO(2N)に削減しました。対数輝度から対数照明を引いて反射成分を求め、指数変換で強調後の輝度を得ます。

色は強調後と元の輝度の比を元のRGB画像に乗算して復元するため、色味は保たれます。出力にはγ=0.8のガンマ補正を適用し、ガウシアンの標準偏差はσ=15.0としました。

FSSRの処理フロー図。RGBから輝度Y=0.299R+0.587G+0.114Bを抽出し、Retinexブロックで対数輝度を対数照明と対数反射の和に分解して、分離型ガウシアンフィルタ(x方向、次にy方向の1次元カーネル)で照明成分を推定する。強調後の輝度exp(log R)と元の輝度の比を元のRGB画像に乗算して出力画像を得る。

評価

1920×1080のWebカメラ映像をMediaPipe Hands(検出・追跡の信頼度は共に0.5)と組み合わせ、フレームごとに処理時間を記録しました。955フレーム、120.14秒の連続稼働で、FSSRの平均処理時間は約4.72msと、フル2次元ガウシアン畳み込みの約26.95msに対して約5.7倍の高速化でした。MediaPipeを含む全体は約8.43fpsです。補正前後の輝度画像の平均二乗誤差MSE(L)は472.73で、暗部の階調が有効に拡張されたと解釈しています。

検出性能の評価は定性的で、論文の図では、補正前は手がかろうじて見える程度でランドマークが検出されないのに対し、補正後は指先や関節を含む21点の手部ランドマークがすべて検出されています。姿勢推定精度の指標は扱っておらず、他の画像強調手法との比較はその後の論文で行いました。

その後の展開

「強調後に関節を見つけられるか」という問いは、暗所で見ることと人の動きを読むことという二つのテーマが実は一つだと気づく契機になりました。FSSRでガウシアンのままだった照明推定を、複素指数関数と余弦関数から導いた分離型カーネルに置き換えたのが同じ2025年11月にJxivで公開したXCRで、そのカーネルを安定化したのが2026年6月のSD-Retinexです。今後の課題は、FPSの向上、複数人物の同時検出、RGB以外のセンサ情報との組み合わせです。

関連する業績