I'm Li-Kang (Tony) Weng. I specialize in computer vision and sensor fusion,
and sutdy in the machine learning field.
I conducted the research on floral shape variation using computer vision approaches and quantification methods
co-advised by Professor
Ta-Te Lin and Professor
Yan-Fu Kuo. I developed
a sensor-fusion-based Automatic Emergency Braking (AEB) system composed of obstacle detection, tracking, recognition, and
decision-making algorithms at
Biophotonics and Bioimaging Laboratory
led by Professor Lin. I aimed at Simultaneous Localization and Mapping (SLAM) algorithm at HTC Corporation.
I was also involved in architecture design and development of fundamental tools to reduce redundant labor works.
For now, I aspire to participate in the Autonomous Vehicle industry to shape the world together!
The Past Paved the Way for Today, and Forward the Future.
Work Experience
June 2021 - Present
Software Development Engineer, Amazon Web Services, Inc.
Seattle, USA
Contributed to distributed services to provide the best customer experience
Automated processes to save at least 1 month of engineering time on repeated operation per year
Observed OpEx saving possibilities to save at least tens of thousands per year
Implemented a recommendation tool to help internal teams pick the efficient infrastructure easily for EC2 demand shaping
May - July 2020
Software Development Engineer Intern, Amazon Web Services, Inc.
Dallas, USA
Added CloudWatch Events to AWS EC2 Fleet to let customers be aware of the states of their fleets and take actions to fulfill their business demands
[announcement]
Dec. 2018 - July 2020
Developer, GOROX Co. Ltd.
Taipei, Taiwan and Dallas, USA (remote)
Synced the body motion in Unity and developed a real-time GUI using JavaScript
Mar. - June 2019
Research Assistant, NTU
Taipei, Taiwan
Built a tracked robot for surveillance on a chicken farm. The information and the manipulation of the robot were visualized on a website and the algorithms are developed using ROS (Robot Operating System)
Jan. 2017 - July 2018
Software Engineer, HTC Corporation
New Taipei City, Taiwan
Developed real-time visual-inertial SLAM algorithm using C++ on ARM platform
Designed GUI and tools for real-time data visualization and KPI measurement to eliminate tedious labor and quantitate tracking performance
Affiliated Senior High School of National Kaohsiung Normal University (NKNUASHS), Taiwan
Publications
[1]
Hao-Chun Hsu, Chia-Ying Chen, Tzu-Kuei Lee, Li-Kang Weng, Der-Ming Yeh, Ta-Te Lin, Chun-Neng Wang and Yan-Fu Kuo. 2015. Quantitative analysis of floral symmetry and tube dilation in an F2 cross of Sinningia speciosa. Scientia Horticulturae, 188, 71-77.
[pdf]
[2]
Ta-Te Lin, Li-Kang Weng and An-Chih Tsai. 2014. Object Tracking and Collision Avoidance Using Particle Filter and Vector Field Histogram Methods. Paper presented at American Society of Agricultural and Biological Engineers (ASABE) Paper No. 1906189, Montreal, Quebec City, Canada.
[pdf]
[3]
Yan-Fu Kuo, Li-Kang Weng, Tzu-Kuei Lee, Hao-Chun Hsu, Ta-Te Lin and Chun-Neng Wang. 2013. Quantitative Evaluation of the Floral Shape Variation in Sinningia Speciosa Domestication. Paper presented at ASABE Paper No. 131595052.
[pdf]
Member, NTU Utopia Non-Profit Club
Aimed at old computer deallocation. There're so many children don't have a chance to connect the
world through the Internet. We fixed and sorted out usable computers, laptops donated from everywhere and
held workshops to advocate our idea and attract volunteers to join with us. These devices were sent to
orphanage and remote schools.
July 2011 - June 2012
Co-Director of Activities Department, NTU BIME Student Association
Held the most important annual activities of every department at National Taiwan University. I was in charge of
process planning and activity rehearsal to check everything is in the right place at the right time.
May - Sep. 2011
Director of Activities Department, NTU BIME Freshman Welcome Camp
Held the 7-day Freshman Welcome Camp co-organized with students in Department of Chinese Literature, NTU.
I was in charge of process and activity planning.
Nov. 2010 - Mar. 2011
Vice Coordinator, NTU BIME Night Event
Held the most important annual activity for every department at NTU. It's a night event presenting various
shows presented by students in all grades from the same department, such as drama, band, and dance show.
Aug. - Oct. 2010
Coordinator, NTU Pop Dance Club Welcome BBQ Party
Held the Welcome Party consisting of site selection, activity planning, and commodity procurement.
Nov. 2009 - Jan. 2010
Member, NTU Kaohsiung Area Alumni Association
NTU students came from Kaohsiung city grouped up a team went to Kaohsiung Sing Gang Elementary School
to hold a campaign for children. This campaign consisted of science knowledge that brought joy and happiness
to children, and fulfilled our spirit as well.
Oct. 2006 - Aug. 2008
Captain, School Patrol of NKNUASHS
Led the traffic control team composed of students from the school. Our duty is to secure children's safety
at the school gate during going to and getting off school every school day.
Portfolio
The Process Matters
Udacity Self-Driving Car Engineer Nanodegree
Master Thesis: Sensor Fusion of Stereo Vision and Radar Systems for Vehicle Safety Application
The 2014 MediaTek MobileHeroes Competition
The 9th Utechzone Machine Vision Prize
The 8th Utechzone Machine Vision Prize
Bachelor Topic: Quantitative Evaluation of the Floral Shape Variation in Sinningia Speciosa Domestication
Mechatronics and Laboratory Project
Mechanism Project
Contact
Send a mail if you require further info!
E-mail: eqttonytony [at] gmail [dot] com
Keywords: Image processing, Deep learning, Decision making.
Udacity is an organization found by Sebastian Thrun. I enrolled the Self-Driving Car Engineer Nanodegree to acquire knowledge in autonomous vehicle. It consists of lots of assginments that I’ve uploaded to my GitHub.
“All the sensors are not accurate, but some of them are useful.” Each sensor has their own limitations. Multisensor was proposed to observe more information. In this research, an Automatic Emergency Braking (AEB) system was developed to warn the driver of potential danger with a clear and concise GUI. The algorithms of obstacle detection, tracking, recognition, and path planning were developed to make the system sense and react to the local environment.
At first, a stereo vision kit was self-made which’s easy to adjust the focal length of camera and baseline for experimental use.
After an off-line camera calibration revised from OpenCV library (Lai, 2012), the Semi-Global Block Matching (SGBM) algorithm (Hirschmüller, 2008) was applied for correspondence matching on GPU to accelerate the process performance. The 3D information estimated by stereo matching was projected on an bird’s-eye-view. The objects were then detected using the blob method on the top-view and then reprojected back to label them on the image.
The ground surface was removed using the v-disparity method (Labayrade et al., 2005) that is a histogram of the various value of disparity on each row. The ground was filtered out which appeared as a slash on the v-disparity map.
After object detection, the Bhattacharyya distance was used to distinguish different objects from the hue color-space. Extended Kalman filter (Kalman, 1960) was then applied to track their trajectory. Pre-collision warning method was approached by path planning algorithms and the GUI to guide the driver. The path planning algorithms were implemented and analyzed to propose a more real one, such as A* and Vector Field Histogram algorithms.
In order to eliminate measurement error resulting from the stereo vision, the object-level sensor fusion method (Wu et al., 2009) was proposed to ameliorate the accuracy of obstacle motion state estimation by mounting a millimeter-wave radar, Delphi ESR v9.21.21. Although the radar is lack of color information, it can provide more accurate depth informaition rather than the one estimated by stereo vision. A CANBus control box was fabricated to deploy the radar into the system.
The system was ameliorated to approach a better performance (see videos below). For more detail, please access to my master thesis pdf.
Contributions:
Constructed object-level sensor-fusion-based vehicle safety system capable of obstacle detection, tracking and collision avoidance algorithms by a stereo vision and a millimeter-wave radar.
Refactored algorithms and analyzed the performances to eliminate false detect of objects around
Eliminated measurement error of depth information from 2.4% to 0.7% using fused information
Enhanced obstacle matched rate from 82.1% to 89.8% using fused information
Accelerated 2.8 times in correspondence matching method using CUDA with OpenCV
Analyzed the performances of path planning algorithms between A* and VFH to figure smoother and better solution for vehicle
Refactored obstacle matching algorithm to optimize performance by speed-up around 30%
Eliminated measurement error by optimizing camera calibration on stereo vision
Analyzed path planning algorithms to provide more realistic solution
Designed clear and concise GUI for user easy to understand environmental information
The 2014 MediaTek MobileHeroes Competition
Date: July - Dec. 2014
Keywords: Wireless communication, IR sensor, Shooter game.
Three congenial friends and I formed a team to join the 2014 MediaTek MobileHeroes Competition and won the Excellence Award. We came up with an idea about building a shooter game without extra devices, such as mask, vest, and so on. We decided to distill all the actions into a glove including shoot, reload, defense. The glove is composed of a LinkIt ONE development board, an Infrared (IR) sensor, a display screen, and a conductive plate. LinkIt ONE is the brain to process all the signals from the sensor. The IR sensor is aimed at trasmitting and receiving the signals from every glove. The display screen is applied to show health points, the ammo, and the game status. And the conductive plate is designed to trigger the action. Although it’s a tiny project, but we did enjoy the brainstorming as well as the hands-on experience together during the process of turning a concept into a prototype.
Utechzone Co.,LTD is a well-known technical company aimed at machine vision technology and dedicated to the development of automated machine vision systems in Taiwan. The Utechone Machine Vision Prize has been held by the company since 2006 in order to encourage the development of computer vision. The labmates and I represented the Biophotonics and Bioimaging Laboratory to participate in this competition and won the 2nd prize.
This competition, different from before that’s used to aim at face recognition, is focused on three subjects: fall detection, left object detection and phone detection. I will focus on the fall detection part which I was in charge of. In order to detect the fall motion which is a continuous action, the information of objects must be recorded continuously.
First, due to the fixed field of view of camera, the SAmple CONsensus (SACON) method (Wang and Suter, 2006) was implemented to extract the foreground by subtracting a background generated by unchanged pixels. The foreground was then processed using erosion and dilation to filter out the noises. The detected objects were tracking using Kalman filter.
Origin
Built Background
Processed Foreground
Detected Result
The geometrical features, such as an aspect ratio of the region of interest (ROI), a cetroid of the ROI, and a histogram of pixels in the ROI, were applied to determine the fall motion. For instance, when the aspect ratio drastically changed and the centroid position was lower than before, the motion would be identied as possible fall motion.
The 8th Utechzone Machine Vision Prize
Date: Dec. 2013 - Aug. 2014
Keywords: Face recognition, Feature extraction, Classification, Machine learning.
Utechzone Co.,LTD is a well-known technical company aimed at machine vision technology and dedicated to the development of automated machine vision systems in Taiwan. The Utechone Machine Vision Prize has been held by the company since 2006 in order to encourage the development of computer vision. Our lab, the Biophotonics and Bioimaging Laboratory, has participated in this contest since 2006, and has won first prize two times. In my first graduate year, I was involved in the 8th competition to study and implement new feature, and help tune or adjust the models to achieve better performance.
This competition has four subjects: face, gender, expression and age recognition. The program was developed to detect human faces from the video and extract the features of faces to do the recognition using trained model. We cross-tested algorithms and models to optimize the performance of recognition rate. In face recognition part, histograms of Shearlet Coefficients (HSC) algorithm (Schwartz et al., 2011) was implemented as a new feature with recognition rate around 78% with Fisherfaces model.
Histogram Equalization
The hisotgram equalization was applied to increase the global contrast of the image that the intensities can be evenly distributed on the histogram for a better analytical performance.
Face Detecion and Alignment
Haar-like feature (Viola and Michael, 2004) was used to detect the face in the video. After detecting the face, the active shape model (ASM) algorithm (Baldock and Graham, 2000) was applied to align the face into front without frontal rotation on the image to standardize the data.
Feature Extraction
There’re some methods were implemented to extract the features on the face.
Local binary patterns (LBP): The LBP (Ojala et al., 1994) is a type of visual descriptor used for classification, especially a powerful efature feature for texture classification. The algorithm is by comparing the central pixel value with the adjacent M neighbors in a N x N window and then computing the histogram or reordering the data into 1D array. In this competition, the N was 3 so every pixel had to compare with their eight neighbors to generate a feature. The images shown below demonstrated the result processed by LBP method. Additionally, it’s efficient enough to run on CPU due to its laconic property.
Local adaptive ternary pattern (LATP): The LATP (Akhloufi and Bendada, 2010) is an extended method of the local ternary pattern (Tan and Triggs, 2007) that calculates the mean value and standard deviation of elements in a NxN window. And the adaptive threshold value is determined based on each result. To enhance the computing performance, the result of the LATP is separated into two binary patterns: upper and lower patterns, a.k.a. LATPU and LATPL respectively.
Gabor filter: Gabor filter is commonly used in computer science, especially in edge detection. The feature extracted from Gabor filter usually seems a significant one to represent the face feature (8 orientations and 4 scales is often a good start to tune the Gabor parameters).
Histogram of oriented gradient (HOG): The HOG method is applied as one of the facial feature descriptors (Tsai and Huang, 2009). It involves using the gradient magnitude and the gradient orientation of an image for feature extraction. The aligned face image was splited into 2 x 2 blocks and computed the histograms in various gradient directions within each block. The histograms were combined to represent one descriptor. In this competition, we splited the gradient directions into 12 units; therefore, 4 x 12 eigenvectors could be obtained for each facial image.
Histograms of Shearlet Coefficients (HSC): The HSC method (Schwartz et al., 2011) was proposed to extract features to overcome the limitation of representing directional features, such as wavelet and Gabor. “Shearlet transforms provide a general framework for analyzing and representing data with anisotropic information at multiple scales. As a consequence, signal singularities, such as edges, can be precisely detected and located in images. Based on the idea of employing histograms to estimate the distribution of edge orientations and on the accurate multi-scale analysis provided by shearlet transforms.” In the image, the higher frequency part was splited into eight shearlets and then discretized in to 8-bit features. The lower frequency part would be considered as a full image and then repeated the same step to discretized the information from its higher frequency part.
2DPCA: The 2DPCA (Yang et al., 2004) was applied for dimension reduction and face recognition by using eigenface images.
Recognition
According to different subjects in the competition, features were selected based on their performance on different aspects and also the decision making model. The Support Vector Machine (SVM) and AdaBoost were utilized to train the models for different recognition tasks.
SVM: SVM is a method that can be used to classify various classes of data from training models. In our program, we used a library for support vector machine (LIBSVM) developed by Dr. Chih-Chung Chang and Dr. Chih-Jen Lin.
AdaBoost: AdaBoost aimes to construct a strong classifier from the weighted combination of numerous weak classifiers when the weights are adjusted in each run. In our program, we used SVM models as weak classifiers. This type of algorithm is referred to as the AdaBoost-SVM algorithm (Li et al., 2008). All the tasks except the gender recognition were using the multi-class AdaBoost (Zhu et al., 2005) algorithm. The AdaBoost method was used for the gender recognition due to it could be used as a binary classifier.
For each subject, various algorithms and methods were combined listed below. In the face recognition part, the accuracy rate was improve from 87.1% to 91.67%.
I learned mathematical theories from this experience. It’s my first time involved in a project with more than 5 contributers. The journey was full of exciting that I could not only learn how to survey the papers but also cowork with different people on the same project. I also felt a great sense of achievement while implementing the HSC method.
Bachelor Topic: Quantitative Evaluation of the Floral Shape Variation in Sinningia Speciosa Domestication
Date: Aug. 2012 - Feb. 2014
Keywords: Computer vision, Segmentation, Principal component analysis, Geometric morphometrics, General Procrustes analysis.
“Nature is full of mysteries.” This project was proposed to analyze the shape variation of Darwin’s Gloxinia (Sinningia Speciosa) by geometric morphometric analysis. The landmarks on flower, usually represented by a set of characteristic coordinate points (Adams et al., 2004; Klingenberg, 2010), were identified through image processing algorithms. These algorithms were implemented with the program written on Qt Creator and with OpenCV library. By the program, the process of landmark acquisition was simplified to reduce process time and eliminate the error measured by manpower.
The flowchart of the program is shown below. An flower was segmented from the background on a 2D image using GrabCut algorithm (Rother et al., 2004). The contour line was retrieved from the foreground image using Suzuki85 algorithm (Suzuki et al., 1985). At the overlapped part, the unseen contour line (underneath) was assumed to be identical and symmetric to the visible one (above). The primary landmarks were selected manually and then the secondary landmarks were acquired automatically along the contour line.
Geometric morphometrics analysis (GM) is a collection of coordinate points of landmarks that examine the shapes of flower quantitatively. General Procrustes analysis (GPA) was applied to eliminate variance irrelevant to shape, e.g., variance of
translation, orientation, and scaling, from the landmark dataset. Principal component analysis (PCA) was used to capture the major trends of variation.
PC1
-2STD
Mean
+2STD
Face view
Side view
The indicative parameters were observed to represent the floral shape. In the face view, the PC1 is corresponded to the degree of overlap between flower lobes. In the side view, the PC1 is corresponded to the dorsi-ventral asymmetry. For more detail, please access to my bachelor topic pdf.
Contributions:
Analyzed shape variation of Sinningia speciosa from landmarks identified on 2D images
Accelerated process speed and eliminated measurement error by developing semi-automatic program with GUI using image processing methods for flower landmark acquisition
Mechatronics and Laboratory Project
Date: Aug. 2012 - Jan. 2013
Keywords: PLC, Automatic system, Integration.
In the lecture Mechatronics and Laboratory, we’ve learned the theories and functions of sensors, mechanism deisgn, signal processing, and the Programmable Logic Controller (PLC). The final project required us to use all the knowledge to integrate a system up. Three classmates and I came up with an idea to build an automatic canopy system equipped with rain detection to prevent sun-dry clothes hanging outdoors getting wet. To detect the rain, a vibration sensor, SHOCK-801S and a capacitive-sensing circuit kit were applied outdoors to sense the falling raindrop. When a raindrop hit the sensor board, the circuit on the sensor trace will be closed due to the water stayed on it and the force will vibrate the sensor plate. We determine this condition as rain mode and the programmed PLC will receive this signal and then trigger the motor to open the canopy. We also self-made the components in our department’s factory, such as cutting a wood plate with a scroll saw and cutting an acrylic plate with a laser cutting machine. Although it’s a prototype, I learned how to design and assemble a circuit, program the code on PLC, and control the stepping motor.
DIY in factory
Vibration sensor
Capacitive-sensing_circuit
Canopy with stepping motor
Mechanism Project
Date: Feb. - June 2011
Keywords: Mechanism design, SolidWorks.
The lecture Mechanism let us to create innovation thing based on unresolved problem. In Taiwan, we get used to sun-dry clothes rather than putting them into dryer. Two classmates and I designed an automatic dry clothes rack to not only make people hang clothes on without moving but also use econimize the space utility like using the top of balcony. The system is composed of a vertical rolling belt, expanable clothes hangers, and an automatic clothesline. The user only has to hang their clothes at the same place and the belt will roll them up to the clothesline. We used SolidWorks to deisgn our mechanism.