fog_beta_from_profile — DRIVE env op

• 数据种类:any × any × scalar × scalar × scalar → table

• 调用: import fullseye as fs; fs.ledger.fog_beta_from_profile(rows, luminance, horizon_row: 'float', focal: 'float', cam_height: 'float', pitch: 'float' = 0.0, *, method: 'str' = 'fit', slant: 'bool' = True, beta_range=(0.0001, 0.5), n_grid: 'int' = 400) -> 'Dict[str, float]'(要直接调用实现,import driveenv; driveenv.fog_beta_from_profile(rows, luminance, horizon_row: 'float', focal: 'float', cam_height: 'float', pitch: 'float' = 0.0, *, method: 'str' = 'fit', slant: 'bool' = True, beta_range=(0.0001, 0.5), n_grid: 'int' = 400) -> 'Dict[str, float]';从台账取用则 opsdrive.get("fog_beta_from_profile"))

用法

> 该算子的说明尚无译文,以下照原文给出。

路面の縦の輝度の曲線から霧の減衰係数 β を測る(Hautière ら 2006 の考え方)。

`method="fit"(既定): 各行の路面までの距離(:func:road_row_distance、slant=True` で視線の長さ √(d² + H²))に

Koschmieder L = L_h + (L₀ − L_h) e^{−β r} を当てる(β は対数格子 + 黄金分割、各 β で L₀・L_h は線形最小二乗)。

`method="inflection"`: 曲線を 5 行の移動平均で均し、2 階差分が符号を変える行 v_i から β = 2 (v_i − v_h)/λ

(λ = f H / cos²α。距離を λ/(v − v_h) と近似したときの厳密な変曲点: L = L_h + (L₀ − L_h) e^{−βλ/u} の 2 階微分は u = βλ/2 で 0)。

返り値にはどちらも入る: `beta(選んだ方)・beta_fit・beta_inflection(見つからなければ nan)・L0・L_h`・

`rms・mor`(2.996/β)。

Raises `ValueError`: 長さ違い・地平線より下の点が 5 未満・method が不正。

参考(示例数据・文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者・年份)与用途见上面的族使用指南。

可运行的示例(实际调用该算子并已验证的样例)

• poc_driving_weather — py -3.11 examples/poc_driving_weather.py

类型可衔接的下一个算子(可接受 table 作为输入)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

同类别(env)

julian_day · sun_at · sun_events · sun_vector · sun_illuminance · koschmieder · mor_from_beta · beta_from_mor


*Provenance: driveenv.py — DRIVE 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.