Hi all,
I want to be able to write object detection/Machine vision softwares on raspberry/Jetson like devices. Now these are low powered but decently capable devices.
Im more inclined towards C++ as language of choice as even a couple more fps really matters on such devices.
The problem is that there isnt any resource on the same for beginners like me.
Essentially what Im looking for is Machine Learning in C++ on cortex A72/57 etc.
Can anyone help me with some books/courses or how to build upon this sequentially on my own ?
rsingh Glad to see your interest in Arm products. You can start exploring Arm Compute Library which is a collection of low-level machine learning functions optimized for Cortex-A CPU and Mali GPU architectures.(https://github.com/ARM-software/ComputeLibrary) natively built on C++. If you want to use C++ natively on Raspberry Pi then you can start reading the blog - "Building natively on Raspberry Pi" - community.arm.com/.../cartoonifying-images-on-raspberry-pi-with-the-compute-library
Yes! There's a few more here. I would recommend starting with ArmNN and not the Compute Library:
There's an object detection demo here:
https://developer.arm.com/solutions/machine-learning-on-arm/developer-material/how-to-guides/object-recognition-with-arm-nn-and-raspberry-pi/object-detection-model-structure
Right now it is in the middle of being updated do to the apt-packaging being released, documented here:
https://github.com/ARM-software/armnn
Let me know if that helps,
Karl
Hi Karl,
Could you please explain why you said "start with ArmNN and not the Compute Library". Is their any prerequisite to CL ? Or ArmNN is the foundation ?
You can use either ArmNN or directly Arm Compute Library (ACL). ArmNN runs on top of ACL, which means ACL provides more control, while ArmNN provides you an abstraction layer on top of it, which might be easier to use.
See the figures here: developer.arm.com/.../arm-nn
ACL (and ultimately ArmNN) uses either NEON or OpenCL depending on the computation unit you want to target - CPU/GPU.
If you want to run inference on the GPU with ArmNN/ACL your platform should support OpenCL, but there is no prerequisite for you knowing OpenCL.