Introduction
In this article, we will learn about the basic approach to developing an AI edge system and also about the Intel DevCloud.
Basic Approach to Developing an AI Edge System
Analyze
You (as the IoT engineer) collaborate with the end-user at this point in order to consider what they want to do and to involve all specifications.
Design
The overall design of the device is developed during this process, including the multiple modules and the movement of data from one to the next. You would certainly also as an engineer have a strong theory as to the most fitting hardware approach.
Develop
You will create a sample framework via the OpenVINO Toolkit during this process. The AI models that you feel may be suitable to execute the inference are chosen. You also determine which forms of hardware are possible applicants.
Test
You will then be testing the Intel DevCloud application.
Deploy
The last move is to enforce the client's framework. Despite all the configuration and experiments you have made, progress depending on the actual use would still be necessary.
Let me give you an example, to help you understand what and how the lifecycle is implemented. Let us consider making a queuing system where the aim is to alert if the number of people in a queue exceeds a certain limit.
Problem Statement
Provided that Walmart wants this device to be configured for 100 outlets, all the information should be transmitted to the central server in real-time. Walmart is not able to pay over $100 for the machine development per outlet. There is an i7 CPU on every outlet. The average daily number of customers is 100 on weekdays and 150 on weekends. They have an avenue of 10 cash counters which can accommodate up to 10 people at a time. Yet they like the queue at a limit of 4 people at a time due to the corona virus. They also mounted PTZ cameras. Therefore, we must build a device that will warn people if the number reaches 4.
Solution
To start we analyze the whole application, we understand the requirement i.e, we finalize the following things
- Maximum number of people that can be in a queue
- Number of people that are on average in the queue
- The path a person can follow to reach the queue
- The path a person follows to get past the queue
- Possible locations where we can fix the cameras or the location at which cameras are already there
- Specification of the current hardware like processor, camera, etc
- Whether the customer is ready to invest in buying new hardware
As per SDLC, defining the project cost is done in the analysis phase only. So I am not adding that here as this is mainly done by the management or salespeople. Generally, IoT engineers do not indulge in this.
Now comes the design phase, where we will draft our plan in order to start with development. In this case, one of several designed plans could be that we start planning and understanding the camera locations with respect to the path that the person will follow to reach the counter.
- As PTZ cameras come in 2 specifications; i.e. 720fps and 1080 fps, so we will design our system for 1080 fps. 1080 fps means that we will get 0.9 mill seconds to process each frame.
- The clock speed of i7 is 3.5 GHz on average, which means it can process a frame in less than 0.1 milliseconds, hence the client need not spend on hardware.
- Each outlet will have its own server which will relay all the data to the central server.
- We will relay data after each 15 min, so to reduce power overhead, so we will be needing some local memory at each outlet. Hence a hard disk can be used.
So we are done with hardware. That is a major part of designing which is done. Now the only work is to design the DFD, flow chart, etc.
After that, we start with the development phase, where the developers set up their system and create a replica of the deployment location so that once the application is done and running, alpha and penetration testing can be done.
Once the alpha and penetration testing is done we test other systems and check how much load a system can take. This whole process is the responsibility of a tester, hence I am not going so deep into this if you want you can ask you system tester or go online and learn about it.
Once all system tests and checks are done, the system is ready to be deployed, so you send the deployment team consisting of a representative from your team, and the technician who will deploy the application.
Now as per the SDLC, the next stage is maintenance, but here in an AI pipeline we generally eliminate that and replace it with the analysis phase, as normally a client would request us to add some functionality which would need the starting of a new AI pipeline.
Intel DevCloud
It is a cloud environment that allows you, on different hardware devices, to create, prototype, and monitor the performance of your application It enables you to systematically build and analyze AI workloads for Intel hardware machine vision.

Join the conversation! Your thoughts help the community grow.