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"(默认): 对各行到路面的距离(road_row_distance,slant=True 时为视线长度 √(d² + H²)) 拟合 Koschmieder L = L_h + (L₀ − L_h) e^{−β r}(β 用对数格子 + 黄金分割,各 β 下 L₀、L_h 用线性最小二乘)。method="inflection": 用 5 行移动平均平滑曲线,由二阶差分变号的行 v_i 得 β = 2 (v_i − v_h)/λ (λ = f H / cos²α。把距离近似为 λ/(v − v_h) 时的严格拐点: L = L_h + (L₀ − L_h) e^{−βλ/u} 的二阶导数在 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.