imagemanip.h File Reference
#include "img_base.h"
#include "floatfield.h"
Go to the source code of this file.
|
Functions |
FvsError_t | FingerprintGetDirection (const FvsImage_t image, FvsFloatField_t field, const FvsInt_t nBlockSize, const FvsInt_t nFilterSize) |
FvsError_t | FingerprintGetFrequency (const FvsImage_t image, const FvsFloatField_t direction, FvsFloatField_t frequency) |
FvsError_t | FingerprintGetMask (const FvsImage_t image, const FvsFloatField_t direction, const FvsFloatField_t frequency, FvsImage_t mask) |
FvsError_t | ImageThinConnectivity (FvsImage_t image) |
FvsError_t | ImageThinHitMiss (FvsImage_t image) |
FvsError_t | ImageLocalStretch (FvsImage_t image, const FvsInt_t size, const FvsInt_t tolerance) |
FvsError_t | ImageDilate (FvsImage_t image) |
FvsError_t | ImageErode (FvsImage_t image) |
FvsError_t | ImageEnhanceGabor (FvsImage_t image, const FvsFloatField_t direction, const FvsFloatField_t frequency, const FvsImage_t mask) |
Function Documentation
|
Get a floating point field that contains the ridge direction of the fingerprint image. The algorithm used here is described in many scientific papers. The result is better if the image has a high contrast and is normalized. The values representing the direction vary between -PI/2 and PI/2 radians the ridge direction is not oriented. The higher the block size, the better is the analysis but it will take even longer to perform the computations. The low pass filter size allows to filter out errors as the ridge direction varies slowly in the fingerprint. - Parameters:
-
image | Image to extract the ridge direction from |
field | Ridge directions (floating point values) |
nBlockSize | Size of the blocks into the image is divided into |
nFilterSize | Size of the low pass filter (set to 0 to deactivate) |
- Returns:
- An error code.
|
|
Get a floating point field that contains the ridge frequency. - Parameters:
-
image | Image to extract the ridge frequency direction from |
direction | Ridge directions (floating point values) |
frequency | Ridge frequency |
- Returns:
- An error code.
|
|
Get a mask that tells where are the parts of the fingerprint that contain useful information for further processing. The mask should be set to 0 where the information is not usable: on borders, background parts, where the fingerprint image is of very bad quality, ... The mask is set to 255 where the fingerprint data can be used. - Parameters:
-
image | Image to extract the ridge frequency direction from |
direction | Ridge directions (floating point values) |
frequency | Ridge frequency |
mask | The output mask |
- Returns:
- An error code.
|
|
Thin the image using connectivity information. The image must be binarized (i.e. contain only 0x00 or 0xFF values) This algorithm looks at the immediate neighbourhood of a pixel and checks how many transitions from black to white are present. According to the result, the pixel is removed or not. - Parameters:
-
image | A binarized image to modify |
- Returns:
- An error code.
|
|
Thin the image using "Hit and Miss" structuring elements. The image must be binarized (i.e. contain only 0x00 or 0xFF values) This algo has the disadvantage to produce spurious lines resulting from the skeletonization. These may be eliminated by another algorithm. postprocessing is then still needed afterwards. - Parameters:
-
image | A binarized image to modify |
- Returns:
- An error code.
|
|
Local contrast stretching operator. - Parameters:
-
image | Image to stretch |
size | Size of the blocks onto which stretching should be applied |
tolerance | value used to eliminate the border of the local histogram |
- Returns:
- An error code
|
|
Use a structural operator to dilate the binary image. - Parameters:
-
- Returns:
- An error code
|
|
Use a structural operator to erode the binary image. - Parameters:
-
- Returns:
- An error code
|
|
Enhance a fingerprint image. The algorithm used here is complex to describe but the postprocessing is based on Gabor filters whose parameters are computed dynamically. The image is change in-place so you will have to make a copy to preserve the original image. - Parameters:
-
image | Image to modify |
direction | A ridge direction field previously computed with FingerprintGetDirection for example |
frequency | A ridge frequency field previously computed with FingerprintGetFrequency for example |
mask | Indicating which parts of the image are relevant |
- Returns:
- An error code.
|