The experienced projects in both industrial companies and academy.
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
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