1. A method of filtering a fingerprint image comprising the steps of: receiving an input fingerprint image; separating the input fingerprint image into plural, distinct segments, each segment having ridge-valley lines within a predetermined range of angles; directionally filtering each of said segments with a corresponding directional filter generally perpendicular to said predetermined range of angles of said segment; assembling said directionally filtered segments into a reassembled image; after said reassembling step, thresholding said fingerprint image by detecting all ridge-valley edge pixels, averaging pixel values of said detected edge pixels, setting each pixel in said reassembled image to foreground if said corresponding pixel value is greater than said average edge pixel value, and setting each pixel in said reassembled image to background if said corresponding pixel value is less than said average edge pixel value; after said thresholding step, watershed filling said background pixels including for each background pixel identifying other background pixels horizontally or vertically adjacent, and replacing each background pixel with a foreground pixel if said identified background pixels are less in number than a predetermined number; and outputting said reassembled, thresholded and watershed filled image.