profile photo

Hardik Shah

News  |  Experience  |  Projects  |  Contact

I am a Computer Science MSc student at ETH Zurich, planning to major in Machine Intelligence, with a focus on Computer Vision and Mobile Robotics. I did my bachelors in Computer Science (w/ minor in Data Science) from BITS Pilani, Goa.

I wish to explore robotic visual perception and its applications in autonomous driving, intelligent reasoning, and scene understanding. After exploring a breadth of vision-based research problem statements from dense reconstruction to depth estimation and optical character recognition, I find myself at the minima of the Dunning Kruger curve. I am particularly curious about classical computer vision techniques and visual odometry pipelines, and how they can be leveraged to make end-to-end deep learning pipelines tractable and resource constrained.

I finished my undergraduate thesis as a Student Researcher at the Machine Learning and Optimization Team, Google Research India. I was supervised by Dr. Prateek Jain and my work revolved around reducing the on-device latency of large vision models for faster on-device inference. I spent my '22 summer in Karlsruhe, Germany at the Robot Vision Lab, HKA where I worked on dense 3D Reconstruction using an Intel RealSense Camera with Dr. Niclas Zeller.

I was involved in various student projects at BITS Pilani, Goa including Project Kratos where I led the Autonomous Subsystem of a Mars Rover prototype, and Society for AI and Deep Learning.

I like to believe I have a life outside of research and code :p. I like to read although I wish I had more time to indulge in books. I love sports - anything. I have finished two half marathons, and a 25k trail run at Sethan Dome, India. You might find me cycling to the university often. I play tennis, and Rafa remains the GOAT for me even if Djokovic goes on to win 30 gs. And, I am up for a chess 10+0 or puzzle battle mostly all the time.

Feel free to check out my CV and drop me an e-mail if you want to chat with me!

 ~  Email  |  CV  |  Github  |  LinkedIn  ~ 


Mar '22  

Project Kratos, for the first time, has qualified for the finals of the University Rover Challenge, 2022! We were one of the top 36 teams out of a record 99 participants across the world. Check out the Team Announcement video here.

Mar '22  

Project Kratos released the 2022 SAR for the University Rover Challenge. Watch it here.

Jan '22  

I will be working on incorporating Continual Learning in Action Recognition at APPCAIR in a colab with Intel Labs.

Dec '21  

Selected for the MITACS Globalink Research Internship for summer 2021!

Nov '21  

Project Kratos released the 2022 SDDR for the International Rover Challenge. Watch it here.

Oct '21  

I will be one of the instructors for the CTE course "Introduction to Machine Learning" by SAiDL. Check out the handout to know more!

Sept '21  

Completed research internship at CEERI under Prof. Sandeep Joshi and Prof. Madan Lakshmanan.

Aug '21  

I will be a Teaching Assistant for CS F222 : Discrete Structures in Computer Science at BITS Pilani, Goa.

July '21  

I will be working on Depth Estimation using RGB guidance under Prof. Sravan Danda.

June '21  

I will be an Instructor for the Autonomous Induction course through the Quark Summer Technical Program. Check out the course materials here.

June '21  

Completed a research project under Prof. Rakesh Warier on wheeled robot simulations.

Apr '21

Appointed as the Autonomous Subsystem Lead at Project Kratos. I will be leading a team of 14 members, with an aim to make the rover autonomous!

Student Researcher | Google Research, India
Aug '22 - Present

Machine Learning Optimization for object detection on low-end smartphones. Improved parameter efficiency for OCR tasks in Google products like Lens. Additionally reduced on-device latency of MobileNet architectures for QR-code detection with GooglePay team.

DAAD WISE Intern | Karlsruhe University of Applied Sciences, Germany
May '22 - Aug '22

Designed an end to end pipeline for multi-view stereo dense 3D reconstruction from a handheld stereo-camera(Intel RealSense) that outputs stable dense pointclouds. Integration of classical visual SLAM algorithms with U-Net adapted deep learning architectures for dense depth prediction.

Researcher | APPCAIR & Intel Labs
May '22 - Aug '22

Demonstrated use of ensemble learning for the task of activity recognition/video classifi- cation on the Something-Something-v2 dataset. Weak learners were typically used for feature extraction. Explored various methods for combination of features, ultimately used for downstream classification

Machine Learning Research Intern | CEERI Pilani
May '21 - Sept '21

Worked under under the supervision of Prof. Sandeep Joshi and Prof. Madan Lakshmanan. on classification of a person as fatigued or non-fatigued based on PPG signals of a human subject.


Depth Estimation and Sparse Depth Completion using RGB guidance

Under Prof. Sravan Danda and Prof. Aditya Challa.
Code: FastDepth Implementation

Devising Statistical Tests to validate hypotheses regarding depth data in indoor scenes using the NYU_v2 Depth dataset and in outdoor scenes using the KITTI dataset. Designing CNN based architectures and supervised learning based approaches for real time depth map generation. Implemented an encoder-decoder model FastDepth in pytorch. Working with Resnet, U-Net and MobileNet for encoding layers. Using mathematical morphology techniques for parameter reduction.



Project Kratos: A Mars Rover

Autonomous Subsystem Lead
Website: Project Kratos
Kratos Code Base

Development of a mars rover as part of the University Rover Challenge(URC). Team lead of the Autonomous Subsystem, responsible for autonomous traversal. Simulated autonomous 2D path planning for 3D bots with ROS using A*, RRT*, Dijkstra’s; Testing on Unity Game Engine and Gazebo. Implemented YOLOv3, Mask RCNN algorithms, transfer learning for arrow detection and tested it on the real world using a robot to detect AR Tags and Arrows. Achieved ROS integration using darknet_ROS.

Subject State Classification System using PPG signals

Under Prof. Sandeep Joshi and Prof. Madan Lakshmanan

Worked on classification of the state of a person into different categories like alert, awake, fatigued, sedentary using data from physiological signals (PPG). Conducted data preprocessing, benchmarking of classification algorithms, along with various feature extraction strategies and regularisation techniques. Achieved state-of-the-art accuracy of 86% with NN-based implementation.

Unity ROS Integration for simulation of differential drive robots

Under Prof. Rakesh Warier.
Code: [SLAM], [UnityROS], [LiDAR Simulation].

Designed a simulator for robot interaction in complex environments using Unity Game Engine and integrated with ROS. Benchmarked the performance of Unity and baseline simulator (Gazebo) in terms of accuracy, precision and physics. Set up SLAM(Simultaneous Localization and Mapping) and visualization of obstacles from Unity in RViZ. Implemented Dijkstra’s algorithm on the map for autonomous traversal of the bot.

Team Hygieia: Artpark Robotics Challenge

Competition Website

Development of janitor bot, selected for stage 2: among top 28 teams out of 200+.


This template is a modification to Jon Barron's website and a fork of Rishab Khincha's website. Find the source code to my website here.