NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
be_view_an2kview_varres.h
Go to the documentation of this file.
1/*
2 * This software was developed at the National Institute of Standards and
3 * Technology (NIST) by employees of the Federal Government in the course
4 * of their official duties. Pursuant to title 17 Section 105 of the
5 * United States Code, this software is not subject to copyright protection
6 * and is in the public domain. NIST assumes no responsibility whatsoever for
7 * its use by other parties, and makes no guarantees, expressed or implied,
8 * about its quality, reliability, or any other characteristic.
9 */
10
11#ifndef __BE_VIEW_AN2KVIEW_VARRES_H__
12#define __BE_VIEW_AN2KVIEW_VARRES_H__
13
14#include <iostream>
15#include <map>
16#include <string>
17
18#include <be_error_exception.h>
19#include <be_feature.h>
20#include <be_view_an2kview.h>
21
22/* an2k.h forward declares */
23struct field;
24typedef field FIELD;
25
26namespace BiometricEvaluation
27{
28 namespace View
29 {
39 public:
50 {
52 uint8_t score;
53 uint16_t vendorID;
54 uint16_t productCode;
55 };
57 using QualityMetricSet = std::vector<AN2KQualityMetric>;
58
71 };
75 std::vector<PrintPositionCoordinate>;
76
90 static QualityMetricSet
92
98
103 std::string getSourceAgency() const;
104
109 std::string getCaptureDate() const;
110
119 std::string getComment() const;
120
130 const;
131
154 const uint16_t field) const;
155
175 static Memory::uint8Array
177 const RECORD* const record,
178 int fieldID);
179
197 const char *str);
198
199 protected:
208 const std::string &filename,
209 const RecordType typeID,
210 const uint32_t recordNumber);
211
222 const RecordType typeID,
223 const uint32_t recordNumber);
224
240
253 const;
254
264 const;
265
275 const;
276
277 private:
278 void readImageRecord(
279 const RecordType typeID);
280
281 Feature::FGPSet _positions;
285 std::string _sourceAgency;
286 std::string _captureDate;
287 std::string _comment;
291 QualityMetricSet _qms;
293 mutable std::map<uint16_t, Memory::uint8Array> _udf;
294 };
295
309 std::ostream&
311 std::ostream &s,
313
327 std::ostream&
329 std::ostream &stream,
331 &ppc);
332 }
333}
334#endif /* __BE_VIEW_AN2KVIEW_VARRES_H__ */
335
field FIELD
field FIELD
A class to represent single biometric view and derived information.
RecordType
The type of AN2K record.
A class to represent single view based on an ANSI/NIST record.
std::string getComment() const
Obtain the comment field.
AN2KViewVariableResolution(Memory::uint8Array &buf, const RecordType typeID, const uint32_t recordNumber)
Construct an AN2K finger view using from a memory buffer.
AN2KViewVariableResolution(const std::string &filename, const RecordType typeID, const uint32_t recordNumber)
Construct an AN2K finger view from a file.
static Finger::CaptureTechnology convertCaptureTechnology(const char *str)
Convert a friction ridge capture technology code from a string.
Feature::FGPSet getPositions() const
Obtain the set of finger positions.
PrintPositionCoordinateSet getPrintPositionCoordinates() const
Obtain print position coordinates.
Memory::uint8Array getUserDefinedField(const uint16_t field) const
Obtain a user-defined field.
static Memory::uint8Array parseUserDefinedField(const RECORD *const record, int fieldID)
Read raw bytes from a user-defined AN2K field.
std::vector< PrintPositionCoordinate > PrintPositionCoordinateSet
Finger::CaptureTechnology getCaptureTechnology() const
Obtain capture technology used to create this image.
QualityMetricSet getQualityMetric() const
Obtain quality metrics for associated image record.
static QualityMetricSet extractQuality(FIELD *field, Feature::PositionType type)
Read a Quality Metric Set from a variable resolution AN2K record.
Finger::PositionDescriptors getPositionDescriptors() const
Obtain the position descriptors.
PositionType
Enumeration of the types of position classes used in this class and child classes.
Definition: be_feature.h:33
std::vector< FGP > FGPSet
Definition: be_feature.h:57
FingerImageCode
Joint and tip codes.
Definition: be_finger.h:140
std::map< Position, FingerImageCode > PositionDescriptors
Definition: be_finger.h:152
Impression
Finger, palm, and latent impression types.
Definition: be_finger.h:103
CaptureTechnology
Friction Ridge Capture Technology codes.
Definition: be_finger.h:156
std::vector< Image::Coordinate > CoordinateSet
Definition: be_image.h:112
std::ostream & operator<<(std::ostream &stream, const AN2KView::DeviceMonitoringMode &kind)
Output stream overload for DeviceMonitoringMode.
This software was developed at the National Institute of Standards and Technology (NIST) by employees...
Representation of the position (Finger/Palm/Plantar) used in this class and child classes.
Definition: be_feature.h:48
Offsets to the bounding boxes for the EJI, full finger views, or EJI segments.
Image::CoordinateSet coordinates
Two coordinates forming bounding box.
Finger::FingerImageCode segment
Segment within full finger view bound.