OTB Backlog

From OTBWiki
Jump to: navigation, search

Some of these will be transfered periodically to Open issues.


  • Binary packages


  • Performance tests for OTB (orthorectification for different sensors, reading and writing polygons,...) to be able to assess impact of modifications (OTB code and external librairies).
  • Code review for GDALImageIO
  • Code review for DrawPathList and integration of DrawPointSetImageFilter (general reflexion is required on displaying vector data)
  • Review JPEG2000 usage to get correct performances
  • Wavelet transform (streaming !)
  • JPG and PNG reading could be done with gdal to handle associated georeference information
  • ImageReader should be capable to access the different images when the product contains several images (cf bug #20). Note: there is several possibilities: return an image list, add a parameter to the ImageReader to specify which image to return, etc.
  • Remove libSVM output during learning (.........*......)
  • Continuous for a Windows platform
  • Investigate FFTW problem when running multiple instances of the otb::OverlapSaveConvolutionImageFilter.
  • Integrate the Geometry Library.
  • Test the Pleaides format (JP2K & DIMAP) available in LargeInput/PLEIADES --> 2 products are available (SENSOR and ORTHO)
  • Test the reading of the grass format (cf mail on otb-user)
  • Consistent and homogeous channel numbers in OTB methods - The first channel is number 0 or number 1?
  • Move the SpatialObjectDXFReader closer to the VectorDataIO hierarchy.
  • Add light Smoke test suite: about 100 tests, <1min compilation, <1min execution, at least one per otblib, without the need for otb-data (possibility to use otb logo in .h and checksum on the output image). ON by default.
  • Extend DEM management (geotiff, IGN DEM format...).
  • Automatic binary packages generation of Linux/windows/Mac (stable and development version)
  • ImageListToVectorImage (and vectorimagetoimagelist) must be threaded
  • Create the '--compare-image-estimators' in order to compute and compare estimators (MSRN,RMSE,...) between baseline and result.
  • Missing tests
  • Remove the INCLUDE_DIRECTORIES from the main cmakelists and move them with the corresponding target_link_librairies (ex: include for mapnik in Code/Common/CMakeLists.txt) to avoid full recompilation.
  • Update to libsvm 3.0
  • Add contribution on GPU programming
  • Integrate dev version of libLAS (which compiles fine with gcc4.5 and now has a CMake based build system) : fix issues with libLAS developers about GDAL/GeoTiff import
  • Code review of otbImageFileReader : avoid multiple calls of ossimImageHandler and getImageGeometry ( time consuming for Spot5 model)
  • Profiling upon the computation of covariance shows that StreamingStatisticsVectorImageFilter is not effective (ffedback from L Mercier LPG Grenoble)
  • OTB must be able to work with the maximum of external libraries : ITK4.x, OSSIM...
  • OTB internal applications must handle extractROI on their output. (give the possibility to add tests about Optical and SAR calibration applications)


  • Examples to add in the SG
    • BasicFilters/otbRationalQuotientResampleImageFilter
    • BasicFilters/otbLabelizeImageFilterBase.*
    • BasicFilters/otbLabelizeConfidenceConnectedImageFilter.*
    • BasicFilters/otbLabelizeConnectedThresholdImageFilter.*
    • BasicFilters/otbLabelizeNeighborhoodConnectedImageFilter
    • Right Angles
    • (otbLineSpatialObjectListToRightAnglePointSetFilterByStepsOutputAscii)-->
    • Indices Soil et Water
    • Wavelets
    • Finish lines --> bright/dark selection


  • Epipolar geometry
  • Formosat sensor model
  • Pléiades sensor model
  • Geoeye sensor model


  • Redesign and enrich the commandLineArgumentParser in a more generic way to be able to produce other type of GUI (Monteverdi modules, Zoo Project config file : link zoo_project).


  • Finish User guide Documentation ( description for each module)
  • Zoom in the Fine correlation module
  • Export/Import workflow in Monteverdi
  • Convert Monteverdi to a QGIS plugin
  • Add local descriptors on regions in the Feature extraction module (Flusser, skewness, kurtosis, mean,elongation, variance, principal axis...)
  • QT GUI
  • Color mapping module (using OTB color maps filter)
  • Module to import a DEM image in a given projection
  • Smoothing module with different methods (done in Applications)
  • Road extraction module
  • Warping with respect to a deformation field
  • Spectral Viewer : add input text selection to band selection sliders
  • Monteverdi pipeline could carry static objects: standard quick look, scenario...
  • Add a close dataset button in monteverdi


  • wrap StreamingStatisticsVectorImageFilter (last try : error when wrapping vnl_svd due to inline function)


  • Draw shapefiles with country borders in the image extent tab of the ortho-rectification application: Can use a vector layer over the viewer components
  • Use Otsu thresholding in the object counting application
  • Import examples into the object counting application
  • Network extraction application: Display segments with a different color according to the input type used
  • Network extraction application: Fix the filter updating problem (for now pointer is reinitialized for each computation)
  • Supervised classification application : add active learning, model selection and validation, classifier fusion.
  • Easy translation between otbVectorData and PolygonList, pointSet, pathList etc.
  • ICA
  • Simple concat of images and more
  • Soil line estimation
  • Add streaming capabilities to DEMToImageGenerator and DEMToOrthoImageGenerator. This should be an easy case (no boundaries) ideal for somebody who wants to get familiar with the streaming process in OTB.
  • Add the possibility to display a RGB composition from the features list in otbFeatureExtractionAppli.
  • Create a DEM characteristics generator (slope, aspect, etc.)
  • Integrate random convolution-based disparity map estimation in library and in fine registration application
  • Read a VectorImage of type std::complex<>
  • Support for hdf format
  • Viewer : Handle the drag on the Full widget
  • Trees and Tree Stand Extraction Application
  • SAR polarimetry analysis tools
  • NL-means filtering. Code is available here, but it may be easier to write a filter from this commented pseudocode. Also note that a hashed version exists (see "Hashed Non-Local Means for Rapid Image Filtering", Dowson, N  ; Salvado, O  ;)
  • dct denoising : http://www.ipol.im/pub/algo/ys_dct_denoising/
  • Add concept of networks in OTB (roads, hydro...)
  • Automatic download of Aeronet files (read image metadata place and time)
  • Automatic download of DEM tiles
  • Classification without resampling of data with different resolutions
  • Asift
  • Automatic DEM generation: orthorectification -> correlation -> filtering -> TIN generation
  • Manage variogram (geostatistics)
  • Cut images from a buffer
  • Apply segmentation and classification on masked image (venus contribution?) -> Study direct solutions via gdal http://trac.osgeo.org/gdal/wiki/rfc15_nodatabitmask
  • Perform multi feature Mean Shift with different parameters for each layer
  • Add GetQuickLook in ImageFileReader to manage multi resolution pyramids (OSSIM, GDAL, overview format)
  • Boosting in OTB
  • Particle filter in OTB
  • Fusion of classifier Framework
  • Fast LevelSet Transform (contribution from E.Dubois)
  • Data/image whitening filter in OTB (related to ICA)
  • Active learning based on margin clustering
  • True Texture Index: texture index based on speckle analysis for SAR images
  • MultiScale Isotropic Attention detector
  • Maximum Autocorrelation Factor decomposition (and kernelized version) (Matlab/Envi code available here)
  • Multivariate Alteration Detection (Matlab/Envi code available here)
  • Multi-resolution spatial unmixing framework
  • Sparse Matrix Transform
  • Random Forest Classifier
  • Galib based genetic algorithm optimizer
  • Add class to compute automatically orthorectification parameters (integrate in Applications and Monteverdi)
  • Find a way to handle big images in OBIA framework (Automatic caching of input segmented image? Look at contribution from J.Berthrand)
  • OBIA : export full scene result in PostGIS
  • Investigate the potential use of Waffles C++ API or OpenCV as a backend for machine learning tasks


  • OffsetEstimation (M. Seymour)
  • SensorGroundPosition (M. Seymour)
  • Line detection (bright/dark lines and parallel lines) (Jan Wegner)
  • Fisher classification (Jan Wegner)
  • Raster attribute table support (Alexander Herzig)