A feature extraction method using the chaincode representation of fingerprint ridge contours is presented for use by Automatic Fingerprint Identification Systems. The representation allows efficient image quality enhancement and detection of fine feature points called minutiae. Enhancement is accomplished by binarization and smoothing followed by estimation of the ridge contours field of flow. The original gray scale image is then enhanced using connected component analysis and a dynamic filtering scheme that takes advantage of the knowledge gained from the estimated direction flow of the contours. The minutiae are generated using a sophisticated ridge contour following procedure. Visual inspection of several hundred images indicates that the method is very effective.