メインコンテンツまでスキップ

カメラによる駐車スペース検知:選定・導入・実測データ

ご利用にあたって

区画がカメラ映像に映っている必要があります。隣の車両で完全に隠れる区画や、遠くて小さく映る区画は正しく判定できません。

このソリューションでできること​

区画ごとに地磁気センサーや超音波センサーを付けず、場内の既存 IP カメラをそのまま使います。1 台のカメラに映る区画はすべて同時に判定します。ブラウザーで区画ごとに枠を描いて名前を付けると、エッジホストが枠内に車があるかを判定し続け、区画ごとの「使用中 / 空き / 不明」をシステムへ送ります。空き表示板、駐車誘導、専用区画の管理に使えます。

  • 映像は現場に

    映像は現場のエッジホストで解析し、外に出るのは区画の状態だけです。

  • 1 台で複数系統

    reComputer J30 シリーズで 6 系統を 620 秒同時に処理し、フレーム欠落なし(「性能と実測データ」参照)。

  • 区画は自分で描く

    ライブ映像の上で枠を描いて名前を付け、保存するとすぐ反映。再起動後も保持されます。

  • 切断がわかる

    カメラの映像が途切れて約 10 秒後、その区画は「不明」になり、古い状態を送り続けません。

実機の画面​

エッジホスト内蔵の区画エディターです。映像上の枠が区画で、赤が使用中、緑が空き、右側に合計と区画一覧を表示します。

reComputer J30 シリーズの区画エディター:6 区画のうち 4 区画が使用中、2 区画が空き

スクリーンショットでは P01、P02、P04、P06 が使用中、P03 と P05 が空きです。入力は平面駐車場の静止画をループ再生したもので、現場映像ではありません。

必要なハードウェア​

現場に必要なのは、場内の IP カメラ、エッジホスト 1 台、MQTT ブローカー(既存の Mosquitto など)です。

① IP カメラ:既存のカメラで、H.264 の RTSP 出力があれば十分です。サブストリームで構いません。

② エッジホスト:4 機種から 1 台。1 台で複数のカメラを扱い、各カメラを毎秒 1 フレーム解析します。

エッジホスト実測選ぶ場面
reComputer J3011reComputer J30 シリーズ(J3011)
Jetson Orin Nano、JetPack 6.2
6 系統でフレーム欠落なし、1 フレーム p50 6.5 ms1 台で複数系統、標準の選択
reComputer J4012reComputer J40 シリーズ(J4012)
Jetson Orin NX、JetPack 6.2
J30 と同じパッケージ同じホストで他のモデルも動かす
reComputer RK3588reComputer RK3588 シリーズ
オンボード NPU
1 系統、1 フレーム p50 36.6 ms現場を Rockchip で統一する
reComputer RK3576reComputer RK3576 シリーズ
オンボード NPU
1 系統、毎秒 1 フレーム、欠落なしカメラが少なく、コスト優先

RK ホストで系統を増やすときは 1 系統ずつ追加し、それぞれ状態が更新されていることを確認してください。

エッジホスト、カメラ、MQTT ブローカーは同じ LAN に置き、ホストからカメラの RTSP アドレス(通常 554 番ポート)にアクセスできること。導入時はランタイムとモデルのダウンロードにネット接続が必要で、その後はオフラインで動作します。

現場への導入​

1. カメラの画角を確認​

高い位置から斜め下に

各区画がはっきり映り、隣の車両で完全に隠れないこと。1 つの枠で囲むのは 1 区画だけです。車両が枠の面積の約 3 分の 1 を占めると使用中と判定し、複数区画を囲む大きな枠は使用中になりません。

2. ソフトウェアの導入:3 ステップ​

機器ごとの手順はリファレンス設計ページにあります。ここでは流れだけを示します。


  1. エッジホストのデプロイ:各カメラの RTSP アドレスと MQTT ブローカーを入力してデプロイします。
  2. 区画を描く:8080 番ポートの区画エディターを開いてカメラを選び、空いている場所で矩形をドラッグし、角を区画に合わせ、区画 ID(例:B1-023)を入力して保存します。
  3. 確認:区画の状態が変わるとエディターの色が変わり、そのカメラの状態メッセージが MQTT に届きます。

