SOLVED

Vision DevKit sending to IoT Hub, now how do I get Images?

Copper Contributor

I have successfully have setup the Vision DevKit, in which is connected and currently sending data (assuming images of camera feed) to IoT Hub, yay!  Here is what I'm looking to do next:


Label images from feed in Azure (which is necessary to create a custom ML Vision Model)

 

I'm new to IoT Hub, so i need to extract this data feed into a way I can access. I setup Message Routing to Storage for now.  But when I look at Storage/Container files they are .avro.  

 

I'm looking for ideas on how to access this feed and organize these images without have to go through using memory card on the Camera.  I'd like to manage this whole process in the Azure Cloud.  I'm thinking a jupyter notebook in python or any other Azure projects that can help?  But first, i would need how to take those .avro (assuming messages) and convert them to something meaningful.  Or perhaps the messages to the Storage isn't the correct path.

 

Thank you

 

1 Reply
best response confirmed by kartben (Microsoft)
Solution

Hi @JKruat,

Sending images themselves as telemetry to IoT Hub might not be the most efficient and cost effective (depending on the size and frequency of the images). You might want to consider using IoT Hub connection to send telemetry such as alerts and other sensors data as well a manage your IoT Edge device and have the images synced up to a blob storage leveraging the Edge Storage module https://docs.microsoft.com/en-us/azure/iot-edge/how-to-store-data-blob

The Edge blob module will allow you to delete local images once they are uploaded to the Cloud so this way you don't lose data, you can support offline scenarios and you can manage your device storage.

Uploading to blob storage directly from the device also allows you not to have to extract the image from the body of the IoT Hub message (like it is the case if you use the IoT Hub telemetry and routing path).

1 best response

Accepted Solutions
best response confirmed by kartben (Microsoft)
Solution

Hi @JKruat,

Sending images themselves as telemetry to IoT Hub might not be the most efficient and cost effective (depending on the size and frequency of the images). You might want to consider using IoT Hub connection to send telemetry such as alerts and other sensors data as well a manage your IoT Edge device and have the images synced up to a blob storage leveraging the Edge Storage module https://docs.microsoft.com/en-us/azure/iot-edge/how-to-store-data-blob

The Edge blob module will allow you to delete local images once they are uploaded to the Cloud so this way you don't lose data, you can support offline scenarios and you can manage your device storage.

Uploading to blob storage directly from the device also allows you not to have to extract the image from the body of the IoT Hub message (like it is the case if you use the IoT Hub telemetry and routing path).

View solution in original post