Maxvell Arulraj
Senior R&D Software Engineer

Passionate by camera based algorithms development

About Myself


Welcome on my profile!

My name is Maxvell, I'm a software engineer passionate about camera based algorithms development. On this website, I introduce my projects and my work experience. At the end, you will find a contact form, feel free to write to me and share any spotlight news or events. I am always enjoying getting in touch with other researchers and engineers.

Experience


Picture

Profile not up-to-date

Coming soon... Feel free to write me!
☎ Contact Form
✉ maxvell.arulraj@gmail.com
Picture

Medical grade 3D positioning tracking system for robotic surgery

Think Surgical Society (Montreal, Canada & Bay Area, United States) - Team size: 10 pers. Company size: ∽190 pers.
Atracsys Society, acquired by Smith & Nephew (Lausanne, Switzerland) - Team size: 7 pers. Company size: ∽25 pers.

  • Main software contributor of a multi-views camera system development
  • Multi-threaded, multi-process, real-time 3D position tracking algorithm in C++
  • Time critical algorithms interfaced with FPGA logic fabrics
  • Multi-views camera calibration tools for tracking with sub-millimetric precision using non-linear numerical optimisation techniques
  • Co-author of a patented method that reduces cameras' readout delay without losing tracked scene features
  • Medical device software development classified IEC 62304 class C (highest standard)
  • Intellectual Property analysis in medical optical tracking systems for robotics

«I am currently working on the development of an innovative optical tracking system for robotic surgery. The array of cameras is capable of tracking objects’ 3D positions and communicating with robots fully autonomously. All the computations are handled on-board. Due to confidentiality reasons, I am not authorised to detail the system specifications.

From 2014 to 2018, I worked at Atracsys, a company recently acquired by Smith & Nephew. In the early stage of the project, as project manager and main software contributor, I actively worked on the first prototypes of cameras using development kits and contributed to its development into a medical grade product. All along the project, I contributed to the development of calibration tools in order to reach a sub-millimetric multi-view 3D position tracking. To improve the system's performance, I have co-authored a patented method that reduces cameras' readout delay without losing tracked scene features. Overall, I was involved with various stakeholders; physics researchers for the camera lens calibration, electronic engineers for platform based optimizations, mechanical designers concerning manufacturing constraints and medical regulatory delegates for clinical tests.

Since the end of 2018, I have continued to work on this project as consultant for Think Surgical. I have been working remotely from Zürich with Montreal and California based R&D engineers. I have contributed to the integration of the multi-view camera array within a behavior-tree based navigation software controlling the robotic system. I have also participated in the development of additional engineering debug tools that evaluate the guided-surgery robot performances.

This contribution to the development of an advanced robotic system in the medical field is, so far, the greatest professional experience I ever had. This managerial and coding experience on a challenging industrial project taught me to work with various collaborators and to design a time-critical embedded software with a deep understanding of the science of optical measurements.»
Since Nov. 2014
Picture

Cross-platform Augmented Reality SDK

Vidinoti Society (Fribourg, Switzerland) - Company size: 5 pers.

  • Real-time 2D object recognition & features tracking algorithms (used Oriented FAST and Rotated BRIEF features, SIFT keypoints detectors)
  • Integration of the core C++ recognition engine on iOS and Android
  • Plenoptic camera with AR proof-of-concept prototyping
  • Intellectual Property analysis in Augmented Reality technologies
  • Web application for content creation

«I contributed to the development of a cross-platform Augmented Reality SDK. The library allowed developers to embed AR functionality into their own iOS and Android applications. The SDK was able to recognize 2D targets in real-time and to overlay AR contents. Using a web-based interface, customers were able to create interactive AR content such as 3D animations, audio or videos in a few clicks.

Within a small team of three engineers, I worked on the development of the core recognition and tracking engines in C++. I created evaluation metrics and training tools for profiling and optimising the selection of invariant features. Based on research papers, I explored ideas to continuously reduce the recognition delay. I optimised the tracking of the 2D targets within critical illumination, wide angles and partial occultations. Each target image was first analysed offline to create a unique model of bag-of-words with invariant keypoints. The on-device recognition library was then run within an application for matching each camera frame with these pre-registered targets in real-time. When frame descriptors are matched with one target model, the computed homography is refined for estimating the orientation and pose of the target and the attached AR content was rendered on the top of the camera frame data.

This project was a challenging experience with a business-to-consumer product. I learned to work on an already existing and deployed product used by thousands of developers. It has been my first advanced coding experience on a sophisticated multi-platform software.»
Jan. 2013 - Oct. 2014
Picture

Android application with cloud-based face detection

Personal project - Team size: 2 pers.

  • Face tracking Android application for demonstration purpose

«Based on the knowledge I learned from my previous experience, a friend and I decided to create an application to detect faces on smartphones. The core engine was developed in C++, inspired from the OpenCV approach. Each camera frame was processed asynchronously to extract faces using preliminary windowing filtering and Viola-Jones classifiers. The application was working with the remote assistance of a RESTful web service.

