1. A system for detecting hand posture using parts based template matching to detect individual human fingers, comprising: a processor; a reference camera configured to capture sequences of frames of video data, where each frame of video data comprises color information for a plurality of pixels; memory containing: a hand tracking application; and a plurality of edge feature templates wherein each of the plurality of edge feature templates is a rotated and scaled version of a finger template; wherein the hand tracking application configures the processor to: obtain a frame of video data from the reference camera; detect at least one candidate finger in the frame of video data received from the reference camera, where each of the at least one candidate finger is a grouping of pixels identified by searching the frame of video data (I) for a grouping of pixels that have image gradient orientations that match a given edge feature template ( ) from the plurality of edge feature templates by determining whether the similarity of a number of gradient orientations extracted from the given edge feature template at a list P of locations r to be considered from edge features ( ) in the given edge feature template and image gradient orientations extracted from the frame of video data relative to a pixel location c exceed a predetermined matching threshold using the following similarity measure: ɛ ⁡ ( I , T , c ) = Σ r ∈ P ⁡ ( max t ∈ R ⁡ ( c + r ) ⁢ | cos ⁡ ( ori ⁡ ( O , r ) - ori ⁡ ( I , t ) ) | ) where ⁢ ⁢ R ⁡ ( c + r ) = [ c + r - T 2 , c + r + T 2 ] × [ c + r - T 2 , c + r + T 2 ] defines a predetermined neighborhood of size T centered on the pixel location c+r within the frame of video data; and verify the correct detection of a candidate finger by confirming that the colors of the pixels within the grouping of pixels identified as a candidate finger satisfy a skin color criterion.