An introduction to open source libraries for everyone in Computer vision. Deep learning has a good research community and a market which can generate resources for a better life for everyone.I started my journey in deep learning an year ago, In this 3 part series I outline few of the detail in Vision, a 6 months younger me would appreciate.
with in Computer vision.
Before we start with any DL models, Open-CV a opensource library by Intel is a basic library anyone working in vision should be familiar with. It is like numpy for images. PIL can also be used for minimal overhead.
A primary thing to consider is if the image processing is done on-site (EDGE) or can it be done off-site (CLOUD). This will help in deciding the hardware required. Intel has CPU,FPGA architecture that can be deployed on-site.NVIDIA has GPU which can be used in cloud
Intel provides solutions to the industry by training models and makes them public. These models can be run with the use of their Open VINO toolkit. This toolkit is well optimized to run on their hardware, specifically 6th gen and higher. We can run our own models on open vino by converting our model into ONNX model and then use this to create the binary file that Open Vino can run. The converter is also provided.
Similar to Open VINO ,NVIDIA has their own software stack which facilitates the use on theirs hardware. The main sets to use this are to convert out model using TensorRT. This library helps in model quantization, pruning and layer fusion. These are the techniques the help in improving the throughput of our models
As you might be familiar with TensorFlow a deep learning library open sourced and maintained by google back in 2016. It has good Object Detection API. This used to be supported only for TensorFlow 1.15 but on 11/07/2020 support for TF 2.* was announced with models like efficientDet(D0-D7) and may more. I’ll talk about models in the next part of this series .
Detectron2 Facebook AI Research’s next generation software system that implements object detection algorithms.It is implemented in PyTorch and training it is surprisingly fast.This library has the famous Retina-net In the next part we will start to train a model from keras on a simple fire detection data-set.