Ocean
|
The Ocean CV Library provides basic Computer Vision functionalities. More...
Modules | |
Ocean CV Advanced Library | |
The Ocean CV Advanced Library provides several different computer vision feature detection functionalities. | |
Ocean CV Depth Library | |
The Ocean CV Depth Library provides functionalities for depth estimation, stereo rectification etc. | |
Ocean CV Detector Library | |
The Ocean CV Dectector Library provides several different computer vision feature detection functionalities. | |
Ocean CV Fonts Library | |
The Ocean CV Fonts Library provides font functionalities like drawing/rendering text. | |
Ocean CV Segmentation Library | |
The Ocean CV Segmentation Library provides all computer vision segmentation, contour and masking functionalities. | |
Ocean CV Synthesis Library | |
The Ocean CV Synthesis Library provides all computer vision synthesis functionalities. | |
Data Structures | |
class | Ocean::CV::Bresenham |
This class implements bresenham line algorithms. More... | |
class | Ocean::CV::Canvas |
This class implements canvas functions. More... | |
class | Ocean::CV::CVUtilities |
This class implements Computer Vision utility functions. More... | |
class | Ocean::CV::EigenUtilities |
This class provides several helper classes allowing to convert between Ocean data structures and Eigen data structures. More... | |
class | Ocean::CV::FrameBlender |
This class implements a frame blender using an alpha channel to blend frames. More... | |
class | Ocean::CV::FrameChannels |
This class implements frame channel conversion, transformation and extraction functions. More... | |
class | Ocean::CV::FrameConverter |
This is the base class for all frame converter classes. More... | |
class | Ocean::CV::FrameConverterABGR32 |
This class implements functions to convert frames with ABGR 32 bit pixel format. More... | |
class | Ocean::CV::FrameConverterARGB32 |
This class implements functions to convert frames with ARGB 32 bit pixel format. More... | |
class | Ocean::CV::FrameConverterB_G_R24 |
This class provides functions to convert frames with B_G_R24 pixel format. More... | |
class | Ocean::CV::FrameConverterBGR24 |
This class provides functions to convert frames with BGR pixel format. More... | |
class | Ocean::CV::FrameConverterBGR32 |
This class provides functions to convert or to change frames with RGB pixel format. More... | |
class | Ocean::CV::FrameConverterBGR565 |
This class provides functions to convert or to change frames with BGR 565 pixel format. More... | |
class | Ocean::CV::FrameConverterBGRA32 |
This class provides functions to convert frames with BGRA pixel format. More... | |
class | Ocean::CV::FrameConverterColorMap |
This class provides functions to convert frames based on a color map. More... | |
class | Ocean::CV::FrameConverterR_G_B24 |
This class provides functions to convert frames with R_G_B24 pixel format. More... | |
class | Ocean::CV::FrameConverterRGB24 |
This class provides functions to convert or to change frames with RGB pixel format. More... | |
class | Ocean::CV::FrameConverterRGB32 |
This class provides functions to convert or to change frames with RGB pixel format. More... | |
class | Ocean::CV::FrameConverterRGB565 |
This class provides functions to convert or to change frames with RGB 565 pixel format. More... | |
class | Ocean::CV::FrameConverterRGBA32 |
This class provides functions to convert frames with RGBA32 pixel format. More... | |
class | Ocean::CV::FrameConverterRGBA64 |
This class provides functions to convert frames with RGBA64 pixel format. More... | |
class | Ocean::CV::FrameConverterRGGB10_Packed |
This class provides functions to convert frames with RGGB10_PACKED pixel format. More... | |
class | Ocean::CV::FrameConverterThreshold |
This class implements frame converters dividing a frame by application of a threshold. More... | |
class | Ocean::CV::FrameConverterUYVY16 |
This class provides functions to convert frames with UYVY16 pixel format. More... | |
class | Ocean::CV::FrameConverterY10_Packed |
This class provides functions to convert frames with Y10_PACKED pixel format. More... | |
class | Ocean::CV::FrameConverterY16 |
This class provides functions to convert frames with Y16 pixel format. More... | |
class | Ocean::CV::FrameConverterY32 |
This class provides functions to convert frames with Y32 pixel format. More... | |
class | Ocean::CV::FrameConverterY8 |
This class provides functions to convert frames with Y8 pixel format. More... | |
class | Ocean::CV::FrameConverterY_U_V12 |
This class provides functions to convert frames with Y_U_V12 pixel format. More... | |
class | Ocean::CV::FrameConverterY_U_V24 |
This class provides functions to convert frames with Y_U_V24 pixel format. More... | |
class | Ocean::CV::FrameConverterY_UV12 |
This class provides functions to convert frames with Y_UV12 pixel format. More... | |
class | Ocean::CV::FrameConverterY_V_U12 |
This class provides functions to convert frames with Y_V_U12 pixel format. More... | |
class | Ocean::CV::FrameConverterY_VU12 |
This class provides functions to convert frames with Y_VU12 pixel format. More... | |
class | Ocean::CV::FrameConverterYA16 |
This class provides functions to convert frames with YA16 pixel format. More... | |
class | Ocean::CV::FrameConverterYUV24 |
This class provides functions to convert frames with YUV24 pixel format to other pixel formats. More... | |
class | Ocean::CV::FrameConverterYUVA32 |
This class provides functions to convert frames with YUVA32 pixel format to other pixel formats. More... | |
class | Ocean::CV::FrameConverterYUYV16 |
This class provides functions to convert frames with YUYV16 pixel format. More... | |
class | Ocean::CV::FrameConverterYVU24 |
This class provides functions to convert frames with YVU24 pixel format to other pixel formats. More... | |
class | Ocean::CV::FrameEnlarger |
This class implements functions to enlarge/up-sample frames. More... | |
class | Ocean::CV::FrameFilter |
This class implements the base class for all filter. More... | |
class | Ocean::CV::FrameFilterCanny |
This class implements a canny edge filter based on Sobel or Scharr filter operators and their responses respectively. More... | |
class | Ocean::CV::FrameFilterDilation |
This class implements a frame dilation filter. More... | |
class | Ocean::CV::FrameFilterErosion |
This class implements an erosion filter. More... | |
class | Ocean::CV::FrameFilterGaussian |
This class implements Gaussian image blur filters. More... | |
class | Ocean::CV::FrameFilterGradient |
This class implements a gradient frame filter. More... | |
class | Ocean::CV::FrameFilterGradientBase |
This class implements a gradient frame filter not explicitly using SIMD instructions. More... | |
class | Ocean::CV::FrameFilterLaplace |
This class implements Laplace frame filter. More... | |
class | Ocean::CV::FrameFilterMax |
This class implements filters based on the max function. More... | |
class | Ocean::CV::FrameFilterMean |
This class implements a mean frame filter. More... | |
class | Ocean::CV::FrameFilterMedian |
This class implements a median filter. More... | |
class | Ocean::CV::FrameFilterMin |
This class implements filters based on the min function. More... | |
class | Ocean::CV::FrameFilterMorphology |
This class implements the base class for all morphology frame filter. More... | |
class | Ocean::CV::FrameFilterPatch |
This class implements a patch frame filter. More... | |
class | Ocean::CV::FrameFilterPrewitt |
This class implements a Prewitt frame filter. More... | |
class | Ocean::CV::FrameFilterScharr |
This class implements a Scharr filter. More... | |
class | Ocean::CV::FrameFilterScharrMagnitude |
This class implements a scharr filter based on (or respecting) the magnitude of the response. More... | |
class | Ocean::CV::FrameFilterSeparable |
This class implements separable filter. More... | |
class | Ocean::CV::FrameFilterSobel |
This class implements a Sobel filter. More... | |
class | Ocean::CV::FrameFilterSobelMagnitude |
This class implements a Sobel filter based on (or respecting) the magnitude of the response. More... | |
class | Ocean::CV::FrameFilterSorted |
This class implements the base class for all filters relying on sorted filter values. More... | |
class | Ocean::CV::FrameFilterTemplate< TFactor, tFactor00, tFactor10, tFactor20, tFactor01, tFactor11, tFactor21, tFactor02, tFactor12, tFactor22 > |
This class implements a 3x3 filter with arbitrary filter pattern. More... | |
class | Ocean::CV::FrameFilterFactorProvider< tDirection > |
This class implements a helper class providing template filter factors. More... | |
class | Ocean::CV::FrameInterpolator |
This class implements functions interpolating frames and image content. More... | |
class | Ocean::CV::FrameInterpolatorBicubic |
This class implements a bicubic frame interpolator. More... | |
class | Ocean::CV::FrameInterpolatorBilinear |
This class implements bilinear frame interpolator functions. More... | |
class | Ocean::CV::FrameInterpolatorBilinearAlpha< tAlphaAtFront, tTransparentIs0xFF > |
This class implements bilinear frame interpolator functions for frames holding an alpha channel. More... | |
class | Ocean::CV::FrameInterpolatorNearestPixel |
This class implements a nearest pixel frame interpolator. More... | |
class | Ocean::CV::FrameInterpolatorTrilinear |
This class implements tri-linear frame interpolator functions. More... | |
class | Ocean::CV::FrameInverter |
This class implements a frame inverter inverting the internal frame data. More... | |
class | Ocean::CV::FrameMean |
This class implements functions allowing to determine e.g., the mean pixel value of a frame of a mean frame based on several frames. More... | |
class | Ocean::CV::FrameMinMax |
This class implements functions allowing to determine minimum and maximum values within frames. More... | |
class | Ocean::CV::FrameNorm |
This class implements functions allowing to determine norms of images e.g, a L2 norm. More... | |
class | Ocean::CV::FrameNormalizer |
This class implements functions normalizing frames. More... | |
class | Ocean::CV::FrameOperations |
Class for commonly used (arithmetic) operators on and between frames. More... | |
class | Ocean::CV::FrameProviderInterface |
This class defines an abstract interface allowing to request frames from any kind of frame provider. More... | |
class | Ocean::CV::FramePyramid |
This class implements a frame pyramid. More... | |
class | Ocean::CV::FrameShrinker |
This class implements function to downsize a frame. More... | |
class | Ocean::CV::FrameShrinkerAlpha |
This class implements functions downsizing frames that hold alpha channels. More... | |
class | Ocean::CV::FrameTransposer |
This class implements a frame transposer. More... | |
class | Ocean::CV::FrameVariance |
This class implements functions to determine the frame variance. More... | |
class | Ocean::CV::FrequencyAnalysis |
This class provides frame frequency analysis functions. More... | |
class | Ocean::CV::Histogram |
This class implements an image histogram. More... | |
class | Ocean::CV::ContrastLimitedAdaptiveHistogram |
Implementation of Contrast-Limited Adaptive Histogram Equalization (CLAHE). More... | |
class | Ocean::CV::IntegralImage |
This class provides functions to create an integral image from a gray scale image. More... | |
class | Ocean::CV::MaskAnalyzer |
This class implements basic maks analyzing functions. More... | |
class | Ocean::CV::Motion< TMetric > |
This class implements patch-based motion techniques. More... | |
class | Ocean::CV::NEON |
This class implements computer vision functions using NEON extensions. More... | |
class | Ocean::CV::NonMaximumSuppression< T > |
This class implements the possibility to find local maximum in a 2D array by applying a non-maximum-suppression search. More... | |
class | Ocean::CV::OpenCVUtilities |
This class implements utility functions for the migration from OpenCV to Ocean. More... | |
class | Ocean::CV::PixelBoundingBoxT< T > |
This class implements a 2D bounding box with pixel precision. More... | |
class | Ocean::CV::PixelPositionT< T > |
This class implements a 2D pixel position with pixel precision. More... | |
class | Ocean::CV::SSE |
This class implements computer vision functions using SSE extensions. More... | |
class | Ocean::CV::SubRegion |
This class implement a sub-region either defined by 2D triangles or defined by a binary mask. More... | |
class | Ocean::CV::SumAbsoluteDifferences |
This class implements functions calculation the sum of absolute differences. More... | |
class | Ocean::CV::SumAbsoluteDifferencesBase |
This class implements several sum of absolute differences functions. More... | |
class | Ocean::CV::SumAbsoluteDifferencesNEON |
This class implements functions calculation the sum of absolute differences with NEON instructions. More... | |
class | Ocean::CV::SumAbsoluteDifferencesSSE |
This class implements functions calculation the sum of absolute differences. More... | |
class | Ocean::CV::SumSquareDifferences |
This class implements functions calculating the sum of square differences. More... | |
class | Ocean::CV::SumSquareDifferencesBase |
This class implements several sum square differences functions based e.g., on template parameters. More... | |
class | Ocean::CV::SumSquareDifferencesNEON |
This class implements function to calculate sum square differences using NEON instructions. More... | |
class | Ocean::CV::SumSquareDifferencesSSE |
This class implements function to calculate sum square differences using SSE instructions. More... | |
class | Ocean::CV::ZeroMeanSumSquareDifferences |
This class implements functions calculating the zero-mean sum of square differences. More... | |
class | Ocean::CV::ZeroMeanSumSquareDifferencesBase |
This class implements several zero-mean sum square differences functions based e.g., on template parameters. More... | |
class | Ocean::CV::ZeroMeanSumSquareDifferencesNEON |
This class implements function to calculate zeao-mean sum square differences using NEON instructions. More... | |
class | Ocean::CV::ZeroMeanSumSquareDifferencesSSE |
This class implements function to calculate zeao-mean sum square differences using SSE instructions. More... | |
Typedefs | |
typedef std::vector< PixelDirection > | Ocean::CV::PixelDirections |
Definition of a vector holding pixel directions. More... | |
typedef std::vector< unsigned int > | Ocean::CV::Detector::FeatureIndices |
Definition of a vector holding feature indices. More... | |
typedef ObjectRef< FrameProviderInterface > | Ocean::CV::FrameProviderInterfaceRef |
Definition of an object reference holding a frame provider interface. More... | |
typedef Motion< SumAbsoluteDifferences > | Ocean::CV::MotionSAD |
Definition of a Motion class that applies sum absolute difference calculations as metric. More... | |
typedef Motion< SumSquareDifferences > | Ocean::CV::MotionSSD |
Definition of a Motion class that applies sum square difference calculations as metric. More... | |
typedef Motion< ZeroMeanSumSquareDifferences > | Ocean::CV::MotionZeroMeanSSD |
Definition of a Motion class that applies zero-mean sum square difference calculations as metric. More... | |
typedef PixelBoundingBoxT< unsigned int > | Ocean::CV::PixelBoundingBox |
Definition of the default PixelBoundingBox object with data type allowing only positive coordinate values. More... | |
typedef PixelBoundingBoxT< int > | Ocean::CV::PixelBoundingBoxI |
Definition of a PixelBoundingBox object with data type allowing positive and negative coordinate values. More... | |
typedef std::vector< PixelBoundingBox > | Ocean::CV::PixelBoundingBoxes |
Definition of a vector holding bounding box objects with only positive coordinate values. More... | |
typedef std::vector< PixelBoundingBoxI > | Ocean::CV::PixelBoundingBoxesI |
Definition of a vector holding bounding box objects with positive and negative coordinate values. More... | |
typedef PixelPositionT< unsigned int > | Ocean::CV::PixelPosition |
Definition of the default PixelPosition object with a data type allowing only positive coordinate values. More... | |
typedef PixelPositionT< int > | Ocean::CV::PixelPositionI |
Definition of a PixelPosition object with a data type allowing positive and negative coordinate values. More... | |
typedef std::vector< PixelPosition > | Ocean::CV::PixelPositions |
Definition of a vector holding pixel positions (with positive coordinate values). More... | |
typedef std::vector< PixelPositionI > | Ocean::CV::PixelPositionsI |
Definition of a vector holding pixel positions (with positive and negative coordinate values). More... | |
Enumerations | |
enum | Ocean::CV::PixelDirection : int32_t { Ocean::CV::PD_INVALID = -1 , Ocean::CV::PD_NORTH = 0 , Ocean::CV::PD_NORTH_WEST = 45 , Ocean::CV::PD_WEST = 90 , Ocean::CV::PD_SOUTH_WEST = 135 , Ocean::CV::PD_SOUTH = 180 , Ocean::CV::PD_SOUTH_EAST = 225 , Ocean::CV::PD_EAST = 270 , Ocean::CV::PD_NORTH_EAST = 315 } |
Definition of individual directions with pixel accuracy. More... | |
enum | Ocean::CV::PixelCenter : uint32_t { Ocean::CV::PC_TOP_LEFT , Ocean::CV::PC_CENTER } |
Definition of individual centers of pixels. More... | |
The Ocean CV Library provides basic Computer Vision functionalities.
There exist several further specialized Computer Vision libraries, like e.g,. the Advanced Computer Vision library or the Computer Vision libraries addressing feature detection tasks.
The library is platform independent.
The FrameConverterABGR32, FrameConverterARGB32, ... classes implement functions to convert frame data with specific pixel format to different pixel formats (and e.g., different pixel origins). The FrameConverter::Comfort::change() and FrameConverter::Comfort::convert() functions provide a simple interface for frame conversion task.
The Bresenham and Canvas class provide drawing and painting functionalities (also with sub-pixel accuracies).
Several individual common frame filter are implemented in e.g., FrameFilterGaussian, FrameFilterSeparable, FrameFilterDilation, ..., FrameFilterScharr, ...
The FrameShrinker allows to reduce the size of a frame while the FrameEnlarger allows to increase the size of a frame. The FrameShrinkerAlpha additionally provides specific support for frames with alpha channel.
The SSE class provides SIMD functions for x86, x64 platforms while the NEON class provides SIMD functions for Android ARM platforms.
The PixelPosition class stores a 2D pixel-accurate position, the PixelBoundingBox class implements a bounding box with pixel-accuracy.
The NonMaximumSuppression class provides a multi-core-capable solution to determine peaks in filter responses e.g., for feature point detection.
The SubRegion class can be used to determine a sub-region within a frame either by defining a mask or by defining the 2D coordinates of the contour.
The SumAbsoluteDifferences, the SumSquareDifferences and the ZeroMeanSumSquareDifferences classes provide functions measuring distances between image regions (patches).
typedef std::vector<unsigned int> Ocean::CV::Detector::FeatureIndices |
Definition of a vector holding feature indices.
Definition of an object reference holding a frame provider interface.
Definition of a Motion class that applies sum absolute difference calculations as metric.
Definition of a Motion class that applies sum square difference calculations as metric.
typedef PixelBoundingBoxT<unsigned int> Ocean::CV::PixelBoundingBox |
Definition of the default PixelBoundingBox object with data type allowing only positive coordinate values.
typedef std::vector<PixelBoundingBox> Ocean::CV::PixelBoundingBoxes |
Definition of a vector holding bounding box objects with only positive coordinate values.
typedef std::vector<PixelBoundingBoxI> Ocean::CV::PixelBoundingBoxesI |
Definition of a vector holding bounding box objects with positive and negative coordinate values.
typedef PixelBoundingBoxT<int> Ocean::CV::PixelBoundingBoxI |
Definition of a PixelBoundingBox object with data type allowing positive and negative coordinate values.
typedef std::vector<PixelDirection> Ocean::CV::PixelDirections |
Definition of a vector holding pixel directions.
typedef PixelPositionT<unsigned int> Ocean::CV::PixelPosition |
Definition of the default PixelPosition object with a data type allowing only positive coordinate values.
typedef PixelPositionT<int> Ocean::CV::PixelPositionI |
Definition of a PixelPosition object with a data type allowing positive and negative coordinate values.
typedef std::vector<PixelPosition> Ocean::CV::PixelPositions |
Definition of a vector holding pixel positions (with positive coordinate values).
typedef std::vector<PixelPositionI> Ocean::CV::PixelPositionsI |
Definition of a vector holding pixel positions (with positive and negative coordinate values).
enum Ocean::CV::PixelCenter : uint32_t |
Definition of individual centers of pixels.
enum Ocean::CV::PixelDirection : int32_t |
Definition of individual directions with pixel accuracy.
The values of the individual directions are defined by the angle (in counter clockwise order) in degree.
The default direction is the north direction (pointing upwards in an image with pixel origin in the top left corner).
Here is a visualization of the individual pixel directions:
Image with origin in top left corner (denoted by X) and the pixel position P: X--------------------- X--------------------- | | | | | NW N NE | | 45 0 315 | | | | | | W P E | | 90 P 270 | | | | | | SW S SE | | 135 180 225 | | | | | --------------------- ---------------------
Beware: An invalid pixel direction (PD_INVALID) has the value -1 and not 0 as often for other enums.
Enumerator | |
---|---|
PD_INVALID | |
PD_NORTH | |
PD_NORTH_WEST | |
PD_WEST | |
PD_SOUTH_WEST | |
PD_SOUTH | |
PD_SOUTH_EAST | |
PD_EAST | |
PD_NORTH_EAST |