1. An image processing apparatus comprising: a facial image detection unit which detects a facial image from an input image; a posture estimation unit which estimates a posture of a person in the input image from a position of the facial image detected by the facial image detection unit; a hand position detection unit which detects positions of hands of the person based on the posture estimated by the posture estimation unit; a hand image extraction unit which extracts a hand image of the person from the input image based on information regarding the positions of the hands of the person detected by the hand position detection unit; a hand shape specifying unit which specifies shapes of the hands of the person based on the hand image extracted by the hand image extraction unit; a hand shape time-series storage unit which stores the shapes of the hands specified by the hand shape specifying unit in a time-series by corresponding to the information regarding the positions of the hands; a hand gesture recognition unit which recognizes a hand gesture, which is a gesture using the hands of the person, based on information regarding the shapes of the hands stored in the time-series in the hand shape time-series storage unit by corresponding to the information regarding the positions of the hands; a hand gesture storage unit which stores information regarding the shapes of the hands in a time-series by corresponding to information regarding the positions of the hands for each type of hand gesture; and a similarity calculation unit which calculates similarity between the information regarding the shapes of the hands stored in the time-series in the hand shape time-series storage unit by corresponding to the information regarding the positions of the hands and the information regarding the shapes of the hands stored in the time-series in the hand gesture storage unit by corresponding to the information regarding the positions of the hands for each hand gesture, wherein the hand gesture recognition unit compares the information regarding the shapes of the hands stored in the time-series in the hand shape time-series storage unit by corresponding to the information regarding the positions of the hands to the information regarding the shapes of the hands stored in the time-series in the hand gesture storage unit by corresponding to the information regarding the positions of the hands for each hand gesture, and then recognizes the hand gesture based on the comparison result, wherein the similarity calculation unit recognizes a hand shape and a motion as an integrated module, and calculates, as the similarity, a ratio of a number of modules that are continuously identical among a plurality of modules continuously set as the hand gesture, to a total number of modules set for the hand gesture, and wherein the hand gesture recognition unit sets the hand gesture with the highest similarity as a recognition result, wherein the facial image detection unit, the posture estimation unit, the hand position detection unit, the hand image extraction unit, the hand shape specifying unit, the hand shape time-series storage unit, the hand gesture recognition unit, the hand gesture storage unit and the similarity calculation unit are each implemented via at least one processor.