IPSDK Library

IPSDK Features

Most of available IPSDK algorithms manage 5 dimensions (X,Y,Z, stack of images and color planes).

These algorithms work on all image types: 8, 16 or 32 bits and floating images. All these features are automatically vectorized and distributable on PC cluster to ensure optimal execution speeds. This list is not exhaustive. It is simply the first identified features that will be available in initial versions of the product.

Functions of the IPSDK library are available in C++ and Python.

Image processing features

  • Image edition algorithms
    • Creation, conversion, cut, paste, crop, pattern image or random image generation,
    • Color display conversion (RGB, HLS, ...), ortho or oblique slice extraction, Bayer conversion,
    • Sequence concatenation, sequence projection (zstack), statistics on sequence,
  • Binarization algorithms
    • Simple and interactive threshold, Otsu method, hysteresis threshold, color threshold,
    • Three phasis threshold, automatic threshold, adaptive threshold, labeling,
    • Phases rate computation,
    • Labelling connected entities,
  • Point operation algorithms
    • Global or local histogram equalization, normalization, background correction,
    • Arithmetic operations, linear combinations, mask,
    • Absolute value, minimum or maximum between two images or image and scalar,
    • Logical operations, shifting, inversion,
    • Combination with a 3D or sequence image: min, max, mean, median, standard deviation, max gradient, ...
  • Morphology operation algorithms
    • Erosion, dilation, opening, closing, thickening, thinning for different kernel type for binary, grey level or color image,
    • Top hat filtering, hole fill, border kill, reconstruction, ultimate erosion, edge detection,
    • Skeleton, centroid, pruning, triple points, end points, isolated points,
    • Morphological filters,
    • Watershed, exact distance map, grey level reconstruction,
    • Local minima and maxima, binary and grey level separation, spread under stress,
  • Filtering algorithms
    • FIR, several predefined linear filters: Low-pass, High-pass, mean, gaussian, gaussian gradient with several kernel types (rectangular, disk, ball, line, ...),
    • Adaptive filtres: Bilateral, Despeckle, Nagao, Nagmod, Sigman, unsharp mask,
    • Nonlinear filters: median, delineate, deblur, anisotropy, Difference of Gaussian based Laplacien,
    • Patch-based bilateral smoothing image denoising (evolution of Non Local Means),
  • Frequency algorithms
    • Fast Fourier transform (any image size), transformation (x,y) to (r, theta) and in other side, centering,
    • Periodic noise removing, Butterworth filter, Ring artefact attenuation,
  • Differential algorithms
    • Morphological gradient, linear gradient, recursive gradient, (x,y) to (module, phase) transformation,
    • Linear Laplacian, recursive Laplacian, Zero-crossing Laplacian, Sobel, Canny,
  • Contour approximation, 2D and 3D polygonal representation
    • Obtaining polygonal outlines of objects from a binary image, polygonal approximation,
    • 3D outside surface extraction (Meshing), isosurface, simplification of mesh,
    • Interior length, convex hull, interpolating a form by a circle, an ellipse,
  • Geometrical algorithms,
    • Sampling, zoom, translate, rotation, symmetries,
    • Image connection (warping), corner detection (Harris), Brisk descriptors, image registration, sequence registration, SIFT,
  • Correlation and Hough algorithms
    • Any type of correlation, maxima extraction correlation,
    • Lines, Circles and any kind of shape Hough algorithms, maxima Hough extraction,
  • Registration algorithms
    • Harris Corner: extracts the corners in an image,
    • Extract grey signed features, registration from grey signed features,
    • Computation of motion transform linking two images based on a grey signed features algorithm,
  • Segmentation algorithms,
    • 1st and 2nd rank texture parameter calculation, Law and Gabor filter parameters, Coorcurrence matrix,
    • Karhunen Loeve, automatic classification, region growing,
    • Closure of gradients using constraints,
  • Analysis and measures
    • Several global measurements: area perimeter, inertia parameters, intercepts, Euler number, connectivity and tortuosity,
    • Statistical analysis and histograms, class histograms, image comparison,
    • Individual analyzis, individual analysis filtering, sieve classification,
    • Several individual measurements such as area, perimeter, gravity center, inertia moment, shape factors, Ferret diameters, diameter variations, length, width, eccentricity, orientation, difference from a circle, from an ellipse, grey level , maximum, minimum or variance,
  • ...

IPSDK is produced with the active participation of the scientific direction of Groupe Total and bpifrance.

Total Group bpifrance