华为云用户手册

  • straight城区直行 用途:创建straight城区直行的静态场景(地图) 参数:参数如下表. 表1 straight城区直行参数 Parameter Type Mandatory Description lane_width length yes 每个车道宽度. left_lane_num int yes 左侧车道数量. right_lane_num int yes 右侧车道数量. bikeway bool yes 是否有自行车道. sidewalk bool yes 是否有人行道. main_speed speed yes 主路的限速值. road_length length yes 主路的长度. 参数取值范围: lane_width: length = [3m..4m] left_lane_num: int = [0, 1, 2, 3, 4] right_lane_num: int = [1, 2, 3, 4] bikeway: bool = [true, false] sidewalk: bool = [true, false] main_speed: speed = [40kph..60kph] road_length: length = [150m..500m] keep创建 my_straight: straight with: keep(it.lane_width == 3m) keep(it.left_lane_num == 0) keep(it.right_lane_num == 3) keep(it.bikeway == false) keep(it.sidewalk == false) keep(it.main_speed == 60kph) keep(it.road_length == 500m) create创建 my_straight: straight = scenery.create_straight(lane_width: 3m, left_lane_num: 0, right_lane_num: 3, bikeway: false, sidewalk: false, main_speed: 60kph, road_length: 500m) 父主题: 领域模型设计
  • straight 简述:地图场景为直道.lead_vehicle和主车Ego在主道上分别以40kph和Ego_InitSpeed_Ve0的初始速度一前一后行驶,Ego设定了目标在主道右2车道上的目标点Target_position,同时激活Ego控制器(控制器会影响Ego去往Target_position的寻路算法,但目前SimPro尚不支持寻路动作acquire_position),控制器有时会根据lead_vehicle的位置更改主车Ego的速度. 地图文件(odr) scenario Straight: m_scene: scenery lane_width: length = [3m..4m] right_lane_num: int = [2, 3] bikeway: bool = [true, false] sidewalk: bool = [true, false] main_speed: speed = 60kph road_length: length = [550m, 600m] straight_1: straight with: keep(it.lane_width == lane_width) keep(it.left_lane_num == 0) keep(it.right_lane_num == right_lane_num) keep(it.bikeway == bikeway) keep(it.sidewalk == sidewalk) keep(it.main_speed == main_speed) keep(it.road_length == road_length) 场景文件(osc) import standard scenario Straight: # map map: map map.set_map_file("./straight.odr") # parameter Ego_InitSpeed_Ve0: speed = [55kph..60kph] Ego_InitPosition_LaneId: string = ['-1', '-2'] Ego_InitPosition_s: length = [0m..30m] Ego_Odr: odr_point = map.create_odr_point(road_id: '1', lane_id: Ego_InitPosition_LaneId, s: Ego_InitPosition_s, t: 0.0m) Ego_InitPosition: pose_3d with: keep(it.odr_point == Ego_Odr) m_distance: length = [50m..80m] LeadVehicle_Odr: odr_point = map.create_odr_point(road_id: '1', lane_id: '-1', s: m_distance, t: 0.0m) LeadVehicle_InitPosition: pose_3d with: keep(it.odr_point == LeadVehicle_Odr) Target_xyz: xyz_point = map.create_xyz_point(x: 450m, y: -4.5m ,z: 0.0m) Target_position: pose_3d with: keep(it.xyz_point == Target_xyz) Duration: time = 100s # entity Ego: vehicle with: keep(it.name == "Saimo") keep(it.initial_bm == "默认驾驶员") lead_vehicle: vehicle with: keep(it.name == "Saimo") keep(it.initial_bm == "默认驾驶员") # storyboard do parallel(duration: Duration): # init Ego.assign_init_position(position: Ego_InitPosition) Ego.assign_init_speed(Ego_InitSpeed_Ve0) lead_vehicle.assign_init_position(position: LeadVehicle_InitPosition) lead_vehicle.assign_init_speed(40kph) Ego.activate_controller(true, true) Ego.acquire_position(target: Target_position) 父主题: 种子地图的逻辑场景样例(SIMPRO)
  • 静态场景样例 下文提供keep创建和create创建两种写法. 声明所有要泛化的变量,即为本例中第2-4行. 关键字merge 说明是匝道合流的种子场景,即为本例中的第6行. 明确本场景中所有参数的具体值,即为本例中的第7行到最后. scenario HighwayMerge: lane_width: length = [3m, 4m] left_lane_num: int = [0] ramp_length: length = [200m, 500m] road_aids_type: road_aids_type == "DType-1" merge_1: merge with: keep(it.lane_width == lane_width) keep(it.left_lane_num == left_lane_num) keep(it.right_lane_num == 2) keep(it.ramp_lane_num == 1) keep(it.main_speed == 120kph) keep(it.ramp_speed == 60kph) keep(it.radius_of_curvature == 200m) keep(it.ramp_length == ramp_length) keep(it.road_aids_type == road_aids_type) 声明本场景为静态场景,即为本例中第2行. 声明所有要泛化的变量,即为本例中第4行. create_merge说明是匝道合流的种子场景,即为本例中的第6行. 函数create_merge的入参即指定本场景中的所有参数具体值,即为本例中的第6-7行. scenario Merge: m_scene: scenery lane_width: length = [3m, 4m] my_road_aids_type: road_aids_type == "DType-1" m_straight: merge = m_scene.create_merge(lane_width: lane_width, left_lane_num: 0, right_lane_num: 2, main_speed: 120kph, ramp_speed: 60kph, radius_of_curvature: 200m, ramp_length: 300m, ramp_lane_num: 1, road_aids_type: my_road_aids_type) 父主题: 静态场景(地图)
  • 初始动作 assign_init_speed 动作主体:车辆vehicle 或行人pedestrian . 结束时间:当动作主体actor 达到指定的速度speed 时,动作结束. 是否支持modifier:是 参数:参数如下表. 表1 assign_init_speed参数 Parameter Type Mandatory Description target speed yes Desired (scalar) speed assigned by the user. assign_init_speed支持设置绝对速度和相对速度,设置相对速度时使用 修饰器speed来给出相对值. 设置初始速度时,初始速度不能超过该主体所在道路的限速. 若所需场景起始速度为0,无需使用assign_init_speed动作. 绝对速度 init_speed: speed = 10.0mps Ego.assign_init_speed(init_speed) 相对速度 cut_in_vehicle.assign_init_speed() with: speed(speed: 5mps, faster_than: Ego) 父主题: 动作 Actions
  • position_3d 定义:笛卡尔(XYZ)坐标系中的三维位置(position). 用途:设置坐标系中的三维位置,用于构成xyz_point. 参数:参数如下表. 表1 position_3d参数 Parameter Type Mandatory Description x length yes position on the x-axis. y length yes position on the y-axis. z length yes position on the z-axis. 代码样例 my_position: position_3d with: keep(it.x == 150.0m) keep(it.y == 200.0m) keep(it.z == 0.0m) 父主题: Struct
  • 动作 acquire_position 动作主体:车辆vehicle或行人pedestrian 结束时间:当动作主体actor 获取目标位置position 时,动作结束. 是否支持modifier:否 参数表: 参数如下表,pose_3d是point和orientation的组合结构, point可以使用xyz_point或 odr_point或road_point中的任意一个,orientation非必选项. 表1 acquire_position参数 Parameter Type Mandatory Description target pose_3d yes target position. acquire_position与acquire_position_init的使用方法相同,但由于不是初始动作,可以设置触发条件. VTD对于acquire_position_init的支持程度更好,如无需设置触发条件,建议使用acquire_position_init. SimPro尚未支持acquire_position动作. 代码样例见acquire_position_init. 父主题: 动作 Actions
  • junction路口 用途:创建junction城区路口的静态场景(地图) 参数:参数如下表. Parameter Type Mandatory Description lane_num int yes 单方向车道数量. bikeway bool yes 是否有自行车道. sidewalk bool yes 是否有人行道. junction_type junction_type yes 路口的类型,目前支持两种类型crossroad(十字路口)和T-junction(丁字路口) 参数取值范围: lane_num: int = [1, 2, 3, 4] bikeway: bool = [true, false] sidewalk: bool = [true, false] junction_type: junction_type = ["crossroad", "T-junction"] keep创建 my_junction_type: junction_type = "crossroad" my_junction: junction with: keep(it.lane_num == 2) keep(it.bikeway == false) keep(it.sidewalk == false) keep(it.junction_type == my_junction_type) create创建 my_junction_type: junction_type = "crossroad" my_junction: junction = scenery.create_junction(lane_num: 2, bikeway: false, sidewalk: false, junction_type: my_junction_type) 父主题: 领域模型设计
  • 行人 Pedestrian 通过 行人名: person 的方式来为行人命名.通过 keep(it.name == 指定行人名称) 的方式来指定行人 类型.通过 keep(it. model == 指定行人特征) 的方式来指定行人的性别、年龄特征.行人的name 和 model 同样只能使用VTD自带的类型. 样例 Dude: person with: keep(it.name == "Christian") keep(it.model == "male_adult") 父主题: 实体设置 Entities
  • dynamics_shape 表示给定变量随时间或距离的变化.用于动作change_speed, change_lane. dynamics_shape list ENUM_DYNAMICS_SHAPE = ("linear", "cubic", "sinusoidal", "step") linear:变化曲线是一个线性linear 函数f(x) = f_0 +变化速率*x. cubic:变化曲线是一个三次变迁Cubical transition 函数f(x)=Ax3+B*x2+Cx+D,约束梯度在开始和结束时必须为零. sinusoidal:变化曲线是一个正弦变迁Sinusoidal transition 函数 f(x)=A*正弦(x)+B,约束梯度在开始和结束时必须为零. step:变化曲线是一个阶段变迁Step transition 函数 父主题: Enum Lists
  • 基于样例的拓展 本章的场景样例可以结合第一章介绍的各模块代码样例进行修改和拓展.以straigh场景的osc为例,设定初始位置时,除了使用st坐标系(odr_point,即osc1.0中的LanePosition)还可以使用xyz坐标系(xyz_point,即osc1.0中的WorldPosition)来替代: st坐标系(odr_point)写法: Ego_InitPosition_LaneId: string = ['-1', '-2'] Ego_InitPosition_s: length = [0m..30m] Ego_Odr: odr_point = map.create_odr_point(road_id: '10', lane_id: Ego_InitPosition_LaneId, s: Ego_InitPosition_s, t: 0.0m) Ego_InitPosition: pose_3d with: keep(it.odr_point == Ego_Odr) 对应xyz坐标系(xyz_point)写法,其中y值-1.5m和-4.5m分别对应车道宽度为3m时的'-1'和'-2'车道的中心位置: y: length = [-1.5m, -4.5m] x: length = [0m..30m] Ego_xyz: xyz_point = map.create_xyz_point(x: x, y: y, z: 0.0m) Ego_InitPosition: pose_3d with: keep(it.xyz_point == Ego_xyz) 以上对等替换仅存在于odr_point的road_id固定的情形,当road_id(VTD中的TrackId)是一个可泛化的值时,起点可以出现在多条道路上,对应多段x和y值的组合区间,无法使用一个xyz_point直接对等泛化.此时可以使用多个动态场景来实现同等的泛化,例如: 假设地图上存在多条road,且对odr_point的road_id进行了泛化: Ego_InitPosition_Road_id: string = ['10', '1'] Ego_InitPosition_LaneId: string = ['-1', '-2'] Ego_InitPosition_s: length = [0m..30m] Ego_Odr: odr_point = map.create_odr_point(road_id: Ego_InitPosition_Road_id, lane_id: Ego_InitPosition_LaneId, s: Ego_InitPosition_s, t: 0.0m) Ego_InitPosition: pose_3d with: keep(it.odr_point == Ego_Odr) 可以在两个动态场景文件中分别使用一组xyz_point来替代,例如: 第一组对应road_id为'10'的情况(同前例): y: length = [-1.5m, -4.5m] x: length = [0m..30m] Ego_xyz: xyz_point = map.create_xyz_point(x: x, y: y, z: 0.0m) Ego_InitPosition: pose_3d with: keep(it.xyz_point == Ego_xyz) 第二组对应road_id为'1'的情况,该道路与road_id为'10'的道路垂直,x值的101.5m和104.5m分别对应车道宽度为3m时的'-1'和'-2'车道的中心位置: y: length = [-40m..-10m] x: length = [101.5m, 104.5m] Ego_xyz: xyz_point = map.create_xyz_point(x: x, y: y, z: 0.0m) Ego_InitPosition: pose_3d with: keep(it.xyz_point == Ego_xyz) 父主题: 种子地图的逻辑场景样例(VTD)
  • merge匝道合流 用途:创建merge高速匝道合流的静态场景(地图) 参数:参数如下表. 表1 merge参数 Parameter Type Mandatory Description lane_width length yes 每个车道宽度. left_lane_num int yes 左侧车道数量. right_lane_num int yes 右侧车道数量. ramp_lane_num int yes 匝道车道数量. main_speed speed yes 主路的限速值. ramp_speed speed yes 匝道的限速值. radius_of_curvature length yes 匝道的曲率半径. ramp_length length yes 匝道的长度. road_aids_type road_aids_type yes 道路辅助设施类型,匝道合流时匝道和主路的连接方式,目前共有三种:DType-1(直接式1)、DType-2(直接式2)和PType(平行式). 参数取值范围: lane_width: length = [3m..4m] left_lane_num: int = [0, 1, 2, 3, 4] right_lane_num: int = [1, 2, 3, 4] ramp_lane_num: int = [1, 2] main_speed: speed = [80kph..120kph] ramp_speed: speed = [40kph..60kph] radius_of_curvature: length = [150m..1000m] ramp_length: length = [200m..500m] road_aids_type: road_aids_type = ["DType-1", "DType-2", "PType"] keep创建 my_road_aids_type: road_aids_type = "DType-1" my_merge: merge with: keep(it.lane_width == 3m) keep(it.left_lane_num == 0) keep(it.right_lane_num == 3) keep(it.ramp_lane_num == 1) keep(it.main_speed == 120kph) keep(it.ramp_speed == 60kph) keep(it.radius_of_curvature == 200m) keep(it.ramp_length == 250m) keep(it.road_aids_type == my_road_aids_type) create创建 my_road_aids_type: road_aids_type = "DType-1" my_merge: merge = scenery.create_merge(lane_width: 3m, left_lane_num: 0, right_lane_num: 3, main_speed: 120kph, ramp_speed: 60kph, radius_of_curvature: 200m, ramp_length: 250m, road_aids_type: my_road_aids_type) 父主题: 领域模型设计
  • catalog 目录catalog可使一些元素得以重复使用,在目录catalog中参数化类型是可维护的,并且可以在场景文件中 被引用.VTD尚未支持使用catalog. catalog list ENUM_CATALOG = ("vehicle_catalog", "controller_catalog", "pedestrian_catalog", "misc_object_catalog") vehicle_catalog:场景中可复用的车辆类型列表. controller_catalog:场景中可复用的控制器类型列表. pedestrian_catalog:场景中可复用的行人类型列表. misc_object_catalog:场景中可复用的杂项对象类型列表. 父主题: Enum Lists
  • 动作 activate_controller 动作主体:车辆vehicle 结束时间:激活或停用控制器controller后,动作结束. 是否支持modifier:否 参数:参数如下表,支持位置参数和关键字参数. 表1 activate_controller参数 Parameter Type Mandatory Description lateral bool yes In lateral domain: Activate or deactivate controller defined (e.g. automated, autonomous) behavior. longitudinal bool yes In longitudinal domain: Activate or deactivate autonomous behavior. 代码样例: Ego.activate_controller(lateral:true, longitudinal:true) 父主题: 动作 Actions
  • 修饰器 position 用途:设定动作主体actor 所处的车道.可以修饰初始动作assign_init_position . 参数: 表1 position参数 Parameter Type Mandatory Description distance length no A target length value including a length unit. The distance is calculated using the route-based s-coordinate. ahead_of entity no specified by the lane-parameter. behind entity no When behind is specified, the actor must be behind the entity by the specified value. 代码样例 cut_in_vehicle.assign_init_position() with: lane(lane: raletive_lane_id, side_of: ego, side: left) position(distance: 85.0m, behind: ego) 父主题: 修饰器 Modifiers
  • 场景文件结构 OpenSCENARIO2.0 ├─ RoadNetwork │ ├─ LogicFile │ └─ SceneGraphFile (0..1) ├─ ParameterDeclarations (0..1) ├─ Entities │ └─ Entity (1+) └─ Storyboard ├─ StopTrigger ├─ InitActions │ ├─ AssignInitSpeedAction │ └─ AssignInitPositionAction └─ Story └─ Act (1+) ├─ StartTrigger (Wait) │ └─ ConditionGroup │ └─ Condition (1+) └─ Action 父主题: 场景组成
  • 车辆和控制器 Vehicle and controller 通过 车辆名: vehicle 的方式来为车辆命名.通过 keep(it.name == 指定车型名称) 的方式来指定车辆类型.通过 keep(it.initial_bm == 指定controller名称) 的方式来指定controller类型,目前均只能支持VTD或SIMPRO内置的车辆和controller类型.生成文件会自动适配车辆信息. name, initial_bm等车辆属性需要在仿真器的catalog列表中定义,不同仿真器的预定义的catalog内容有所不同,需要在撰写场景文件时确认使用的车型、controller名称在仿真器catalog中已经存在. name为必选项,initial_bm非必选项. 主车必须命名为Ego,否则VTD/SIMPRO将无法识别. 例1(VTD):主车,指定initial_bm Ego_name: string = "Audi_A3_2009_black" Ego_controller: string = "DefaultDriver" Ego: vehicle with: keep(it.name == Ego_name) keep(it.initial_bm == Ego_controller) 例2(VTD):非主车,不指定initial_bm cut_in_vehicle: vehicle with: keep(it.name == "Audi_A3_2009_red") 例3(SIMPRO):主车,指定initial_bm cut_in_vehicle: vehicle with: keep(it.name == "Saimo") keep(it.initial_bm == "默认驾驶员") 例4(SIMPRO):非主车,不指定initial_bm cut_in_vehicle: vehicle with: keep(it.name == "Saimo") 父主题: 实体设置 Entities
  • distance_direction 用于触发条件object_distance和point_distance. distance_direction list ENUM_DISTANCE_DIRECTION = ("longitudinal", "lateral", "euclidianDistance") longitudinal:在x坐标中测量距离.正表示引用位于参考实体的前面. lateral:在y坐标中测量距离.正表示引用位于参考实体的左侧. euclidianDistance:欧氏距离. 父主题: Enum Lists
  • 动作 change_lane 动作主体:车辆vehicle 结束时间:当动作主体actor 位于目标车道lane 中、目标偏移offset 处时,动作结束. 是否支持modifier:否 参数:参数如下表,支持关键字参数. rate_peak 和rate_profile 是必选项,用于设置osc1中的dynamics . target 和reference 必须设置且只设置其中之一,前者用于指定绝对车道,后者用于指定相对车道. 表1 change_lane参数 Parameter Type Mandatory Description number_of_lanes uint no The target lane is "num_of_lanes" to the side of the reference entity. Use in conjunction with "side". side lane_change_side no Select on which side of the reference entity. reference entity no Default=it.actor. Reference to the entity that is used to determine the target lane. If this argument is omitted, the actor itself is used as reference. offset length no Default=0.0. Target offset from center of the target lane that the actor follows at the end of the action. rate_profile dynamics_shape yes Assign a shape for the change of the lateral position variable (t-axis). This profile affects the lateral velocity during action execution. rate_peak speed yes Target value for the peak lateral velocity that must be achieved during the action. target lane_id(uint) no The actor starts and finishes the action in the target lane. 目标lane必须在地图上. 中心线左侧的lane_id为正,如'1','2'.右侧的lane_id为负,如'-1','-3'.绝对值越大,距离中心线越远. offset值不能超出当前所在lane的宽度范围. 使用相对位置时,参考对象reference必须是车辆,否则VTD无法支持. rate_profile只能选择linear或step. 绝对车道1 my_lane: lane with: keep(it.lane_id == '1') m_profile: dynamics_shape = linear side_vehicle.change_lane(target: my_lane, rate_profile: m_profile, rate_peak: 0.3mps) 绝对车道2 my_lane: lane with: keep(it.lane_id == '-1') m_profile: dynamics_shape = linear side_vehicle.change_lane(target: my_lane, offset: -0.2m, rate_profile: m_profile, rate_peak: 0.4mps) 相对车道1 m_profile: dynamics_shape = step m_side: lane_change_side = left m_profile: dynamics_shape = step Ego.change_lane(number_of_lanes: 2, side: m_side, reference: side_vehicle, offset: 0.8m, rate_profile: m_profile, rate_peak: 0.3mps) 相对车道2 m_profile: dynamics_shape = step m_side: lane_change_side = same m_profile: dynamics_shape = step Ego.change_lane(number_of_lanes: 1, reference: side_vehicle, side:m_side, rate_profile: m_profile, rate_peak: 0.3mps) 父主题: 动作 Actions
  • 修饰器 lane 用途:设定动作主体actor 所处的车道.可以修饰初始动作assign_init_position. 参数: 表1 lane参数 Parameter Type Mandatory Description lane int no Relative value of the target lane_id. same_as entity no Option to specify that the vehicle must be in the same lane as the referenced vehicle. side_of entity no Option to specify that the vehicle must be in another lane than the referenced vehicle. side side_left_right no Depending on the value the actor shall be on the right or left side of the referenced entity. How many lanes right or left of that entity is specified by the lane-parameter. offset length no Lateral offset to the target lane. side_of和same_as必须设置且仅设置一个. 使用side_of来设置车道时,必须同时使用lane和side. 使用lane+side_of m_left: side_left_right = left cut_in_vehicle.assign_init_position() with: lane(lane: 1, side_of: Ego, side: m_left) position(distance: 85.0m, behind: ego) 使用same_as m_left: side_left_right = left cut_in_vehicle.assign_init_position() with: lane(same_as: Ego) position(distance: 85.0m, behind: ego) 父主题: 修饰器 Modifiers
  • 初始动作 acquire_position_init 动作主体:车辆vehicle或行人pedestrian 结束时间:当动作主体actor 获取目标位置position 时,动作结束. 是否支持modifier:否 参数表: 参数如下表,pose_3d是point和orientation的组合结构, point可以使用xyz_point或 odr_point或road_point中的任意一个,orientation非必选项. 表1 acquire_position_init参数 Parameter Type Mandatory Description target pose_3d yes target position. 目标位置必须在地图设定的道路上,且是可达的. xyz_point,有方向要求 m_x: length = 0.0m m_xyz: xyz_point = map.create_xyz_point(x: m_x, y: 10.0m ,z: 0.0m) m_heading: angle = 1.57rad m_orientation: orientation_3d with: keep(it.roll == 0.0rad) keep(it.pitch == 0.0rad) keep(it.yaw == m_heading) m_position: pose_3d with: keep(it.xyz_point == m_xyz) keep(it.orientation == m_orientation) Ego.acquire_position_init(target: m_position) odr_point,无方向要求 m_odr: odr_point = map.create_odr_point(road_id: '0', lane_id: '-4', s: 5.0m, t: 0.0m) m_position: pose_3d with: keep(it.odr_point == m_odr) Ego.acquire_position_init(target: m_position) road_point,无方向要求 m_road: road_point = map.create_road_point(road_id: '0', s: 5.0m, t: 0.0m) m_position: pose_3d with: keep(it.road_point == m_road) Ego.acquire_position_init(target: m_position) 父主题: 动作 Actions
  • 产品优势 一站式 开箱即用,全托管的自动驾驶云服务,用户无需从零搭建一套复杂的自动驾驶大数据平台、AI平台、仿真平台、标注平台等多个工具平台,只需聚焦于核心价值(自动驾驶算法、标注数据、仿真场景),快速开展自动驾驶业务,跟上瞬息多变的市场节奏。 海量数据 平台可支持PB级数据存储和亿级数据秒级检索。 软硬件加速 感知算法训练和仿真需要使用大量GPU资源,Octopus依托华为自研软硬件能力提供的强大算力支持,满足每天百万公里仿真测试和算法训练。 自动化标注 自动驾驶算法的持续提升依托于持续增加的高质量标注数据集,平台提供预标注范例模型,能对常用的物体如乘用车、大巴车、行人、骑行人、交通灯、可行驶区域等进行预标注,同时通过难例挖掘持续提升标注数据集质量。 仿真场景库 提供场景库管理和分布式运行能力,覆盖大部分驾驶路况,提升自动驾驶安全性。 并行仿真 实车测试成本高,危险系数高,提供并行仿真能力,能够利用云端资源快速回归仿真场景,提供上千个并行仿真节点,完成日行百万公里虚拟里程。 车云无缝对接 支持无缝对接自动驾驶车辆上的移动数据中心(Mobile Data Center,简称MDC)等车端硬件平台,实现车云协同。
  • 计费模式 Octopus当前支持包年和包月购买的计费模式,满足不同用户需求。 按包周期(包年/包月):是一种预付费模式,即先付费再使用,按照订单的购买周期进行结算,因此在购买之前,用户必须保证账户余额充足。 表3 计费模式 参数 说明 计费模式 包年/包月。 付费方式 预付费。 按照订单的购买周期结算。 计费周期 按订单的实际购买时长计费。 使用场景 适用于可预估资源使用周期的场景,价格比按需计费模式更优惠。这种计费模式更推荐长期使用者购买。
  • 计费项 Octopus服务公测试用期间,除仿真服务以外的服务均暂不收费。试用期过后按购买的规格类型收费。 其他相关资源的计费信息请参考云服务价格详情。 具体的收费时间和计费规则请关注Octopus服务产品公告。 使用Octopus自动驾驶云服务进行自动驾驶全流程开发时,涉及到计费项主要包括云服务费用、资源费用、模型费用。 云服务费用:订阅服务所需要的费用,其中包含服务运行所需基本的资源。 资源扩容费用:使用Octopus时需额外购买的计算、存储等资源产生的费用。 模型费用:使用相关模型时所需的订阅费。 存储费用 表1 计费项信息 计费项 计费说明 对象存储(Object Storage Service,OBS) Octopus使用对象存储服务,存储数据和模型,会产生相应的费用,具体费用可参见对象存储价格详情。 资源费用 Octopus服务可根据用户的使用区域和所需要的业务类型,选择合适的计算资源,完成相应的自动驾驶开发。具体资源详情请参考产品价格详情。 在使用Octopus时,不同场景的计算资源使用详情可参见按需付费使用。 表2 计算资源计费项说明 计费项 说明 自动驾驶全流程开发 面向开发者,提供数据采集到仿真任务的全功能,包含数据采集、数据处理、标注服务、模型开发、模型训练、仿真服务等。 涉及计费项包含: 仿真服务 资源配置 当购买资源时,要先购买对应服务,除服务中自带资源外,可增量购买资源。 涉及计费项包含: 通用处理节点,Octopus用于增强计算性能,会产生相应的费用。 存储扩容包,Octopus用于存储数据和模型。 模型费用 按用户实际情况,购买汽车大模型相关模型。
  • 续费 包年/包月自动驾驶云服务到期后会影响云服务器正常运行。如果您想继续使用,需要在指定的时间内为服务、资源、模型续费,否则将终止服务,系统中的数据也将被永久删除。在到期前续费成功,所有资源、数据得以保留,且服务的使用不受影响。 表4 续费相关功能 功能 说明 手动续费 包年/包月云服务、资源从购买到自动删除之前,您可以随时在自动驾驶云服务控制台续费,以延长使用时间。 自动续费 开通云服务时勾选自动续费选项,系统会在每次到期前为您自动续费,避免因忘记手动续费而导致资源、数据被自动删除。 图1 自动续费
  • 到期与欠费 如下图所示,包年/包月资源各个阶段的状态。购买后,在计费周期内资源正常运行,此阶段为有效期;资源到期而未续费时,将陆续进入宽限期和保留期。 当您的账号欠费后,资源不会立即停止服务,资源进入宽限期。在宽限期内客户可正常访问和使用此服务资源。 如果您在宽限期内仍未续费服务资源,那么就会进入保留期,资源状态变为“已冻结”,针对已购买的服务、扩展资源、模型,允许访问、修改、删除其中的数据,不允许创建数据。 保留期到期后,若服务资源仍未续费,那么服务资源以及其中的数据将被自动删除,无法恢复。 图1 包年/包月资源生命周期
  • 支持审计的关键操作 操作场景 平台提供了云审计服务。通过云审计服务,您可以记录与云服务器相关的操作事件,便于日后的查询、审计和回溯。 前提条件 已开通云审计服务。 支持审计的关键操作列表 表1 云审计服务支持的云服务器操作列表 操作名称 资源类型 事件名称 创建在线仿真加载任务 host create load online tasks 创建在线仿真保存任务 host create save online tasks 创建在线仿真回放任务 host create replay online tasks 下载仿真任务报告 batch download simulation report 创建算法镜像 algorithmImage create algorithm image 更新算法镜像 algorithmImage update algorithm image 删除算法镜像 algorithmImage delete algorithm image 创建算法 algorithms create algorithms 更新算法 algorithms update algorithm 删除算法 algorithms delete algorithm 创建仿真配置 batchConfig create batch config 更新仿真配置 batchConfig update batch config 删除仿真配置 batchConfig delete batch config 创建仿真任务 batch create batch config 更新仿真任务 batch update batch 删除仿真任务 batch delete batch 调整仿真任务队列优先级 batchQueue update batch queue priority 仿真pb下载 simulation download sim osi 算法日志下载 simulation download algorithm log 评测日志下载 simulation download evaluation log 评测pb下载 simulation download evaluation 算法pb下载 simulation download algorithm pb 仿真meta下载 simulation download osi meta 算法meta下载 simulation download algorithm meta 创建评测镜像 evaluationImage create evaluation image 更新评测镜像 evaluationImage update evaluation image 删除评测镜像 evaluationImage delete evaluation image 创建评测 evaluations create evaluations 更新评测 evaluations update evaluations 删除评测 evaluations delete evaluations 创建场景库分类 categories create categories 更新场景库分类 categories update categories 删除场景库分类 categories delete categories 创建逻辑场景库分类 categories create logical categories 更新逻辑场景库分类 categories update logical categories 删除逻辑场景库分类 categories delete logical categories 创建场景库 groups create groups 更新场景库 groups update groups 删除场景库 groups delete groups 场景库中添加场景 groups update groups scenarios 场景库删除场景 groups delete groups scenarios 创建逻辑场景库 groups create logical groups 更新逻辑场景库 groups update logical groups 逻辑场景库中添加场景 groups update logical groups scenarios 删除逻辑场景库 groups delete logical groups 删除逻辑场景库中的场景 groups delete logical groups scenarios 创建场景地图 maps create maps 更新场景地图文件 maps update maps files 下载地图文件 maps download maps files 创建逻辑场景地图 maps create maps 更新逻辑场景地图文件 maps update logical maps files 创建场景3D模型 models create models 更新场景3D模型 models update models 下载场景3D模型文件 models download models files 创建测试套件 suits create suits 更新测试套件 suits update suits 删除测试套件 suits delete suits 套件添加用例 suits add cases 从套件删除用例 suits delete cases 创建测试用例 cases create testcases 更新测试用例 cases update testcases 删除测试用例 cases delete testcases 测试用例添加单个标签 cases update testcases labels 测试用例删除单个标签 cases delete testcases labels 创建场景 scenarios create scenarios 更新场景 scenarios update scenarios 删除场景 scenarios delete scenarios 下载场景文件 scenarios download scenarios files 创建场景文件 scenarios create scenarios files 修改场景文件 scenarios update scenarios files 场景绑定单个标签 scenarios update scenarios labels 场景解绑标签 scenarios delete scenarios labels 创建逻辑场景 scenarios create logical scenarios 更新逻辑场景 scenarios update logical scenarios 删除逻辑场景 scenarios delete logical scenarios 下载逻辑场景文件 scenarios download logical scenarios files 创建逻辑场景文件 scenarios create logical scenarios files 更新逻辑场景文件 scenarios update logical scenarios files 创建标签 labels create labels 更新标签 labels update labels 删除标签 labels delete labels 更新逻辑场景标签 scenarios update logical scenarios labels 删除逻辑场景标签 scenarios delete logical scenarios labels 创建参数泛化资源 parameters create logical parameters 下载逻辑参数文件 parameters download logical parameters files 更新参数泛化资源文件 parameters update logical parameters files 导入标签 labels create turtles 创建路采场景 scenarios create road scenarios 创建场景转换 scenarios create scenario transformers 创建泛化任务 generalizations create logical generalizations 删除泛化任务 generalizations delete logical generalizations
  • 审计 云审计服务(Cloud Trace Service,CTS),是华为云安全解决方案中专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。 用户开通云审计服务后,CTS可记录八爪鱼的管理事件用于审计。 CTS的详细介绍和开通配置方法,请参见CTS快速入门。 Octopus支持审计的操作事件,请参见支持审计的关键操作。 查看审计日志,请参见如何查看审计日志。 图1 云审计服务
  • 错误码说明 当您调用API时,如果遇到“APIGW”开头的错误码,请参见API网关错误码进行处理。 表1 错误码 状态码 错误码 错误信息 描述 处理措施 400 octopus.400000 Request parameter verification failed. 请求参数校验失败。 请确认请求参数正确。 401 octopus.400001 The request token is invalid. 请求token不合法。 请更新Authorization中的Token。 403 octopus.400003 Insufficient permission to operate. 操作权限不足。 请联系管理员申请权限。 404 octopus.400004 The resource does not exist. 您请求的资源不存在。 请确认您访问的资源是否正确。 405 octopus.400005 The server denies the request using the current HTTP method. 服务器禁止了使用当前HTTP方法的请求。 请改变HTTP请求方法。 409 octopus.400009 The resource you requested is already in use, or the resource is bound to another resource. 您请求的资源已经被占用,或存在关联资源。 请稍后重试,或请确保请求资源已解除或已删除关联资源。 500 octopus.400100 Internal server error. 内部服务错误。 请联系华为自动驾驶云服务技术支持团队或稍后再试。 502 octopus.400102 The response received from the upstream server is invalid. 从上游服务器中接收到的响应是无效的。 请检查网关和代理服务器。 504 octopus.400104 The server acting as a gateway or proxy cannot get the desired response within the specified time. 扮演网关或者代理的服务器无法在规定的时间内获得想要的响应。 请检查网关和代理服务器。
  • 调用API获取项目ID 项目ID还用通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "cn-north-4", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • 产品优势 一站式 开箱即用,全托管的自动驾驶云服务,用户无需从零搭建一套复杂的自动驾驶大数据平台、AI平台、仿真平台、标注平台等多个工具平台,只需聚焦于核心价值(自动驾驶算法、标注数据、仿真场景),快速开展自动驾驶业务,跟上瞬息多变的市场节奏。 海量数据 路测车预计每天产生8TB数据,平台可支持PB级数据存储和亿级数据秒级检索。 软硬件加速 感知算法训练和仿真需要使用大量GPU资源,Octopus依托华为自研软硬件能力提供的强大算力支持,满足每天百万公里仿真测试和算法训练。 自动化标注 自动驾驶算法的持续提升依托于持续增加的高质量标注数据集,平台提供预标注范例模型,能对常用的物体如乘用车、大巴车、行人、骑行人、交通灯、可行驶区域等进行预标注,同时通过难例挖掘持续提升标注数据集质量。 仿真场景库 系统预置智能驾驶、主动安全、危险场景等六大场景实例,提供20000个场景库管理和分布式运行能力,覆盖大部分驾驶路况,提升自动驾驶安全性。 并行仿真 实车测试成本高,危险系数高,提供并行仿真能力,能够利用云端资源快速回归仿真场景,提供上千个并行仿真节点,完成日行百万公里虚拟里程。 车云无缝对接 支持无缝对接自动驾驶车辆上的移动数据中心(Mobile Data Center,简称MDC)等车端硬件平台,实现车云协同。
共100000条