# 算法镜像说明

# 算法镜像

为保证resim功能的正常运行,您上传的自定义算法镜像需包含以下部分:

  1. 具备功能正常运行的环境;
  2. 您开发的针对路测场景的算法;
  3. 处理rosbag等数据的逻辑;
  4. 用于对接仿真服务算法评测的PB文件转换逻辑;
  5. 平台的一些约定。
    1. 想要评测的数据需要转换为“.pb”文件,“.pb”文件的名称及路径请固定如下:

      /opt/rosbag/bag/ego_state.pb
      
    2. 转换的“.pb”文件需符合protobuf message定义。

        syntax = "proto3";
      
        package evaluation;
      
        message Coordinate {
           double x = 1;      // x position            @unit m
           double y = 2;      // y position            @unit m
           double z = 3;      // z position            @unit m
           double h = 4;      // heading angle         @unit rad
           double p = 5;      // pitch angle           @unit rad
           double r = 6;      // roll angle            @unit rad
       }
      
        message Geometry{
           float dimX = 1;        // x dimension in object co-ordinates (length)                                                 @unit m
           float dimY = 2;        // y dimension in object co-ordinates (width)                                                  @unit m
           float dimZ = 3;        // z dimension in object co-ordinates (height)                                                 @unit m
           float offX = 4;        // x distance from ref. point to center of geometry, object co-ordinate system                 @unit m                                  @version 0x0100 */
           float offY = 5;        // y distance from ref. point to center of geometry, object co-ordinate system                 @unit m                                  @version 0x0100 */
           float offZ = 6;        // z distance from ref. point to center of geometry, object co-ordinate system                 @unit m
      }
      
        message ObjectState {
           uint32 id = 1;        // unique object ID within the given category
           uint32 type = 2;      // object type
           Geometry geo = 3;     // info about object's geometry
           Coordinate pos = 4;   // position and orientation of object's reference point
           Coordinate speed  = 5;
           Coordinate acceleration = 6;
      }
      
      
      
        message EgoStateFrame {
           double sim_time = 1;
           ObjectState ego_state = 2;
      }
        message EgoStateResult{
           repeated EgoStateFrame ego_state_frame  = 1;
      }
      
上次更新: 3/30/2021, 4:12:06 PM