很多时候,有些人、有些事就是差那么一点,而这一点,或许就是必然。
🎢 省赛:过山车般的心跳
我是缩微光电组的选手。这是一个全新的组别,没有学长留下的传承,一切都要从 0 到 1。
预赛:至暗时刻与绝地反击
省赛预赛的上半场,是我噩梦的开始。 因为现场光线比学校实验室复杂太多,我的图像二值化阈值没有调好。车子一上赛道就成了“瞎子”,连续几次发车都未能完赛。 那时候真的很伤心,感觉半年的努力要打水漂了。
所幸,中场休息时我冷静下来,重新校准了参数。 下半场,我的车仿佛觉醒了一般,跑出了极佳的状态,直接拿下了预赛第一名的成绩。
决赛:被“阴间”赛道制裁
带着预赛第一的自信,我走进了决赛场地。 然而,组委会设计了一个极其“逆天”的赛道元素:弯道接断路。
我们的方案是:识别到断路 -> 切换惯性导航 (IMU) -> 盲跑通过 -> 恢复视觉。 但在那个弯道里,车身还是倾斜的,摄像头看到的画面导致算法提前误判进入断路。 结果就是:车子带着过弯的角速度进入了盲跑模式,“进入断路的角度不正”,结束断路的地方自然也不是我想要的地方。 车子冲出了赛道。未完赛。
那一刻,心都凉了。 但命运弄人,由于赛道太难,整个赛区最终完赛的队伍只有 5 个。 凭借预赛第一的成绩,我补位进入了全国总决赛。
🏟️ 国赛:射灯下的绝望
省赛回来后,我连夜改算法,终于完美解决了“弯道接断路”的逻辑。 我带着 3.1m/s 的极速代码,信心满满地奔赴国赛。
然而,现实给了我当头一棒。 国赛现场,杭州电子科技大学体育馆的灯光环境极其复杂,尤其是那几盏逆天的射灯,直接在赛道上打出了高光的反光点。
我的视觉算法再次崩溃了。 阈值的上下限怎么调都不对:
- 调高了,把赛道当背景滤掉了。
- 调低了,把反光点当赛道识别了。
在试车场,我的车在过弯时总是莫名其妙地冲出赛道。 没有日志报错,没有逻辑漏洞,只有被光线干扰的混乱图像。 绝望。真的只有绝望。
比赛时,为了求稳,我不敢开 3.1m/s 的速度,只能含泪把速度降到了 1.5m/s。 看着它慢吞吞地挪完全程,我心里五味杂陈。
🏁 结局
最终,我拿到了全国二等奖。 如果不降速,如果光线好一点,以我的技术储备,绝对可以拿下国一。 但没有如果。
💭 写在最后
比赛结束后,我发了一条朋友圈。现在回看,依然能感受到当时那种混合了不甘、释怀与热爱的复杂情绪:
📱 朋友圈
很多时候,有些人、有些事就是差那么一点,而这一点,或许就是必然。
我见到过夜晚的星空,也看到过通宵后才出现的早霞。新组别没有传承,我从 0 到 1,尝试过十余种方案,炸了无数块板子,也修过很多次车;写下几万行代码,修了无数个 bug。
无论在视觉还是控制方面,智能车比赛都让我收获颇丰,也让我结识了许多志同道合的朋友。
可惜比赛当天场地光线不佳,加上阈值上下限选择不当,最终只能以低速跑完全程,遗憾地拿下国二,与国一失之交臂。
赛后我常在想,如果当时阈值再仔细调一调,结果会不会更好一点呢?
或许,遗憾才是智能车的常态吧。 ❤️