NIST Fingerprint Image Quality 2
NIST reference implementation fingerprint image quality analyzer.
nfiq2_algorithm.hpp
Go to the documentation of this file.
1 #ifndef NFIQ2_ALGORITHM_HPP_
2 #define NFIQ2_ALGORITHM_HPP_
3 
6 #include <nfiq2_modelinfo.hpp>
8 
9 #include <memory>
10 #include <string>
11 #include <unordered_map>
12 
13 namespace NFIQ2 {
14 
19 class Algorithm {
20  public:
30 
40  Algorithm(const std::string &fileName, const std::string &fileHash);
41 
49  Algorithm(const NFIQ2::ModelInfo &modelInfoObj);
50 
52  Algorithm(const Algorithm &);
53 
56 
58  Algorithm(Algorithm &&) noexcept;
59 
61  Algorithm &operator=(Algorithm &&) noexcept;
62 
65 
79  unsigned int computeQualityScore(
80  const NFIQ2::FingerprintImageData &rawImage) const;
81 
97  unsigned int computeQualityScore(const std::vector<
98  std::shared_ptr<NFIQ2::QualityFeatures::BaseFeature>> &features)
99  const;
100 
115  unsigned int computeQualityScore(
116  const std::unordered_map<std::string, NFIQ2::QualityFeatureData>
117  &features) const;
118 
129  std::string getParameterHash() const;
130 
139  bool isInitialized() const;
140 
149  bool isEmbedded() const;
150 
162  unsigned int getEmbeddedFCT() const;
163 
164  private:
166  class Impl;
167 
169  std::unique_ptr<Algorithm::Impl> pimpl;
170 };
171 } // namespace NFIQ
172 
173 #endif /* NFIQ2_ALGORITHM_HPP_ */
Applies trained random forest parameters to quality features, computing an overall quality score (i....
Algorithm()
Default constructor of Algorithm.
unsigned int getEmbeddedFCT() const
Obtain the friction ridge capture technology (FCT) specified for the embedded random forest parameter...
Algorithm(const std::string &fileName, const std::string &fileHash)
Constructor that loads random forest parameters from disk.
Algorithm(const Algorithm &)
Copy constructor.
std::string getParameterHash() const
Obtain MD5 checksum of random forest parameter file loaded.
bool isInitialized() const
Determine if random forest parameters have been loaded.
Algorithm(const NFIQ2::ModelInfo &modelInfoObj)
Constructor using NFIQ2::ModelInfo to initialize the random forest.
Algorithm(Algorithm &&) noexcept
Move constructor.
bool isEmbedded() const
Obtain if the random forest parameters are embedded in the library or located externally.
unsigned int computeQualityScore(const NFIQ2::FingerprintImageData &rawImage) const
Computes the quality score from the provided fingerprint image data.
Algorithm & operator=(const Algorithm &)
Assignment operator.
Binary data representing a decompressed fingerprint image, canonically encoded as per ISO/IEC 19794-4...
Information about a random forest parameter model.
Classes and functions that contribute to the calculation of NFIQ2 scores.
Definition: nfiq2.hpp:25
This type represents a structure for quality feature data.