首页/文章/ 详情

用AI来驱动自动驾驶开发?来看看头部大佬们如何玩转数据合成

10月前浏览524


原文作者:Katie Washabaugh(NVIDIA 自动驾驶仿真产品市场经理)与 Ohad Schwarzberg(Foretellix 产品与 AI 副总裁)

Foretellix 正在深化其与 NVIDIA Omniverse 自动驾驶仿真蓝图的集成,新增支持 NVIDIA Cos mos Transfer 世界基础模型与视频数据搜索功能。借助这些新发布的能力,Foretellix 的 Foretify 工具在行为场景生成方面实现了更丰富的天气、光照与地理位置多样性。

与此同时,Foretify 通过 Cos mos 的 sensor domain 搜索功能,进一步强化了其行为搜索能力。这些增强功能将加速基于 AI 的自动驾驶系统训练与验证,推动更快速的开发与部署。作为首批集成 NVIDIA Omniverse 的自动驾驶工具链提供商之一,Foretellix 现已引入 Cos mos Transfer,以提升仿真泛化能力。

自动驾驶行业正经历深刻变革,从传统的基于规则(rule-based)架构,逐步演进为融合人工智能与规则安全机制的混合型 AI 驱动架构。这一趋势的核心驱动力包括深度学习技术的突破、计算能力的显著提升,以及传统软件开发模式所面临的高成本和长周期挑战。

端到端模型通过深度神经网络,将来自摄像头、激光雷达、毫米波雷达等多源传感器的数据直接映射为驾驶行为。这不仅显著提升了系统的响应速度与适应性,还能通过海量驾驶数据,不断增强其对新颖场景的泛化能力。

然而,尽管真实世界数据为自动驾驶训练奠定了基础,但想要全面覆盖包括天气、光照、速度、距离等物理变量变化,以及稀有边界场景在内的完整ODD,仍面临巨大挑战与高昂成本。

借助高效的数据自动化生成技术,能够大规模构建丰富多样且足够真实的数据,有效应对这些挑战。这对于推动安全自动驾驶的规模化落地至关重要。

Foretify + Cos mos Transfer

在集成 NVIDIA Omniverse 自动驾驶仿真蓝图的基础上,Foretellix 引入 NVIDIA Cos mos Transfer,进一步拓展了其数据自动化开发工具链的规模与多样性。

这一一体化解决方案为用户带来了以下强大功能:

    • Foretify行为层:用于场景评估与生成
    • NVIDIA Omniverse 与 Cos mos Transfer:提供高保真传感器仿真能力

Cos mos Transfer 是 NVIDIA Cos mos 平台的重要组成部分,集成了领先的生成式世界基础模型(WFM)、高性能分词器、安全机制,以及面向物理 AI 系统(如自动驾驶车辆和机器人)而优化的数据处理与整理流程。

Cos mos Transfer 可与 Omniverse 集成,在物理基础的虚拟环境中生成全新数据,从而将 Foretify 所生成的任意驾驶场景扩展为数百种逼真的场景变体。

Foretify 是一款加速自动驾驶系统开发的数据自动化工具链,结合真实世界驾驶数据与先进虚拟仿真,用于训练与验证 AI 驱动的自动驾驶系统。Foretellix 提出的“评估(Evaluation) >> 生成(Generation)”方法分为四个阶段:

  1. 1.数据清洗:统一、整理、清洗真实驾驶日志和仿真数据
  2. 2.数据评估:基于关键绩效指标(KPIs),评估特定驾驶数据的性能与质量
  3. 3.场景生成:结合 Omniverse 与 Cos mos Transfer 的物理渲染能力,生成超真实的传感器仿真数据
  4. 4.覆盖验证:评估整体数据对 ODD 的覆盖情况,用作安全报告的数据支撑证据,识别覆盖盲区并生成抽象场景以填补空白。

借助 Cos mos Transfer,Foretify 能够显著增强由 Sensor RTX 渲染的传感器数据的多样性,包括从天气变化、墙面涂鸦、镜头污渍等视觉效果的调整,甚至扩展至全新的运行设计域(ODDs)。Cos mos Transfer 的视频数据搜索功能具备强大的展示级视频检索能力和高保真渲染效果。Foretify 本地的行为级搜索能力在逻辑层面提升了场景评估与生成效率,并与 Cos mos Transfer 实现了无缝协同。最终实现了训练与验证数据的可扩展性,缓解了自动驾驶开发流程中高成本的数据瓶颈问题。

