INFRA INTELLIGENCE お問い合わせ

ポットホールをAIで検知する 車に固定したスマートフォンで道路の穴を見つけるモデル

車に固定したスマートフォンで前方の路面を撮った画像から、道路の穴(ポットホール)を見つける検出モデルを公開しました。重みは Apache-2.0 で、業務のシステムにも組み込めます。

ひび割れの多い上り坂の細い道。路面の左寄りにポットホールがある

車に固定したスマートフォンで前方の路面を撮った画像から、道路の穴(ポットホール)を見つける検出モデルを、モデルラボで公開しました。検出するのはポットホールの1種類で、穴の位置とスコア(確からしさ、0〜1)を出力します。重みは開発者向けに Apache-2.0 で公開しています。

ひび割れの多い細い道の穴と、木陰の細い道の穴が、赤い枠で囲まれ、0.84と0.83のスコアが付いている
写真: RDD2022(Arya ほか、CC BY 4.0)

何のために、穴を見つける?

ポットホールは、舗装がはがれてできた穴です。放っておくと広がり、タイヤのパンクや二輪車の転倒につながります。道路を管理する側は、パトロール車から目視で探したり、住民からの通報を受けたりして見つけています。

パトロールの作業の中で、走りながら路面を見続け、穴の場所を記録しなければならない場面があります。車に固定したスマートフォンが穴の写った画像を自動で残しておけば、あとで写真と位置を見返して、見落としがないかを確かめられます。

誰が使う?

  • 道路を管理する国・自治体・高速道路会社の、パトロールや補修の担当
  • パトロールや路面の調査を請け負う会社
  • 車載のカメラやドライブレコーダーで路面の記録を集めるサービスを作る開発者

どうやって見つけている?

RF-DETR Nano を元にしたモデルです。COCO で事前学習した公開の重みに、ポットホールの画像で追加の学習をさせました。

木陰の道の写真が、縦横比を変えて正方形に引き伸ばされ、384×384になる
写真: RDD2022(Arya ほか、CC BY 4.0)

画像は縦横384ピクセルの正方形に引き伸ばしてからモデルに入力します。スコアが0.45以上のものを検出結果とします。この値(しきい値)を上げると誤検知が減り、下げると見逃しが減ります。

どのくらい見つけられる?

学習に使っていないテスト用の29枚(穴44か所)で数えた結果です。適合率は検出が正しかった割合、再現率は見逃さずに検出できた割合です。

棒グラフ。適合率0.80、再現率0.73
棒グラフ。適合率0.80、再現率0.73

検出の正確さをまとめた指標(AP50)は0.737でした。評価に使った画像は29枚と少ないため、数値は大きくぶれます。しきい値はテストの結果も見て決めたので、テストの数値は実力より良く出ている可能性があります。実際に車で走行したときの性能は、まだ測っていません。

左は砂利の多い道で、左の穴を0.81で見つけ、右の小さな穴を見逃した例。右は濡れた路面で、右下の穴を0.61で検出し、左の黒く濡れた部分を0.60で誤検知した例
写真: RDD2022(Arya ほか、CC BY 4.0)

小さな穴は見逃すことがあり、濡れて黒く見える路面を穴と誤検知することがあります。

ライセンスと形式は?

重みとコードは Apache-2.0 で公開しています。業務のシステムにも製品にも組み込めて、改変して再配布することもできます。形式は PyTorch、ONNX、CoreML(iOS 17以降)の3つで、CoreML なら iPhone の中で動かせます。PyTorch の重みは rfdetr というライブラリでそのまま読み込めるので、自分のデータで学習し直す出発点にも使えます。

使うときの注意は?

検出するのはポットホールだけです。ひび割れなど、ほかの損傷は検出しません。夜間、雨、逆光のときの性能は確かめていません。組み込む前に、使う場所で撮った画像で確かめてください。点検や安全についての判断を、このモデルの結果だけで行わないでください。


モデルの詳しい説明(入力と出力、評価の結果): Pothole RF-DETR Nano

重みの公開先: Hugging Face

同じように、道路の損傷や設備を映像から見つけるモデル作りの相談も受けています: 検知AIモデルの構築

見出し画像の写真: RDD2022(Arya ほか、CC BY 4.0)

お問い合わせ