Example #1
0
 public static Detected3DObjectArray ConvertTo(apollo.common.Detection3DArray data)
 {
     return(new Detected3DObjectArray()
     {
         Data = data.detections.Select(obj =>
                                       new Detected3DObject()
         {
             Id = obj.id,
             Label = obj.label,
             Score = obj.score,
             Position = Convert(obj.bbox.position.position),
             Rotation = Convert(obj.bbox.position.orientation),
             Scale = Convert(obj.bbox.size),
             LinearVelocity = Convert(obj.velocity.linear),
             AngularVelocity = Convert(obj.velocity.angular),
         }).ToArray(),
     });
 }
Example #2
0
        public static apollo.common.Detection3DArray ConvertFrom(Detected3DObjectData data)
        {
            var r = new apollo.common.Detection3DArray()
            {
                header = new apollo.common.Header()
                {
                    sequence_num  = data.Sequence,
                    frame_id      = data.Frame,
                    timestamp_sec = data.Time,
                },
            };

            foreach (var obj in data.Data)
            {
                r.detections.Add(new apollo.common.Detection3D()
                {
                    header = r.header,
                    id     = obj.Id,
                    label  = obj.Label,
                    score  = obj.Score,
                    bbox   = new apollo.common.BoundingBox3D()
                    {
                        position = new apollo.common.Pose()
                        {
                            position    = ConvertToPoint(obj.Position),
                            orientation = Convert(obj.Rotation),
                        },
                        size = ConvertToVector(obj.Scale),
                    },
                    velocity = new apollo.common.Twist()
                    {
                        linear  = ConvertToVector(obj.LinearVelocity),
                        angular = ConvertToVector(obj.LinearVelocity),
                    },
                });
            }

            return(r);
        }