インターフェース​

区画の状態は MQTT でブローカーへ送られ、カメラごとに 1 トピックです。

  • 空き表示板・駐車誘導:各カメラのトピックを購読し、メッセージ内の使用中・空き・不明の数を合計します。
  • 専用区画の管理:充電スタンドや来客用の区画を個別の枠にし、区画 ID で判断します。
  • Home Assistant や自社システム:同じトピックを区画 ID で読み取ります。
トピック / ポート内容
MQTT <site>/parking/<camera>/slotsこのカメラの各区画の状態(occupied / free / unknown)と 3 種類の数。いずれかの区画が変わると送信
HTTP 8080 /slots/editor区画エディター:枠を描く、名前を付ける、リアルタイムの状態を見る
HTTP 8099 /healthzサービスの状態

状態はフレームごとに揺れないよう保持されます。車両が停止して約 3 秒後に使用中、離れて約 5 秒後に空き、映像が途切れて約 10 秒後に不明になります。

性能と実測データ​

複数系統と 1 系統​

機器入力結果
reComputer J30 シリーズ(Orin Nano)6 系統、各毎秒 1 フレーム、620 秒全系統でフレーム欠落 0、各約 1.0 fps(実測)
reComputer J30 シリーズ(Orin Nano)1 系統0.988 fps、1 フレーム p50 6.5 ms、区画ごとに 15 回の状態変化を送信(実測)
reComputer RK3588 シリーズ1 系統1 フレーム p50 36.6 ms、17 回の状態変化を送信(実測)
reComputer RK3576 シリーズ1 系統1.0 fps、区画状態メッセージ 21 件を受信、フレーム欠落 0(実測)

1 系統の入力は、平面駐車場の静止画と暗いフレームを交互に流し、使用中と空きの切り替えを発生させたものです。

再現:sensecraft-solutions/solutions/edge_parking_occupancy(デプロイパッケージ)と入力映像 slots-occ20-empty20-400s.mp4

カメラ映像の途切れ​

機器結果
reComputer RK3576 シリーズ配信停止から 9.98 秒後、最後のフレームから約 11 秒後に区画が unknown に(実測)

モデルとランタイム​

機器車両検出ランタイム
reComputer J30 / J40 シリーズYOLOX、640×640、FP16TensorRT
reComputer RK3588 / RK3576 シリーズYOLOX、640×640、INT8(w8a8)RKNN、MPP ハードウェアデコード

判定に影響するパラメーター(デプロイパッケージの config/slots*.json):

  • slot_coverage.occupied_ratio / free_ratio:車両が枠面積の 0.3 以上で使用中、0.2 未満で空き。
  • slot_coverage.hold_s / free_hold_s:状態が 3 秒 / 5 秒続いてから切り替え。
  • unknown_after_s:映像が 10 秒途切れると不明。

既知の制限​

  • 広角レンズの歪みと隣接遮蔽:広角カメラの画角周辺部ではパース歪みが生じ、手前の大型車(SUV やバンなど)が隣接する後方の区画を遮る場合があります。1 台のカメラでカバーする区画数は 30 区画以内を推奨します。
  • 白線跨ぎと境界比率:車両が区画線を跨いで駐車し、両側の被覆率が 0.2〜0.3 の遷移範囲に入る場合、一時的に状態が小刻みに変化することがあります。hold_s を長めに設定することで抑制できます。
  • 水たまりの反射と動的な影:雨後の路面の照り返しや柱・樹木の濃い影により、エッジ検出の信頼度が影響を受けることがあります。夜間は一定の環境照明(路面照度 ≥ 30 Lux)を確保してください。

データと素材の出典​

  • スクリーンショットと 1 系統の結果は平面駐車場の静止画によるもので、画像の元の出典は確認中です。
  • 検出モデルのコード YOLOX:Apache-2.0。
Loading Comments...