NIST Fingerprint Image Quality 2
Fingerprint image quality assessment tool
nfiq2_qualityfeatures.hpp
Go to the documentation of this file.
1/*
2 * This file is part of NIST Fingerprint Image Quality (NFIQ) 2. For more
3 * information on this project, refer to:
4 * - https://nist.gov/services-resources/software/nfiq2
5 * - https://github.com/usnistgov/NFIQ2
6 *
7 * This work is in the public domain. For complete licensing details, refer to:
8 * - https://github.com/usnistgov/NFIQ2/blob/master/LICENSE.md
9 */
10
11#ifndef NFIQ2_QUALITYFEATURES_HPP_
12#define NFIQ2_QUALITYFEATURES_HPP_
13
14#include <nfiq2_constants.hpp>
16
17#include <memory>
18#include <string>
19#include <unordered_map>
20
21namespace NFIQ2 { namespace QualityFeatures {
22
30class Module;
31
32/******************************************************************************/
33
34/*
35 * Obtain identifier constants.
36 */
37
47std::vector<std::string> getActionableQualityFeedbackIDs();
48
58std::vector<std::string> getQualityModuleIDs();
59
69std::vector<std::string> getQualityFeatureIDs();
70
71/******************************************************************************/
72
90std::vector<std::shared_ptr<NFIQ2::QualityFeatures::Module>>
92
105std::unordered_map<std::string, double> computeQualityFeatures(
106 const NFIQ2::FingerprintImageData &rawImage);
107
121std::unordered_map<std::string, double> computeActionableQualityFeedback(
122 const NFIQ2::FingerprintImageData &rawImage);
123
126/*
127 * Extract values in other formats.
128 */
129
143std::unordered_map<std::string, double> getActionableQualityFeedback(
144 const std::vector<std::shared_ptr<NFIQ2::QualityFeatures::Module>>
145 &modules);
146
159std::unordered_map<std::string, double> getQualityFeatureValues(
160 const std::vector<std::shared_ptr<NFIQ2::QualityFeatures::Module>>
161 &modules);
162
176std::unordered_map<std::string, std::shared_ptr<NFIQ2::QualityFeatures::Module>>
178 const std::vector<std::shared_ptr<NFIQ2::QualityFeatures::Module>>
179 &modules);
180
194std::unordered_map<std::string, double> getQualityModuleSpeeds(
195 const std::vector<std::shared_ptr<NFIQ2::QualityFeatures::Module>>
196 &modules);
197}}
198
199#endif /* NFIQ2_QUALITYFEATURES_HPP_ */
Binary data representing a decompressed fingerprint image, canonically encoded as per ISO/IEC 19794-4...
std::unordered_map< std::string, double > computeActionableQualityFeedback(const NFIQ2::FingerprintImageData &rawImage)
Compute actionable quality feedback.
std::vector< std::shared_ptr< NFIQ2::QualityFeatures::Module > > computeQualityModules(const NFIQ2::FingerprintImageData &rawImage)
Compute quality modules.
std::unordered_map< std::string, double > computeQualityFeatures(const NFIQ2::FingerprintImageData &rawImage)
Compute quality feature values.
std::unordered_map< std::string, double > getQualityModuleSpeeds(const std::vector< std::shared_ptr< NFIQ2::QualityFeatures::Module > > &modules)
Obtain time elapsed during quality module computation, in milliseconds.
std::unordered_map< std::string, double > getQualityFeatureValues(const std::vector< std::shared_ptr< NFIQ2::QualityFeatures::Module > > &modules)
Obtain quality feature data from computed quality modules.
std::vector< std::string > getActionableQualityFeedbackIDs()
Obtain all actionable quality feedback identifiers.
std::unordered_map< std::string, std::shared_ptr< NFIQ2::QualityFeatures::Module > > getQualityModules(const std::vector< std::shared_ptr< NFIQ2::QualityFeatures::Module > > &modules)
Obtain quality modules organized as a map.
std::unordered_map< std::string, double > getActionableQualityFeedback(const std::vector< std::shared_ptr< NFIQ2::QualityFeatures::Module > > &modules)
Obtain actionable quality feedback from computed quality modules.
std::vector< std::string > getQualityModuleIDs()
Obtain all quality module identifiers.
std::vector< std::string > getQualityFeatureIDs()
Obtain all quality feature IDs from quality modules.
Classes and functions that contribute to the calculation of NFIQ 2 quality scores.
Definition: nfiq2.hpp:97