Khanh Ha, Developer in Hanoi, Vietnam
Khanh is available for hire
Hire Khanh

Khanh Ha

Verified Expert  in Engineering

Software Engineer and Developer

Location
Hanoi, Vietnam
Toptal Member Since
January 7, 2020

Khanh Ha is a software engineer veteran with a track record of industry-level projects in the fields of computer vision, deep learning, machine learning, 3D geometry, and computer graphics technologies. He also specializes in digital human technologies, from 3D avatar estimation to motion capture.

Portfolio

MoveAI
C++, Python, JavaScript, Blender Scripting API, Qt, PyTorch, NVIDIA TensorRT...
The Ohzone, Inc.
Blender, C++, OpenCV, PyTorch, Deep Learning, Python, Computer Vision
Computer Vision Lab, Bauhaus University
OpenCL, OpenCV, Keras, PyTorch, Deep Learning, Python, C++, Computer Vision

Experience

Availability

Part-time

Preferred Environment

Linux, Windows

The most amazing...

...project I've done was a real-time motion capture system that can run at 60 frames per second (FPS) with multiple GigE cameras.

Work Experience

Computer Vision Consultant

2019 - 2023
MoveAI
  • Developed a real-time motion capture system that can support more than 10 cameras and stream data to Unity and Unreal Engine at 60 FPS.
  • Pushed AI models beyond the normal boundaries to achieve precise 2D human key points from RGB human images under challenging edge cases such as markerless, strong occlusion, and low resolution.
  • Created kinematic-based human motion tracking solutions for reconstructions of high-quality motions of multiple humans under close interaction and complex movement contexts.
  • Developed performance-tracking solutions for sports that can track up to 10 players with an accuracy above 90%.
Technologies: C++, Python, JavaScript, Blender Scripting API, Qt, PyTorch, NVIDIA TensorRT, Deep Learning, QML, OpenCV, Computer Vision, Unreal Engine 4

Senior Computer Vision Engineer

2017 - 2019
The Ohzone, Inc.
  • Built a robust deep learning model for image-based 3D human reconstruction that can tackle various real cases and achieve more accurate results than competitors.
  • Developed image processing for a state-of-the-art 3D clothes reconstruction project that can reconstruct high-detail 3D clothes models.
  • Created mesh processing algorithms to improve the quality of reconstructed meshes.
Technologies: Blender, C++, OpenCV, PyTorch, Deep Learning, Python, Computer Vision

Computer Vision Engineer

2018 - 2018
Computer Vision Lab, Bauhaus University
  • Built a crack segmentation deep learning model that outperforms state-of-the-art models in detecting edge cases that cause a high rate of false-positive in reality.
  • Developed a new optimized dense stereo matching pipeline to handle high-resolution stereo images.
  • Created a stereo reconstruction rig from scratch that can construct a stereo real-time depth map at 60 FPS.
Technologies: OpenCL, OpenCV, Keras, PyTorch, Deep Learning, Python, C++, Computer Vision

Senior Mesh and Graphics Developer

2014 - 2016
Nyomo
  • Built an OpenGL-based Graphics Engine for the 3D printer software Nyomo that improved customer experience through realistic mesh visualization methods.
  • Developed mesh processing methods such as re-meshing, smoothing, and decimation that helped customers achieve better mesh topology without sacrificing the mesh shape.
  • Created digital sculpting features for 3D printer software to give customers more flexibility in modifying their 3D meshes.
Technologies: Computer Graphics, OpenGL, Qt, C++, WebGL

Back-end Developer

2012 - 2013
Admicro
  • Developed a logging back-end server based on C++ and Lua for an online advertising system that serves around 50K of requests per second and helps to integrate new business features seamlessly without downtime.
  • Implemented business features based on Lua for an online advertisement system.
  • Maintained and optimized back-end services for an online advertisement system.
Technologies: SQL, Redis, Back-end, Boost, C++

Real-time Motion Capture System

https://www.youtube.com/watch?v=E7HkaKMLDNU&list=PLkLcpRjubtMcwnF_R7rO1u5JFHsOkDP1R
A human motion capture system that can run in real-time at 60 frames per second (FPS) with more than eight GigE cameras. The system can run distributed mode on multiple PCs to support more cameras at high FPS. The mocap data can also be previewed in-app or streamed to Unreal Engine for preview.

3D Printer Software

https://www.youtube.com/channel/UChObDqXzc4RD5gLZmF_Ey3w
During my time at Nyomo, a 3D printer software company based in Singapore, I developed the graphics module for the software that visualizes the 3D objects to the user to make it easier for users to distinguish the small details and curvature of 3D object surfaces. The graphics module that I wrote is also used to visualize other software functionalities. Above is a quick tour of the main features of the software.

Crack Segmentation

https://github.com/khanhha/crack_segmentation
In this project, I developed a deep learning model for crack segmentation for a bridge-investigation project using drones. One challenge I solved in this project is the high false-positive rate due to crack-similar patterns in real-world images collected by drones at different lighting, zoom-in, and perspectives. The trained model can detect cracks with high precision and avoid similar patterns like planking lines commonly found on bridge surfaces.

For more information about the project, please visit the website: https://khanhha.github.io/portfolio/crack-segmentation/.

Deep Learning Based 3D Human Avatar Estimation

https://github.com/khanhha/human_avatar_reconstruction
A system for estimating 3D human avatars from photos taken by a mobile phone. The output includes a ready-to-use mesh that can be used for virtual try-on. The model also has a 3D face with the customer's facial texture.

Skeleton Meshing

https://developer.blender.org/D1465
This is a feature that I built for Blender, the most popular 3D software. This feature is used by artists to create a rough mesh from a skeleton structure, which helps speeds up the modeling process and free artists from doing labor-intensive jobs.

Voxel Artwork Importer and Viewer

https://www.youtube.com/watch?v=0XX7ImySkNw&list=PLkLcpRjubtMfBnvqnge646SncXCaHWqBJ&index=1
I developed a Blender add-on for importing .vox files from the voxel art builder software to Blender with optimized meshes, scene hierarchy, and similar material.
I created baking tools for transforming the imported voxel files in Blender to a lightweight, portable format that can be run on web browsers with true lighting information. Also, I built a WebGL app to display voxel artwork for the user to explore .vox files.
2018 - 2020

Master's Degree in Computer Science

Bauhaus University Weimar - Weimar, Germany

2007 - 2012

Engineer's Degree in Computer Science

Hanoi University of Science and Technology - Hanoi, Vietnam

AUGUST 2018 - PRESENT

Nanodegree in Deep Learning

Udacity

Languages

C++, SQL, JavaScript, HTML, QML, Python

Libraries/APIs

PyTorch, TensorFlow, OpenCV, Scikit-learn, OpenGL, Keras, Node.js, Blender Scripting API, WebGL, Babylon.js, Three.js

Paradigms

Object-oriented Programming (OOP), Functional Programming, Distributed Computing, Parallel Computing, Model View Controller (MVC)

Other

Machine Learning, Unsupervised Learning, Clustering Algorithms, Clustering, Regression Modeling, 3D Pose Estimation, Probabilistic Graphical Models, Tracking Systems, Image Processing, Computer Graphics, Deep Learning, Back-end, NVIDIA TensorRT, Virtual Reality (VR), Computer Vision, Computer Science, Computational Geometry, 3D

Frameworks

Qt, Boost, OpenCL, Django, Unreal Engine 4, Unity

Platforms

Linux, Windows

Tools

Blender, MATLAB

Storage

Redis, MySQL, MongoDB

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring