Projects

The experienced projects in both industrial companies and academy.

Binary Neural Networks (BNNs).

Researched and developed binary neural networks for image classification. The papers are publised at CVPR 2020 [PDF] and WACV 2020 [PDF].
Languages/Technical usage: Python, Pytorch

Efficient Deep Learning for mobile devices.

Researched and developed facial recognition on devices (iPhone/Xavier) on C++ SDK for CMU face matching. Improved the speed of computation 8x in GPU and achieved 8-10 FPS on iPhone 7, 125 FPS, and 20 FPS on Xavier GP and CPU respectively.
Languages/Technical usage: C++, Python, Pytorch, Caffe, Objective-C, OpenCV

3D Face Pose Estimation on mobile devices.

Researched and developed 3D facial landmarking for facial alignment on devices (iPhone/Android/Jetson TX) for C++ SDK. To wrap 3D face, we used 3D Thin Plate Spline (TPS) algorithm proposed in Chandrasekhar's thesis to estimate camera parameters through a compressed neural network. The proposed framework achieved Normalized Mean Error of 3% and about 100 FPS on single GPU.
Languages/Technical usage: C++, Python, Pytorch, Java, Caffe, Objective-C, OpenCV

Machine Vision: Object tracking.

Developed real-time correlation filter object tracking C++ library, following movement of people/objects. The algorithm achieved 30 FPS on iPhone 5,6 with very high accuracy. Thanks to this developement, our Computer Vision team was acquired by Axon Company, a company working on-body camera to provide evidence for polices in US. [news]
Languages/Technical usage: C++, Objective-C, OpenCV

Heart rate detection.

Developed non-intrusive heart rate estimation algorithm in C++ library using face/finger video recored by an ordinary camera. The algorithm gives the results within 8-10 seconds and achieved error rate of 0.5% comparing to real heart rate monitor in the hospital. This app is deployed on Misfit production release and used by thousands of users.
Languages/Technical usage: C++, Objective-C, OpenCV

iOS Misfit App.

Developed iOS Misfit app used by millions of users worldwide.
Languages/Technical usage: Bluetooth Low Engergy (BLE), Objective-C

Data sensor streaming.

Developed an API to stream data to record human activities. Calibration data are obtained through sensors: Gyroscope, Accelerometer, and Magnetometer. The streaming process can last each to 16 hours and data are pushed on server through a Misfit Web API. In addition, stream data is uused to simluate 3D human body in the sport for research.
Languages/Technical usage: Bluetooth Low Engergy (BLE), Objective-C

Sketch recognition for augumented reality application.

Researched and developed sketch recognition algorithm for augumented reality to help people interact with drawing. [PDF][Demo]
Languages/Technical usage: C++, Support Vector Machine Liblinear, VLFeat , Matlab

Hand written recognition using Sparse Auto-Encoder.

Researched and developed Hand written recognition algorithm . The papers are published at ISPA 2013: [PDF] and book chapter of Issues and Challenges of Intelligent Systems and Computational Intelligence: [PDF]
Languages/Technical usage: C++, Support Vector Machine Liblinear , Matlab