Core Module

Images

See Images for a description of the image concepts and image basics.

Ranges

Ranges extensions for ranges with new concepts and helper functions.

Neighborhoods and Structural Elements

Neighborhood, Sliding Windows and Structuring Elements are the fundamental tools for local image processing.

Border handling

mln::pad()

Pad an image inplace

mln::copy_pad()

Copy a region of an image and fill missing values wrt a padding policy.

Image primitives

Fundamental primitives for basic image manipulation. Those are grouped by:

  • Modifying or Non-modifying if they output and write an image

  • Value or Pixel if the localisation (i.e. point/index) is used for processing

Non-modifying image primitives that operates on values

All_of, any_of, none_of

checks if a predicate is true for all, any or none of the image values

For_each

applies a function to the values of an image

Count If Count If

returns the number of values satisfying specific criteria

Equal

checks if two images have the same values

Accumulate (reduce)

sums up values of an image

Non-modifying image primitives that operates on pixels

Sort_points, sort_indexes

returns a container of image points (or indexes)

Modifying image primitives that operates on values

Copy

copies image values to another image (without localization)

Fill

assigns a value to image values

Clone

copies an image in a new image

Paste

copies image pixels to another image (with localization)

Transform

applies a function to the values of an image

Generate

generate the values of an image by a function

Iota

generate the values of an image with increasing value

Modifying image primitives that operates on pixels

integrate (partial sum, inclusive scan)

computes the partial sum of image values (used for integral images)

STL

STL are the fundamentals concepts of the C++ standard library that we are building our concept upon. They are our building blocks.