1. A processor-based method of determining whether a keyword made up of characters is present in a bitmap input image containing words, the words being considered to extend horizontally, the method comprising the steps of: providing a set of previously trained single-character hidden Markov models (HMMs), each single-character HMM having a number of possible contexts, depending on whether the character has an ascender or a descender; concatenating those single-character HMMs that correspond to the characters in the keyword so as to create a keyword HMM, the context of a given single-character HMM used to create the keyword HMM being determined on the basis of whether the keyword contains characters having ascenders or a descenders; constructing an HMM network that includes a path passing through the keyword HMM; locating a portion of the input image potentially containing a word; providing an array of pixel values, referred to as a potential keyword, representing the portion of the input image; horizontally sampling the potential keyword to provide a plurality of segments wherein each segment extends the entire height of the potential keyword and the sampling to provide segments is performed in a manner that is independent of the values of the pixels in the potential keyword; for each segment, generating at least one feature that depends on the values of the pixels in the segment, thereby providing a set of features based on the potential keyword, the set of features providing shape information regarding the word potentially contained in the portion of the input image; applying the set of features to the HMM network; determining a probability for the potential keyword as applied to the path passing through the keyword HMM; and comparing the probability, so determined, relative to an additional probability value so as to provide an indication whether the potential keyword is the keyword.