This short experience taught me how hard funds raising for independent projects can be. We finally decided to stop the development and moved forward to other tech challenges. Even though I failed to successfully finalised that demonstration product, my motivation to work in this field remained unchanged. Since my wife was working in Switzerland, I decided to look for job opportunities there.»
Jun. 2012 - Dec. 2012
Picture

Real-time audience tracking on embedded camera

SelfAdvert Society (Nantes, France) - Company size: 3 pers.

  • Real-time face detection in C++ using Viola-Jones algorithm
  • AdaBoost Machine Learning boosted classifiers training
  • Background / foreground subtraction in real-time
  • Optimisation on embedded Blackfin DSP
  • Research-based fast-prototyping

«The project was to develop an embedded camera system for measuring the amount of time shoppers spent in front of advertisements. The main challenge was the integration of advanced mathematical algorithms on a low powered embedded DSP processor. With another engineer, we developed and oversaw the whole creation of this embedded camera system.

My main contributions in the project were the following: First, I integrated the Viola-Jones face detection algorithm based on research papers and OpenCV library implementation. Second, I used state of the art Computer Vision algorithms, such as SIFT, to analyse the scene. The real-time keypoints extraction has been optimised under tight computational costs for extracting foreground objects in real-time. The computation of Image Integrals and face detection classifiers has been significantly sped-up by embedding pre-computed information. Finally, I created specific training tools using AdaBoost machine learning algorithm and iteratively improved the detection rate by reducing the camera's sensitivity to noisy data and outliers. The product has been marketed and used in stores to study shoppers’ behavior near advertisements.

This professional experience taught me how to manage the development of an industrial product and to build platform-optimised algorithms starting from a mathematical concept.»
Jan. 2011 - May 2012
Picture

Strathclyde University Labs

Contribution to a 2D object recognition algorithm
Research assistant (Glasgow, Scotland)

  • Automated selective matching algorithm with SIFT keypoints detectors
  • Debugging tools to evaluate and improve keypoints selection for 2D object recognition

2010 (6 months)
Picture

University of Strathclyde

Computer Engineering
Glasgow, Scotland

  • Specialization in Image Processing, Computer Vision
  • Double Master program (final year)
  • Master of Engineering in Computer Science - Strathclyde University
  • Master of Engineering in Electronics & Computer Science - INSA de Rennes
  • Graduated with distinction

2009-2010
Picture

LiSSi University Labs

Contribution to a segmentation algorithm for medical imaging
Research assistant (Créteil, France)

  • Automated multi-criteria segmentation algorithm with non-linear numerical optimisation techniques (based on Particle Swarm Optimisation)

2009 (4 months)
Picture

National Institute of Applied Sciences

Electronics and Computer Engineering
Rennes, France

  • First year of Master Degree
  • Bachelor year
  • Started Double Master program with Strathclyde University (Scotland)
  • Awarded merit scholarship

2007-2009
Picture

Lafayette Preparatory Class CPGE

Specialization in Mathematics & Physics
Champagne-sur-Seine, France

  • Head of the class
  • Awarded merit scholarship

2006-2007

Technical Skills


Algorithms Development

Strong experience in designing complex algorithms.
«I have strong skills in coding mathematical algorithms handling real-time camera stream data. I am particularly good at working on projects with advanced analytical issues, involving various collaborators such as researchers or electronic engineers.»

C++

  • Complete design of complex multi-threaded, multi-process real-time algorithms
  • Experience with various embedded C++ compilers and platform optimizations
  • Strong skills in designing real-time algorithms interfaced with custom FPGA logic blocks (using interconnected architecture with interfaces and controllers such as Avalon, Ethernet, LVDS, SPI)
  • Main contributor of a medical software classified IEC 62304 Class C
  • Not yet familiar with last ISO standardized C++14 and above (ISO/IEC 14882:2014)
Computer Vision

  • Strong experience in fast-prototyping of vision algorithms based on research papers
  • Deep understanding of optics and multi-view camera calibration method for high precision 3D tracking
  • Creation of calibration station, test and characterization equipments for large field optical measurement (using coordinate measuring machine)
  • Frequent use of non-linear numerical optimisation techniques (camera calibration data fine-tuning based on bundle adjustment algorithm)
  • Experience with binary descriptors analysis (Oriented FAST and Rotated BRIEF features, SIFT keypoints detectors)
  • Experience with active-pixel sensor integration and readout optimisations, asynchronous frame data (from conventional cameras) interrupts management optimisations
  • Created troubleshoot and debug tools for frame data flow analysis with minimal footprint

Matlab / Octave Scripting

  • Contribution to the prototyping of optical models simulations (3D viewing FOV, accuracy evaluation)
  • Design of multi-view camera lenses calibration tools with non-linear numerical optimisation techniques (multi-criteria non-linear cost functions), estimates compared with Google Ceres Solver
  • Use of Matlab Image Processing and Computer Vision toolboxes

