Traced skeleton

Traced skeleton, a part of algorithm transparency, is constructed during feature extraction from thinned skeleton separately for ridges and valleys. Traced skeleton is a graph of ridges (or valleys) and skeleton minutiae where ridges (or valleys) end. Skeleton minutiae are just points that have no defined direction yet. Ridges (or valleys) are made of pixels that describe path of the ridge (or valley) between two skeleton minutiae. Traced skeleton is then filtered by removing dots, pores, gaps, tails, and fragments. It is then harvested for skeleton minutiae.

KeywordSuffixZip
ridges-traced-skeleton.json044-ridges-traced-skeleton.json
ridges-traced-skeleton.dat045-ridges-traced-skeleton.dat
valleys-traced-skeleton.json060-valleys-traced-skeleton.json
valleys-traced-skeleton.dat061-valleys-traced-skeleton.dat

Visualization

Visualization of traced skeleton was constructed from this stage's json and binary data with original fingerprint image in the background. Visualization itself is not part of transparency data.

Fingerprint skeleton in red color with minutiae marked blue and cyan and original fingerprint in the background
Traced fingerprint skeleton. Endings are marked blue and bifurcations cyan.

Binary data

Binary data contains lists of pixels that form ridges. Pixel lists are excluded from json data for efficiency reasons. Binary data consists of a sequence of ridges in the same order they appear in ridges list in json data. Every ridge is a list of pixels with length stored in length field in json data for the ridge. Every pixel is a pair of 32-bit big-endian integers, specifying X and Y position of the pixel. Position is measured in pixels on scaled image with Y axis pointing down and X axis pointing right.

Example: 045-ridges-traced-skeleton.dat

Json

Skeleton json data contains image dimensions, minutia points, and ridge information (except ridge point lists).

Example: 044-ridges-traced-skeleton.json

{
  "width": 388,
  "height": 374,
  "minutiae": [
    {
      "x": 76,
      "y": 268
    },
    {
      "x": 189,
      "y": 352
    },
    {
      "x": 312,
      "y": 124
    },
    {
      "x": 312,
      "y": 126
    },
    {
      "x": 223,
      "y": 326
    },
    {
      "x": 313,
      "y": 67
    },
    {
      "x": 80,

... skipped 1,443 lines ...

      "end": 187,
      "length": 279
    },
    {
      "start": 158,
      "end": 175,
      "length": 40
    },
    {
      "start": 164,
      "end": 189,
      "length": 5
    },
    {
      "start": 168,
      "end": 168,
      "length": 4
    },
    {
      "start": 169,
      "end": 179,
      "length": 18
    },
    {
      "start": 171,
      "end": 183,
      "length": 138
    }
  ]
}