At the moment, we’re excited to announce that AWS IoT FleetWise now helps automobile imaginative and prescient system knowledge assortment that permits prospects to gather metadata, object record and detection knowledge, and pictures or movies from digital camera, lidar, radar and different imaginative and prescient sub-systems. This new characteristic, now obtainable in Preview, builds upon present AWS IoT FleetWise capabilities that allow prospects to extract extra worth and context from their knowledge to construct autos which might be extra linked and handy.
Fashionable autos are geared up with a number of imaginative and prescient techniques. Examples of imaginative and prescient techniques embody a encompass view array of cameras and radars that allow superior driver help (ADAS) use circumstances and driver and cabin monitoring techniques to help with driver consideration in semi-autonomous driving use circumstances. Most of those techniques carry out some degree of computation on the automobile, usually utilizing refined algorithms for sensor fusion and AI/ML for inference.
Imaginative and prescient techniques generate large quantities of knowledge in structured (numbers, textual content) and unstructured (pictures, video) codecs. This problem makes it tough to synchronize knowledge from a number of automobile sensor modalities round a given occasion of curiosity in a approach that minimizes interference with the operation of the automobile. For instance, to investigate the accuracy of street circumstances detected by a automobile digital camera, an information scientist could wish to view telemetry knowledge (e.g., velocity and brake stress), structured object lists and metadata, and unstructured pictures/video knowledge. Retaining all of these knowledge factors organized and related to the identical occasion is a heavy elevate. This sometimes requires further software program and compute energy to solely accumulate knowledge factors of curiosity to reduce interference with the operation of the automobile, add metadata, and preserve the information synchronized.
Imaginative and prescient system knowledge from AWS IoT FleetWise lets automotive firms simply accumulate and arrange knowledge from automobile imaginative and prescient techniques that embody cameras, radars, and lidars. It retains each structured and unstructured imaginative and prescient system knowledge, metadata, and telemetry knowledge synchronized within the cloud, making it simpler for patrons to assemble a full image view of occasions and acquire insights. Listed below are just a few situations:
- To know what occurred throughout a hard-braking occasion, a buyer needs to gather knowledge earlier than and after the occasion happens. The information collected could embody inference (e.g., an impediment was detected), timestamps and digital camera settings (metadata), and what occurred across the automobile (e.g., pictures, movies, and lightweight/radar maps with bounding containers and detection overlays).
- A buyer is thinking about anomalous occasions on roadways like accidents, wildfires, and obstacles that impede site visitors. The shopper begins by gathering telemetry and object record knowledge at scale throughout numerous autos, then, zooms in on a set of autos which might be signaling anomalous occasions (e.g., velocity is 0 on a big freeway) and collects imaginative and prescient system knowledge from these autos.
When gathering imaginative and prescient system knowledge utilizing AWS IoT FleetWise, prospects can benefit from the service’s superior options and interfaces they already use to gather telemetry knowledge, for instance, specifying occasions of their knowledge assortment marketing campaign to optimize bandwidth and knowledge measurement. Clients can get began on AWS by defining and modeling a automobile’s imaginative and prescient system, alongside its attributes and telemetry sensors. The shopper’s Edge Agent deployed within the automobile collects knowledge from CAN-based automobile sensors (e.g. battery temperature), in addition to from automobile sub-systems that embody imaginative and prescient system sensors. Clients can use the identical event- or time-based knowledge assortment marketing campaign to gather knowledge indicators concurrently from each normal sensors and imaginative and prescient techniques. Within the cloud, prospects see a unified view of their outlined automobile attributes and different metadata, telemetry knowledge, and structured imaginative and prescient system knowledge, with hyperlinks to view unstructured imaginative and prescient system knowledge in Amazon Easy Storage Service (Amazon S3). The information stays synchronized utilizing automobile, marketing campaign, and occasion identifiers. Clients can then use companies like AWS Glue to combine knowledge for downstream analytics.
Continental AG is creating driver comfort options
Continental AG develops pioneering applied sciences and companies for autonomous mobility. “Continental has collaborated intently with AWS on creating applied sciences that speed up automotive software program growth within the cloud. With imaginative and prescient system knowledge from AWS IoT FleetWise, we can simply accumulate digital camera and motion-planning knowledge to enhance automated parking help and allow fleet-wide monitoring and reporting.”
Yann Baudouin, Head of Information Options – Engineering Platform and Ecosystem, Continental AG
HL Mando is creating capabilities that improve driver security and personalization
HL Mando is a tier 1 provider of components and software program to the automotive business. “At Mando, we’re dedicated to innovating expertise that makes autos simpler to drive and function. Our options depend on the flexibility to gather automobile telemetry knowledge in addition to automobile digital camera knowledge in an environment friendly approach. We’re trying ahead to utilizing the information we accumulate by way of AWS IoT FleetWise to enhance automobile software program capabilities that may improve driver security and driver personalization.”
Seong-Hyeon Cho, Vice Chairman/CEO, HL Mando
ThunderSoft is creating automotive and fleet options
ThunderSoft supplies clever working techniques and applied sciences to automotive firms and enterprises. “As ThunderSoft works to assist advance the subsequent era of linked automobile expertise throughout the globe, we stay up for persevering with our collaboration with AWS. With the arrival of imaginative and prescient system knowledge from AWS IoT FleetWise, we’ll have the ability to assist our prospects with modern options for superior driver help techniques (ADAS) and fleet administration.”
Pengcheng Zou, CTO, ThunderSoft
Answer Overview
Let’s take an ADAS use case to stroll by way of the method of gathering imaginative and prescient system knowledge. Think about that an ADAS engineer is deploying a collision avoidance system in manufacturing autos. A technique this technique helps autos keep away from collisions is by robotically making use of brakes in sure situations (e.g., an impending rear-end collision with one other automobile).
Whereas the software program used on this system has already gone by way of rigorous testing, the engineer needs to constantly enhance the software program for each current-gen and future-gen autos. On this case, the engineer needs to see all situations the place a collision was detected. To know what occurred through the occasion, the engineer will have a look at imaginative and prescient knowledge comprised of pictures and telemetry knowledge earlier than and after the collision was detected. As soon as within the S3 bucket, the engineer could wish to visualize, analyze and label the information.
Conditions
Earlier than you get began, you will want:
- An AWS account with console, CLI and programmatic entry in supported Areas.
- Permission to create and entry AWS IoT FleetWise and Amazon S3 assets.
- To observe the directions in our AWS IoT FleetWise imaginative and prescient system demo information, as much as and together with, “Playback ROS 2 knowledge.”
- (Elective) A ROS 2 setting that helps the “Galactic” model of ROS 2. In the course of the Preview interval for imaginative and prescient system knowledge, the AWS IoT FleetWise Reference Edge Agent helps ROS 2 middleware to gather imaginative and prescient system indicators.
Walkthrough
Step 1: Mannequin your automobile
- Create a sign catalog by creating the file: ros2-nodes.json . Be happy to alter the identify and outline inside this file to your liking.
{
"identify": "fw-vision-system-catalog",
"description": "vision-system-catalog",
"nodes": [
{
"branch": {
"fullyQualifiedName": "Types"
}
},
{
"struct": {
"fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage"
}
},
{
"struct": {
"fullyQualifiedName": "Types.std_msgs_Header"
}
},
{
"struct": {
"fullyQualifiedName": "Types.builtin_interfaces_Time"
}
},
{
"property": {
"fullyQualifiedName": "Types.builtin_interfaces_Time.sec",
"dataType": "INT32",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.builtin_interfaces_Time.nanosec",
"dataType": "UINT32",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.std_msgs_Header.stamp",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.builtin_interfaces_Time"
}
},
{
"property": {
"fullyQualifiedName": "Types.std_msgs_Header.frame_id",
"dataType": "STRING",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage.header",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.std_msgs_Header"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage.format",
"dataType": "STRING",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage.data",
"dataType": "UINT8_ARRAY",
"dataEncoding": "BINARY"
}
},
{
"branch": {
"fullyQualifiedName": "Vehicle",
"description": "Vehicle"
}
},
{
"branch": {
"fullyQualifiedName": "Vehicle.Cameras",
"description": "Vehicle.Cameras"
}
},
{
"branch": {
"fullyQualifiedName": "Vehicle.Cameras.Front",
"description": "Vehicle.Cameras.Front"
}
},
{
"sensor": {
"fullyQualifiedName": "Vehicle.Cameras.Front.Image",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage"
}
},
{
"struct": {
"fullyQualifiedName": "Types.std_msgs_msg_Float32"
}
},
{
"property": {
"fullyQualifiedName": "Types.std_msgs_msg_Float32.data",
"dataType": "FLOAT",
"dataEncoding": "TYPED"
}
},
{
"sensor": {
"fullyQualifiedName": "Vehicle.Speed",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.std_msgs_msg_Float32"
}
},
{
"branch": {
"fullyQualifiedName": "Vehicle.Airbag",
"description": "Vehicle.Airbag"
}
},
{
"sensor": {
"fullyQualifiedName": "Vehicle.Airbag.CollisionIntensity",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.std_msgs_msg_Float32"
}
},
{
"struct": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.header",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.std_msgs_Header"
}
},
{
"struct": {
"fullyQualifiedName": "Types.geometry_msgs_Quaternion"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Quaternion.x",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Quaternion.y",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Quaternion.z",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Quaternion.w",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.orientation",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.geometry_msgs_Quaternion"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.orientation_covariance",
"dataType": "DOUBLE_ARRAY",
"dataEncoding": "TYPED"
}
},
{
"struct": {
"fullyQualifiedName": "Types.geometry_msgs_Vector3"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Vector3.x",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Vector3.y",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.geometry_msgs_Vector3.z",
"dataType": "DOUBLE",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.angular_velocity",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.geometry_msgs_Vector3"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.angular_velocity_covariance",
"dataType": "DOUBLE_ARRAY",
"dataEncoding": "TYPED"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.linear_acceleration",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.geometry_msgs_Vector3"
}
},
{
"property": {
"fullyQualifiedName": "Types.sensor_msgs_msg_Imu.linear_acceleration_covariance",
"dataType": "DOUBLE_ARRAY",
"dataEncoding": "TYPED"
}
},
{
"sensor": {
"fullyQualifiedName": "Vehicle.Acceleration",
"dataType": "STRUCT",
"structFullyQualifiedName": "Types.sensor_msgs_msg_Imu"
}
}
]
}
aws iotfleetwise create-signal-catalog --cli-input-json file://ros2-nodes.json
- AWS IoT FleetWise can accumulate each imaginative and prescient system and CAN bus knowledge on the identical time. You may also replace the sign catalog by including CAN indicators from any vss-json file. Ensure the “identify” subject within the file matches the sign catalog you created:
aws iotfleetwise update-signal-catalog --cli-input-json file://<can-nodes>.json
- Create a mannequin manifest named: vehicle-model.json. Your mannequin manifest ought to be comprised of the next indicators (totally certified names outlined beneath):
- Automobile.Cameras.Entrance.Picture
- Automobile.Velocity
- Automobile.Acceleration
- Automobile.Airbag.CollisionIntensity
{
"identify": "fw-vision-system-model",
"signalCatalogArn": "<signal-catalog-ARN>",
"description": "Automobile mannequin to reveal FleetWise imaginative and prescient system knowledge",
"nodes": ["Vehicle.Cameras.Front.Image","Vehicle.Speed","Vehicle.Airbag.CollisionIntensity","Vehicle.Acceleration"]
}
aws iotfleetwise create-model-manifest --cli-input-json file://vehicle-model.json
- Replace your mannequin manifest by setting it to ‘energetic:’
aws iotfleetwise update-model-manifest --name fw-vision-system-model --status ACTIVE
- Create a decoder manifest file: decoder-manifest.json. Modify the JSON to mirror the suitable mannequin manifest ARN. Should you’re additionally utilizing CAN indicators, seek advice from the AWS IoT FleetWise documentation for an instance decoder manifest with each imaginative and prescient system and CAN indicators. You will want to replace the decoder manifest to ‘energetic’ standing when you create the decoder manifest:
{
"identify": "fw-vision-system-decoder-manifest",
"modelManifestArn": "<your mannequin manifest arn>",
"description": "decoder manifest to reveal imaginative and prescient system knowledge",
"networkInterfaces":[
{
"interfaceId": "10",
"type": "VEHICLE_MIDDLEWARE",
"vehicleMiddleware": {
"name": "ros2",
"protocolName": "ROS_2"
}
},
],
"signalDecoders":[
{
"fullyQualifiedName": "Vehicle.Cameras.Front.Image",
"type": "MESSAGE_SIGNAL",
"interfaceId": "10",
"messageSignal": {
"topicName": "/carla/ego_vehicle/rgb_front/image_compressed:sensor_msgs/msg/CompressedImage",
"structuredMessage": {
"structuredMessageDefinition": [
{
"fieldName": "header",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "stamp",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "sec",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "INT32"
}
}
}
},
{
"fieldName": "nanosec",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "UINT32"
}
}
}
}
]
}
},
{
"fieldName": "frame_id",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "STRING"
}
}
}
}
]
}
},
{
"fieldName": "format",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "STRING"
}
}
}
},
{
"fieldName": "knowledge",
"dataType": {
"structuredMessageListDefinition": {
"identify": "listType",
"memberType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "UINT8"
}
}
},
"capability": 0,
"listType": "DYNAMIC_UNBOUNDED_CAPACITY"
}
}
}
]
}
}
},
{
"fullyQualifiedName": "Automobile.Velocity",
"sort": "MESSAGE_SIGNAL",
"interfaceId": "10",
"messageSignal": {
"topicName": "/carla/ego_vehicle/speedometer:std_msgs/msg/Float32",
"structuredMessage": {
"structuredMessageDefinition": [
{
"fieldName": "data",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT32"
}
}
}
}
]
}
}
},
{
"fullyQualifiedName": "Automobile.Airbag.CollisionIntensity",
"sort": "MESSAGE_SIGNAL",
"interfaceId": "10",
"messageSignal": {
"topicName": "/carla/ego_vehicle/collision_intensity:std_msgs/msg/Float32",
"structuredMessage": {
"structuredMessageDefinition": [
{
"fieldName": "data",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT32"
}
}
}
}
]
}
}
},
{
"fullyQualifiedName": "Automobile.Acceleration",
"sort": "MESSAGE_SIGNAL",
"interfaceId": "10",
"messageSignal": {
"topicName": "/carla/ego_vehicle/imu:sensor_msgs/msg/Imu",
"structuredMessage": {
"structuredMessageDefinition": [
{
"fieldName": "header",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "stamp",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "sec",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "INT32"
}
}
}
},
{
"fieldName": "nanosec",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "UINT32"
}
}
}
}
]
}
},
{
"fieldName": "frame_id",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "STRING"
}
}
}
}
]
}
},
{
"fieldName": "orientation",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "x",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "y",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "z",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "w",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
}
]
}
},
{
"fieldName": "orientation_covariance",
"dataType": {
"structuredMessageListDefinition": {
"identify": "listType",
"memberType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
},
"capability": 9,
"listType": "FIXED_CAPACITY"
}
}
},
{
"fieldName": "angular_velocity",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "x",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "y",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "z",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
}
]
}
},
{
"fieldName": "angular_velocity_covariance",
"dataType": {
"structuredMessageListDefinition": {
"identify": "listType",
"memberType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
},
"capability": 9,
"listType": "FIXED_CAPACITY"
}
}
},
{
"fieldName": "linear_acceleration",
"dataType": {
"structuredMessageDefinition": [
{
"fieldName": "x",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "y",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
},
{
"fieldName": "z",
"dataType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
}
}
]
}
},
{
"fieldName": "linear_acceleration_covariance",
"dataType": {
"structuredMessageListDefinition": {
"identify": "listType",
"memberType": {
"primitiveMessageDefinition": {
"ros2PrimitiveMessageDefinition": {
"primitiveType": "FLOAT64"
}
}
},
"capability": 9,
"listType": "FIXED_CAPACITY"
}
}
}
]
}
}
}
]
}
aws iotfleetwise create-decoder-manifest --cli-input-json file://decoder-manifest.json
aws iotfleetwise update-decoder-manifest —identify fw-vision-system-decoder-manifest —standing ACTIVE
Step 2: Create a automobile
- Create a automobile utilizing the above mannequin manifest and decoder manifest. Ensure you use the identical identify because the provisioned AWS IoT Factor that you just created in your prerequisite steps.
aws iotfleetwise create-vehicle --vehicle-name FW-VSD-ROS2-<provisioned-identifier>-vehicle --model-manifest-arn <Your mannequin manifest ARN> --decoder-manifest-arn <Your decoder manifest ARN>
Step 3: Create campaigns
- Arrange the entry coverage to allow AWS IoT FleetWise to entry your S3 bucket by following the directions right here (see “bucket coverage for all campaigns”)
- Create an event-based marketing campaign that collects knowledge based mostly on a detected collision occasion, together with 5 seconds of pretrigger and 5 seconds of posttrigger knowledge.
{
"identify": "fw-vision-system-collectCollision",
"description": "Gather 10 seconds of knowledge from a subset of indicators if automobile detected a collision - 5 pretrigger seconds, 5 posttrigger seconds",
"signalCatalogArn": "<your sign catalog>",
"targetArn": "<your goal>",
"signalsToCollect": [
{
"name": "Vehicle.Cameras.Front.Image",
"maxSampleCount": 1000,
"minimumSamplingIntervalMs": 10
},
{
"name": "Vehicle.Speed",
"maxSampleCount": 1000,
"minimumSamplingIntervalMs": 10
},
{
"name": "Vehicle.Acceleration",
"maxSampleCount": 1000,
"minimumSamplingIntervalMs": 10
},
{
"name": "Vehicle.Airbag.CollisionIntensity",
"maxSampleCount": 1000,
"minimumSamplingIntervalMs": 10
}
],
"postTriggerCollectionDuration": 5000,
"collectionScheme": {
"conditionBasedCollectionScheme": {
"conditionLanguageVersion": 1,
"expression": "$variable.`Automobile.Airbag.CollisionIntensity` > 1",
"minimumTriggerIntervalMs": 10000,
"triggerMode": "ALWAYS"
}
},
"dataDestinationConfigs": [
{
"s3Config": {
"bucketArn": "<your S3 bucket>",
"dataFormat": "PARQUET",
"storageCompressionFormat": "NONE",
"prefix": "collisionData"
}
}
]
}
aws iotfleetwise create-campaign --cli-input-json file://marketing campaign.json
- Create one other marketing campaign to gather 10 seconds of knowledge as a timed occasion.
{
"identify": "fw-vision-system-collectTimed",
"description": "Gather 10 seconds of knowledge from a subset of indicators",
"signalCatalogArn": "<Your sign catalog ARN>",
"targetArn": "<Your automobile ARN>",
"signalsToCollect": [
{
"name": "Vehicle.Cameras.Front.Image",
"maxSampleCount": 500,
"minimumSamplingIntervalMs": 10
},
{
"name": "Vehicle.Speed",
"maxSampleCount": 500,
"minimumSamplingIntervalMs": 10
},
{
"name": "Vehicle.Acceleration",
"maxSampleCount": 500,
"minimumSamplingIntervalMs": 10
},
{
"name": "Vehicle.Airbag.CollisionIntensity",
"maxSampleCount": 500,
"minimumSamplingIntervalMs": 10
}
],
"postTriggerCollectionDuration": 5000,
"collectionScheme": {
"timeBasedCollectionScheme": {
"periodMs": 10000
}
},
"dataDestinationConfigs": [
{
"s3Config": {
"bucketArn": "<Your S3 bucket>",
"dataFormat": "PARQUET",
"storageCompressionFormat": "NONE",
"prefix": "timeData"
}
}
]
}
aws iotfleetwise create-campaign --cli-input-json file://campaign-timed.json
- Ensure to approve all of your campaigns!
aws iotfleetwise update-campaign --name fw-rich-sensor-collectCollision --action APPROVE
aws iotfleetwise update-campaign --name fw-rich-sensor-collectTimed --action APPROVE
Step 4: View your knowledge in Amazon S3
AWS IoT FleetWise takes as much as quarter-hour to load your knowledge into Amazon S3. You will notice three units of recordsdata in your S3 bucket: 1/Uncooked knowledge or iON recordsdata that accommodates the binary blobs of knowledge that AWS IoT FleetWise decodes — these recordsdata can be utilized to deep dive errors; 2/Unstructured knowledge recordsdata that include binaries for pictures/video collected; 3/Processed knowledge (i.e., structured knowledge) recordsdata that include decoded metadata, object lists and telemetry knowledge, with hyperlinks to corresponding unstructured knowledge recordsdata.
To do extra, you may:
- Make the most of marketing campaign ID, occasion ID, and automobile ID to ‘be a part of’ your knowledge utilizing AWS Glue.
- Catalog your knowledge utilizing an AWS Glue Crawler to make it searchable.
Discover your knowledge utilizing ad-hoc queries in Amazon Athena to establish scenes of curiosity.
Information from scenes of curiosity can then be handed to downstream instruments for visualization, labeling, and re-simulation to develop the subsequent model of fashions and automobile software program. For instance, third occasion software program similar to Foxglove Studio can be utilized to visualise what occurred earlier than and after the collision utilizing the pictures saved in Amazon S3; Amazon Rekognition could be utilized to robotically uncover and label further objects current on the time of collision; Amazon SageMaker Groundtruth can be utilized for annotation and human-in-the-loop workflows to enhance the accuracy and relevance of the collision avoidance software program. In a future weblog, we plan to discover choices for this a part of the workflow.
Conclusion
On this publish, we showcased how AWS IoT FleetWise imaginative and prescient system knowledge lets you simply accumulate and arrange knowledge from superior automobile sensor techniques to assemble a holistic view of occasions and acquire insights. The brand new characteristic expands the scope of data-driven use circumstances for automotive prospects. We then used a pattern ADAS growth use case to stroll by way of the method of making condition-based campaigns can assist enhance an ADAS system, and learn how to entry that knowledge in Amazon S3.
To study extra, go to the AWS IoT FleetWise web site. We stay up for your suggestions and questions.
Concerning the Authors
Akshay Tandon is a Principal Product Supervisor at Amazon Internet Companies with the AWS IoT FleetWise group. He’s enthusiastic about the whole lot automotive and product. He enjoys listening to prospects and envisioning modern services that assist fulfill their wants. At Amazon, Akshay has led product initiatives within the AI/ML house with Alexa and the fleet administration house with Amazon Transportation Companies. He has greater than 10 years of product administration expertise.
Matt Pollock is a Senior Answer Architect at Amazon Internet Companies at present working with automotive OEMs and suppliers. Based mostly in Austin, Texas, he has labored with prospects on the interface of digital and bodily techniques throughout a various vary of industries since 2005. When not constructing scalable options to difficult technical issues, he enjoys telling horrible jokes to his daughter.