Slap Fingerprint Segmentation Evaluation III
API for participating in NIST's evaluation of slap fingerprint segmentation algorithms.
Public Types | Public Member Functions | Public Attributes | List of all members
SlapSegIII::SlapImage Struct Reference

Data and metadata of an image containing multiple fingerprints. More...

#include <slapsegiii.h>

Collaboration diagram for SlapSegIII::SlapImage:
Collaboration graph

Public Types

enum class  Kind { TwoInch = 2 , ThreeInch = 3 , UpperPalm = 5 , FullPalm = 8 }
 Kind of slap image. More...
 
enum class  CaptureTechnology { Unknown = 0 , ScannedInkOnPaper = 2 , OpticalTIRBright = 3 }
 Friction ridge capture technology. More...
 
enum class  Orientation { Right = 0 , Left = 1 , Thumbs = 2 }
 Hand orientation being segmented. More...
 
enum class  Deficiency { Artifacts = 0 , ImageQuality , HandGeometry , Incomplete }
 Reasons that a SlapImage cannot be reliably segmented. More...
 

Public Member Functions

 SlapImage ()
 Default SlapImage constructor. More...
 
 SlapImage (const uint16_t width, const uint16_t height, const uint16_t ppi, const Kind kind, const CaptureTechnology captureTechnology, const Orientation orientation, const std::vector< std::byte > &pixels)
 SlapImage constructor. More...
 

Public Attributes

uint16_t width {}
 Width of the image. More...
 
uint16_t height {}
 Height of the image. More...
 
uint16_t ppi {}
 Resolution of the image in pixels per inch. More...
 
Kind kind {}
 The kind of capture employed to create the image. More...
 
CaptureTechnology captureTechnology {}
 The capture technology used to create the image. More...
 
Orientation orientation {}
 The orientation of fingers in the image. More...
 
std::vector< std::byte > pixels {}
 width * height bytes of image data, with pixels.front() representing the top-left pixel and pixels.back() representing the bottom-right pixel. More...
 

Detailed Description

Data and metadata of an image containing multiple fingerprints.

Definition at line 96 of file slapsegiii.h.

Member Enumeration Documentation

◆ Kind

enum class SlapSegIII::SlapImage::Kind
strong

Kind of slap image.

Enumerator
TwoInch 

Tenprint card (FRGP 13, 14)

ThreeInch 

Identification Flats (FRGP 13, 14, 15)

UpperPalm 

Upper palm (FRGP 15, 26, 28)

FullPalm 

Full palm (FRGP 21, 23)

Definition at line 99 of file slapsegiii.h.

◆ CaptureTechnology

Friction ridge capture technology.

Enumerator
Unknown 

Unknown.

ScannedInkOnPaper 

Scanned ink on paper.

OpticalTIRBright 

Optical, total internal reflection, bright field.

Definition at line 112 of file slapsegiii.h.

◆ Orientation

Hand orientation being segmented.

Enumerator
Right 

Right hand.

Left 

Left hand.

Thumbs 

Two thumbs.

Definition at line 123 of file slapsegiii.h.

◆ Deficiency

Reasons that a SlapImage cannot be reliably segmented.

Enumerator
Artifacts 

Moisture/condensation "halos," "ghost" impressions, etc.

ImageQuality 

Low contrast, over-inked, too much pressure, etc.

HandGeometry 

Hand placed sideways, upside-down, or is overly-rotated in impressions where rotation is not expected.

Incomplete 

Overwhelming majority of expected ridge structure is not present.

Definition at line 134 of file slapsegiii.h.

Constructor & Destructor Documentation

◆ SlapImage() [1/2]

SlapSegIII::SlapImage::SlapImage ( )

Default SlapImage constructor.

Definition at line 54 of file libslapsegiii.cpp.

◆ SlapImage() [2/2]

SlapSegIII::SlapImage::SlapImage ( const uint16_t  width,
const uint16_t  height,
const uint16_t  ppi,
const Kind  kind,
const CaptureTechnology  captureTechnology,
const Orientation  orientation,
const std::vector< std::byte > &  pixels 
)

SlapImage constructor.

Parameters
widthWidth of the image.
heightHeight of the image.
ppiResolution of the image in pixels per inch.
kindThe kind of capture employed to create the image.
captureTechnologyThe capture technology used to create the image.
orientationThe orientation of fingers in the image.
pixelswidth * height bytes of image data, with pixels.front() representing the top-left pixel and pixels.back() representing the bottom-right pixel. It is raw 8 bits/pixel grayscale image data, canonically coded as defined in ISO/IEC 19794-4:2005, section 6.2.

Definition at line 59 of file libslapsegiii.cpp.

Member Data Documentation

◆ width

uint16_t SlapSegIII::SlapImage::width {}

Width of the image.

Definition at line 192 of file slapsegiii.h.

◆ height

uint16_t SlapSegIII::SlapImage::height {}

Height of the image.

Definition at line 194 of file slapsegiii.h.

◆ ppi

uint16_t SlapSegIII::SlapImage::ppi {}

Resolution of the image in pixels per inch.

Definition at line 196 of file slapsegiii.h.

◆ kind

Kind SlapSegIII::SlapImage::kind {}

The kind of capture employed to create the image.

Definition at line 198 of file slapsegiii.h.

◆ captureTechnology

CaptureTechnology SlapSegIII::SlapImage::captureTechnology {}

The capture technology used to create the image.

Definition at line 200 of file slapsegiii.h.

◆ orientation

Orientation SlapSegIII::SlapImage::orientation {}

The orientation of fingers in the image.

Definition at line 202 of file slapsegiii.h.

◆ pixels

std::vector<std::byte> SlapSegIII::SlapImage::pixels {}

width * height bytes of image data, with pixels.front() representing the top-left pixel and pixels.back() representing the bottom-right pixel.

It is raw 8 bits/pixel grayscale image data, canonically coded as defined in ISO/IEC 19794-4:2005, section 6.2.

Note
To pass pixels to a C-style array, invoke pixel's data() method (pixels.data()).

Definition at line 214 of file slapsegiii.h.


The documentation for this struct was generated from the following files: