Detekce objektů na mikrokontroleru i.MX RT
Strojové učení nachází uplatnění mimo jiné i v průmyslových aplikacích, továrnách a montovnách. Jedním z možných způsobů využití je detekce objektů a jejich následná manipulace robotickou paží. Z mnoha důvodů, včetně lepšího zabezpečení a menší latence, vznikají technologie umožňující využití neuronových sítí tzv. „at the edge“, tedy lokálně, na méně výkonných zařízeních využívajících například mikrokontrolery, bez potřeby využití více výkonných strojů v Cloudu. Vytvořte aplikaci využívající neuronovou síť na i.MX RT, která bude schopná detekovat na jakých souřadnicích se v prostoru snímaném kamerou nachází předmět uživatelem vybrané barvy a tvaru. Dále vytvořte jednoduchou aplikaci s GUI na PC, která nabídne uživateli seznam dostupných tvarů a barev, danou volbu sdělí aplikaci na i.MX RT a následně zobrazí výsledek detekce.
Nastudovat základy neuronových sítí. Popsat, jak se dají využít neuronové sítě na vestavěných zařízeních, jaká omezení pro tyto technologie přináší mikrokontrolery a jaké výhody a nevýhody tento přístup přináší.
Identifikovat vhodné nástroje a knihovny pro vytvoření GUI a natrénování modelu pro detekci objektů a jeho následné spuštění na mikrokontroleru i.MX RT.
Navrhnout a implementovat aplikaci popsanou v zadání práce.
Zhodnotit finální aplikaci, diskutovat možnosti budoucího vývoje.
_____________________________
Object Detection on the i.MX RT Microcontroller
Machine learning is being applied in various areas, including industrial applications, factories and assembly plants. One such use-case is utilizing object detection for locating objects and their subsequent manipulation by a robotic arm. For several reasons, like security and latency concerns, various technologies enabling the computation of neural networks at the edge are being developed. Such approach provides the means to run machine learning models locally on less powerful devices built, for example, with microcontrollers, instead of needing to do so on a powerful machine in the Cloud. Create an application using a neural network on the i.MX RT microcontroller. This application should be able to detect the coordinates of objects of a user-specified color and shape within an area seen through a camera. Additionally, create a simple GUI application running on a PC, which will give a user the option to choose from a list of colors and shapes. This PC application should then relay the choice to the i.MX RT and finally display the detection results.
The goals of the thesis:
Study the basics of neural networks. Describe how neural networks can be run on embedded devices. Find out the limitations that result from using them on microcontrollers and what the pros and cons are of such an approach.
Identify viable tools and libraries that can be used to create the GUI, train the model to detect the objects and run the model on the i.MX RT microcontroller.
Design and implement the application described above.
Evaluate the final application and propose future development.
Language:
CZ
Leader:
David Piskula
View full article