decide op• 数据种类:无 → table(仅由参数决定的算子 —— 不接受图像或数据输入)
• 调用: import fullseye as fs; fs.ledger.siren_signal(duration: 'float', fs: 'float', *, f_high: 'float' = 960.0, f_low: 'float' = 770.0, period: 'float' = 1.3, source_start=(-60.0, 10.0), source_velocity=(15.0, 0.0), mics=((0.0, 0.0),), c: 'float' = 343.0, spreading: 'bool' = True, mic_velocity=(0.0, 0.0), mic_track=None) -> 'Dict[str, object]'(要直接调用实现,import drivedecide; drivedecide.siren_signal(duration: 'float', fs: 'float', *, f_high: 'float' = 960.0, f_low: 'float' = 770.0, period: 'float' = 1.3, source_start=(-60.0, 10.0), source_velocity=(15.0, 0.0), mics=((0.0, 0.0),), c: 'float' = 343.0, spreading: 'bool' = True, mic_velocity=(0.0, 0.0), mic_track=None) -> 'Dict[str, object]';从台账取用则 opsdrive.get("siren_signal"))
合成静止麦克风听到的移动救护车警笛(双音交替)的声音。
声源 p(τ) = source_start + source_velocity·τ(2D、匀速直线),发出的声音为 sin φ(τ),φ 是让高音 f_high 与低音 f_low 各以 period/2 交替鸣响的连续相位。麦克风 m 在时刻 t 听到的声音,是发声时刻 τ 满足
c (t − τ) = |p(τ) − m| ⇔ (c² − |u|²) s² + 2 (q·u) s − |q|² = 0, s = t − τ ≥ 0, q = p(t) − m
时的 sin φ(τ)(振幅在 spreading 时为 r_ref / r,r_ref = 最初的距离)。未使用多普勒公式 (仅用到达时刻的几何),因此是 doppler_track 门的独立路径。
mic_velocity = 麦克风(及搭载它的本车)的匀速度(相对于空气 = 地面。无风)。麦克风按 m(t) = m₀ + u_L t 运动。上式在令 q = p(t) − m(t) 时保持相同形式成立(c(t − τ) = |p(τ) − m(t)|、p(τ) = p(t) − u s)。进入 2 次方程的 只有接收时麦克风的位置(声源为匀速),因此麦克风可以沿任意路径运动:
逐样本给出 mic_track = (位置 (k, n, 2),速度 (k, n, 2))时,会用它代替 mics / mic_velocity (搭载在减速并向左靠的本车上的麦克风。速度仅用于 dτ/dt 的闭式解)。
返回值:t(n,)、signals(麦克风数, n)、tau(同)、f_emit(同,发出的频率)、v_radial(同, 接近方向的距离变化率 −d|p(τ) − m(t)|/dt"换算为声源视线速度的值"c(1 − 1/D),D = dτ/dt。麦克风静止时与发声时的 −ṙ 相同)、range_rate(同,接收时几何距离 |p(τ) − m(t)| 的时间导数。负 = 接近)、f_true(同,= f_emit · dτ/dt。闭式解 dτ/dt = (c + r̂·u_L)/(c + r̂·u_S),r̂ = (p(τ) − m(t))/r 的单位向量)。
• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。
• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。
• 算法的正典(作者、年份)与用途见上面的族使用指南。
• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py
table 作为输入)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
decide)mirror_reflection_matrix · mirror_virtual_camera · mirror_aim_normal · convex_mirror_fov · mirror_blind_zone · check_sequence_score · signal_phase_plan · signal_state
*Provenance: drivedecide.py — DRIVE 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.