Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • bob.bio.vein bob.bio.vein
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • bob
  • bob.bio.veinbob.bio.vein
  • Issues
  • #13
Closed
Open
Created Mar 08, 2017 by Vedrana KRIVOKUCA@vkrivokucaMaintainer

C++ exception for bob.core.convert in MaximumCurvature.py and RepeatedLineTracking.py

Running baseline fingervein experiment on Verafinger database using FingerCrop extractor with the Histogram Equalization post-processing option and the Maximum Curvature or Repeated Line Tracking extractor, the following type of error occurs:

RuntimeError: convert: C++ exception caught: 'src[13,277] = 63.369219 is above the maximum 1.000000 of input range'

This is a result of the following two lines of code in bob.bio.vein.extractor.MaximumCurvature and bob.bio.vein.extractor.RepeatedLineTracking:


if finger_image.dtype != numpy.uint8:
    finger_image = bob.core.convert(finger_image,numpy.uint8,(0,255),(0,1))

This is, in turn, is due to the new version of the "HE" function in FingerCrop, which rescales the intensities of the histogram equalized preprocessed fingervein images to the range (0, 255):


retval = rescale_intensity(equalize_hist(image, mask=mask), out_range = (0, 255))

The aforementioned two lines of code in MaximumCurvature.py and RepeatedLineTracking.py are thus not necessary.

Assignee
Assign to
Time tracking