Scripting

  • Management of CI-tests tasks automation and release deployments
  • Creation of automated training tools for evaluating and improving Computer Vision algorithms
  • Frequent use of cross-platform build tools such as CMake, Linux container management toolkit Docker
  • Daily use of continuous development tools (revision control, system testing, bug tracking, code review) with Git, Jenkins, Bitbucket Server
  • Use of unit-testing frameworks such as Google Test, Check

Embedded Programming

Strong experience with firmware development for real-time processing on SoC platform.
«I have worked on the integration and optimisation of sophisticated algorithms on various platforms. I am currently working on embedded ARM processors interfaced with FPGA fabrics, integrating a multi-process low latency algorithm. I am able to work under tight development milestones and improve iteratively the embedded system reliability and performance.»

Platforms

  • Altera SoC Cyclone V FPGA (dual-core HPS ARM A9 processor):
    • Linux, BSP and related toolchain for Intel SoC device
    • Collaborated with electronic engineers on VHDL design, programming and debugging with Intel Quartus, Q-Sys
  • Analog Devices Blackfin DSP
  • iOS/Android device
IDEs
  • ARM Development Studio
  • Intel Quartus Prime
  • Analog Devices Visual DSP++
  • Texas Instruments Code Composer Studio
  • XCode
  • Android Studio
  • Eclipse
  • Arduino Software
Frameworks
  • OpenCV (Open Source Computer Vision Library)
  • Qt (UI framework)
  • Google Test, Check (unit-testing frameworks)
  • Boost libraries
  • ROS framework

Web Development

Contribution to integrating basic functionalities. (beginner level)
«By assisting my colleagues to integrate new front-end features or fixing urgent back-end matters during release deployments, I acquired a basic knowledge of website maintenance. I do not have advanced experience in website and server administration but I can punctually assist my collaborators for urgent needs.»

Front end

  • Web application
Back end
  • RESTful web service
  • Database administration, MySQL
Languages
  • JavaScript
  • HTML/CSS
  • Jade markup
Frameworks
  • Cappuccino (an open source web application development framework)
  • Symfony (PHP web application framework with a set of reusable PHP components/libraries)

Soft Skills


  • Project lead and planning
  • Ability to independently carry out a project
  • Ease of communication and cooperation in a multidisciplinary environment
  • Comfortable with people with various background and culture
  • Conciseness and precision in writing and reviewing technical documents
  • Complex problem solving
  • Creative thinking

Patents / Papers


Patent figure 6 Patent figure 5

Abstract: A high-speed optical tracking with compression and CMOS windowing for tracking applications that require high-speed and low latency when delivering objects pose (orientation and position) data.

Marti, Gaëtan, Maurice Hälg, and Bernard Maxvell Arulraj. “High-speed optical tracking with compression and / or cmos windowing” International Patent Application No. PCT/IB20 18/050899.


Patent figure 8 Patent figure 5

Abstract: A light field processing method for processing data corresponding to a light field, comprising: a plenoptic camera initial data representing a light field; converting said initial data into converted data in a camera independent format; processing the converted data so as to generate processed data representing a different light field.

Rime, Laurent, Bernard Maxvell Arulraj, and Keishi Nishida. “Light field processing method” International Patent Application No. PCT/EP20 13/074520.


Publication first page

Abstract: This paper deals with using the MultiObjective Particle Swarm Optimisation (MOPSO) metaheuristic for optimally thresholding medical images. Two criteria are optimised: the interclass variance and the Shannon entropy. The process generates a Pareto front with various segmentations, leaving the final choice to the user.

Arulraj, Maxvell, Amir Nakib, Yann Cooren, and Patrick Siarry; 2014.“Multicriteria Image Thresholding Based on Multiobjective Particle Swarm Optimization”. Applied Mathematical Sciences 8(3), pp. 131-137.

Fields of Interest


Maxvell Arulraj@maxvell

My interests:
#Project Management Working on applied research product development involving joint hardware / software design, project management and communication with multidisciplinary stakeholders.
#Embedded System Building low-cost embedded camera hardware with processor-adapted real-time algorithms.
#Camera Lens Calibration Developing manufacturing tools to calibrate camera lenses for reconstructing scenes with sub-millimetric accuracy.
#Event-Based Camera Camera Developing bio-inspired vision algorithms adapted to asynchronous events stream.
#Machine Learning Developing training tools, databases and simulators aiming at iteratively improving feature matching performances.
#Multi-Sensor Fusion Designing time-critical agnostic algorithms processing inputs from different systems and sensors such as conventional cameras, depth sensors or IMUs.

11:11 AM
51 retweets

Contact Details


  • French citizenship
  • Swiss C permit, permanent resident
  • Current location: Zürich, Switzerland
Languages
  • English - Full professional proficiency
  • French - Native
  • Tamil - Native

Feel free to write to me and share any spotlight news or events! I will be glad answering to you.

Contact Form