Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
otb
otb
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 273
    • Issues 273
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 8
    • Merge Requests 8
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Main Repositories
  • otbotb
  • Issues
  • #1671

Closed
Open
Opened Jul 11, 2018 by Julien Michel@jmichelReporter

Remove hard-coded muParser expression library-wise

What changes will be made and why they would make a better Orfeo ToolBox?

High level description

Some filters and classes use the muParser based filters with hard-coded expressions. This is bad for at least 2 reasons:

  • muParser based filters are not as fast as their functor based counter-parts
  • muParser is an optional dependency. Using it heavily results in many applications and filters disabled if muParser is disabled (see #1670 (closed) for instance)

Risks and benefits

Only risk might be small changing with floating point baselines. Benefit is a faster OTB less dependent on muParser.

Alternatives for implementations

We need to spot places where muParser is mis-used:

$ grep -R -l BandMath Modules/ | grep -v BandMath | grep -v Parser
Modules/Applications/AppProjection/app/otbGridBasedImageResampling.cxx
Modules/Applications/AppImageUtils/app/otbCompareImages.cxx
Modules/Applications/AppStereo/app/otbStereoFramework.cxx
Modules/Applications/AppStereo/app/otbBlockMatching.cxx

Who will be developing the proposed changes?

TDB.

Edited Nov 30, 2018 by Yannick TANGUY
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: orfeotoolbox/otb#1671