If you look at the automobile industry it is evident that
self-driving technology is cruising into India. But are we on-board?
Self-driving vehicles have been a topic of contention in the
world of technology for quite some time now. While the general sentiment in the
automotive industry is that autonomous cars are ready to roll into our
driveways any moment now, in all their driverless glory, if reports are to be
believed then truly autonomous vehicles are quite far away. Given that most
people expect the industry to take a few decades to mature, acting now could
get you in on the ground floor of an industry that’s sure to skyrocket. After
all, people like Elon Musk know a lot more about it than us. But where do you
start?
How it comes together
Autonomous vehicles are fairly complicated systems, especially
from an academic point of view, with a multitude of areas working together.
Even in the industry, the main focus is on developing a problem statement that
encompasses all these areas effectively – as in, the biggest question is, how
to make all these systems work together effectively and seamlessly to make a
flawless autonomous driving system.
For instance, the
broadest field that covers most of the areas involved in autonomous driving is mobile robotics. However, there’s
also a huge role for mathematics. According to Ankur Pandey, Sr. Data
Scientist, HERE Solutions India Pvt. Ltd., “Deep Learning (and Machine Learning
in general), Computer Vision/ Image Processing, Sensors, Robotics, IoT,
Embedded systems, are the hot skill sets for breaking into self-driving
car/vehicle industry. One must (also) have excellent program chops
(specifically Python, and C++).”
Even in their initial stages, perfectly autonomous vehicles can
transform what it means to drive
Anyone working with
autonomous vehicles has to deal with three different
modules – a module to accept sensory input, another to calculate the correct
outputs, which are sent to a third module – that acts on it to provide accurate
guidance to the vehicle. The sensory input module would involve dealing
with mechanical, visual, and digital sensors that locate the vehicle, study the
surrounding terrain and objects, and pass this information on. The processing
module then leverages neural networks to process this information to decide
courses of action – accelerating, braking, or turning. The third module uses these decisions
as an input, and convert them into mechanical actions upon the physical body of
the car to translate them into the actual driving of the car.
Skills needed
According to Ishan Gupta, MD-India,
Udacity, the skills that the industry is looking for are:
- Python and C++
- TensorFlow
- Keras
- OpenCV
- NumPy
- Scikit-leam
- Amazon Web Services
- Anaconda
- make.Udacity’s Self Driving Car Nanodegree is a comprehensive course to prepare yourself
for a career in this industry. Apart from this, familiarity with neural networks, image processing, sensory calibration, object detection and virtual filters, prediction and measurement loops, open and closed- loop controllers, data calibration and fusion, as well as linear quadratic regulators are also skills that make one a better candidate.Robot OS (ROS)A good place to start, according to Rajesh Kumar, VP, Strategic initiatives at Tata Elxsi, is the Robot Operating System (ROS). Technically, it is a collection of frameworks for the development of robot software, but it also provides services designed for a heterogeneous computer cluster such as hardware abstraction, low-level device control, message-passing between processes, and package management, making it almost a full-fledged operating system.ROS: The Linux for RoboticsThere are quite a few milestones that ROS has achieved in the autonomous vehicle industry. For instance, Baidu’s open sourced autonomous vehicle platform, Apollo, runs entirely on ROS, and BMW, Bosch, and the recent Delphi-acquired NuTonomy also use it.Advantages of using ROS include:
- A lot of code is available
Algorithms with all the capabilities required for the navigation of wheeled robots have already been created in ROS and self-driving cars can just make use of them. - Visualization tools present
A suite of graphical tools for easy recording and visualization of sensor data to represent the status of the vehicle are already available in ROS. - It is relatively simple
You can start right now with a simple robot equipped with a pair of wheels, a camera, a laser scanner, and the ROS navigation stack, and you will be learning in a few hours tops.You can download the ROS framework at ros.org, learn basic and advanced concepts at http://dgit.in/RIAROS. Also, check out Turtlesim (http://dgit.in/TurtleSim) which is a tool made for teaching ROS.Article Source: geek.digit.in - Arnab Mukherjee | arnab@digit.in