展望未来

随着自动驾驶系统日益依赖 AI 驱动的技术栈,一个可控、可预测且可复用的数据自动化工具链将变得愈发重要。

Foretellix 通过在 NVIDIA Omniverse 自动驾驶仿真蓝图中集成 Cos mos Transfer,迈出了关键一步,为开发者提供生成真实、可信数据的能力,加速构建强大且安全的 AI 驱动自动驾驶解决方案。

本文完。


来源:车路漫漫
UG自动驾驶机器人渲染人工智能
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-12-10
最近编辑:10月前
李慢慢
硕士 自动驾驶仿真工程师一枚
获赞 14粉丝 93文章 322课程 0
点赞
收藏
作者推荐

Carla中如何用创建激光雷达进行仿真?

大家好,我是李慢慢。这篇文章简单探索下Carla中激光雷达的仿真方法。通过本文,可以帮助您了解下Carla中激光雷达的建模过程,熟悉激光雷达的参数设置,并查看雷达的输出点云效果。本文参考官方教程链接如下:https://carla.readthedocs.io/en/latest/ref_sensors/#lidar-sensor官方对激光雷达(本文仅探索下旋转激光雷达)的介绍如下。这个旋转式激光雷达的属性定义如下:激光雷达输出数据属性:介绍完参考内容。以下开始搞事情。1、启动Carla服务器2、创建客户端3、客户端中创建主车4、主车上创建激光雷达5、获得激光雷达的输出1、Carla启动服务器。双击Carla图标打开Carla的服务器端界面(windows版,0.9.13版本),启动后的界面如下:2、创建客户端client = carla.Client('localhost', 2000)3、创建主车:my_world = client.get_world()# 获取当前世界中的蓝图库blueprint_library = my_world.get_blueprint_library()# 从蓝图库中筛选出来特斯拉的‘model3’ 这个车车bp = blueprint_library.filter('model3')[0]# 从地图中选择一个生成点spawn_point = my_world.get_map().get_spawn_points()[0]# 利用车辆蓝图和地图生成点,创建车辆vehicle_ego = my_world.spawn_actor(bp, spawn_point)# 设置车辆为自动驾驶模式vehicle_ego.set_autopilot(True)4、在主车上创建激光雷达:lidar_bp = my_world.get_blueprint_library().find('sensor.lidar.ray_cast') # 获得激光雷达蓝图lidar_bp.set_attribute('range', '100') # 设置激光雷达属性:探测距离lidar_bp.set_attribute('upper_fov', '30') # 设置激光雷达属性:fov上边界lidar_bp.set_attribute('lower_fov', '-30') # 设置激光雷达属性:fov下边界lidar_bp.set_attribute('horizontal_fov', '360') # 设置激光雷达属性:水平fov角度lidar_bp.set_attribute('channels', '32') # 设置激光雷达属性:多少线束lidar_bp.set_attribute('rotation_frequency', '60') # 设置激光雷达属性:旋转频率lidar_transform = carla.Transform(carla.Location(x=0, y=0, z=2.4)) # 位置my_lidar = my_world.spawn_actor(lidar_bp, lidar_transform, attach_to=vehicle_ego)5、获得激光雷达的输出:def update_lidar_image(image):disp_size = window_sizelidar_range = 2.0 * float(lidar_bp.get_attribute("range"))points = np.frombuffer(image.raw_data, dtype=np.dtype('f4'))points = np.reshape(points, (int(points.shape[0] / 4), 4))lidar_data = np.array(points[:, :2])lidar_data *= min(disp_size) / lidar_rangelidar_data += (0.5 * disp_size[0], 0.5 * disp_size[1])lidar_data = np.fabs(lidar_data) # pylint: disable=E1111lidar_data = lidar_data.astype(np.int32)lidar_data = np.reshape(lidar_data, (-1, 2))lidar_img_size = (disp_size[0], disp_size[1], 3)lidar_img = np.zeros((lidar_img_size), dtype=np.uint8)lidar_img[tuple(lidar_data.T)] = (255, 255, 255) #surface = pygame.surfarray.make_surface(lidar_img)my_display.blit(surface, (0, 0)) # 更新图像到pygame窗口 #my_lidar.listen(update_lidar_image)最后来看下效果:本文就简单介绍到这里。更多精彩内容将在后续继续研究。需要代码的可以在后台联系我哦。本文完。来源:车路漫漫

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