A word recognition apparatus comprising: input means for inputting a word image representing a plurality of characters; word candidate selection means for calculating, for each of a plurality of words registered in a word dictionary, evaluation values for each character when the word image is recognized as a plurality of characters, calculating the average value of the evaluation values calculated for all the characters included in each word, and selecting a first word candidate and a second word candidate from among the plurality of words having a higher evaluation value from among the plurality of words registered in the word dictionary by using the calculated average value as the evaluation value of the word candidate; and verification means for comparing the first word candidate and the second word candidate character by character, detecting a matched character string which is a partially matched character string, extracting a first unmatched character string which is a character string obtained by excluding the matched character string from the first word candidate, extracting a second unmatched character string which is a character string obtained by excluding the matched character string from the second word candidate, calculating a first evaluation value (S1d) based on a recalculated evaluation value corresponding to the first unmatched character string, calculating a second evaluation value (S2d) based on a recalculated evaluation value corresponding to the second unmatched character string and verifying whether the first word candidate is appropriate as the recognition result of the word image based on the first evaluation value (S1d) and the second evaluation value (S2d). input means for inputting a word image representing a plurality of characters; word candidate selection means for calculating, for each of a plurality of words registered in a word dictionary, evaluation values for each character when the word image is recognized as a plurality of characters, calculating the average value of the evaluation values calculated for all the characters included in each word, and selecting a first word candidate and a second word candidate from among the plurality of words having a higher evaluation value from among the plurality of words registered in the word dictionary by using the calculated average value as the evaluation value of the word candidate; and verification means for comparing the first word candidate and the second word candidate character by character, detecting a matched character string which is a partially matched character string, extracting a first unmatched character string which is a character string obtained by excluding the matched character string from the first word candidate, extracting a second unmatched character string which is a character string obtained by excluding the matched character string from the second word candidate, calculating a first evaluation value (S1d) based on a recalculated evaluation value corresponding to the first unmatched character string, calculating a second evaluation value (S2d) based on a recalculated evaluation value corresponding to the second unmatched character string and verifying whether the first word candidate is appropriate as the recognition result of the word image based on the first evaluation value (S1d) and the second evaluation value (S2d).