By shooting 2009/6/22
Flow chart Load Image Undistotion Pre-process Finger detection Show result Send Result to imTop Calculate Background image by 10 initial frames ( 前 10) Calculate Background image by 10 initial frames ( 前 10) Background subtraction ( 超過 10 之後 ) Background subtraction ( 超過 10 之後 )
Finger detection Detect lighter spot Connected component finger analyze Set finger result Image preprocessing
Smooth current image Smooth Image by Gaussian filter (kernel 3x3) Build integral image Calculate the M+2 by N+2 integral image of current M by N background subtracted image
Detect lighter spot Searching for region where the average intensity of inner part is higher enough then that of outer part Threshold related code (these 3 parameters can be adjusted) nThres = nBigArea * nSmlArea * m_nThresKernel / 100; Corners & Finger-size regions will be detected
Connected component Using previous finger candidates Using queue Calculate the mean position of each connected candidates Mark each connected component with groupID which is the position of the initial candidate
Finger analyze Calculate region center and energy of each connected component Accept as a Finger input if Sufficient Energy The Center is within its region
Result management Match current result to the previous Process for un-matched finger points Smooth the detection results Send results Copy current results from each camera