qvipp Namespace Reference


Functions

void MinEigenValGetBufferSize (const QVGenericImage &src, QVImage< uChar > &buffer, uInt apertureSize=5, uInt avgWindow=5)
 Allocates size in a buffer image for temporary data for function MinEigenValGet.
void CannyGetSize (const QVGenericImage &src, QVImage< uChar > &buffer)
 Allocates size in a buffer image for temporary data for function Canny.
void Canny (QVImage< sShort > &dX, QVImage< sShort > &dY, QVImage< uChar > &dest, QVImage< uChar > &buffer, double low=50.0, double high=150.0)
 Performs Canny algorithm for edge detection.
void Canny (QVImage< sFloat > &dX, QVImage< sFloat > &dY, QVImage< uChar > &dest, QVImage< uChar > &buffer, double low=50.0, double high=150.0)
 Performs Canny algorithm for edge detection.
void MinEigenVal (const QVImage< uChar > &src, QVImage< sFloat > &dest, QVImage< uChar > &buffer, uInt apertureSize=3, uInt avgWindow=5, IppiKernelType kernel=ippKernelSobel)
 Calculates the minimal eigen value of image blocks for corner detection.
void FastMarchingGetBufferSize (const QVGenericImage &image, QVImage< uChar > &buffer)
 Allocates size in a buffer image for temporary data for function FastMarching.
void FastMarching (const QVImage< uChar > &mask, QVImage< sFloat > &distances, int radius, QVImage< uChar > &buffer)
 Calculates distance transform to closest zero pixel for all non-zero pixels of source image using fast marching method.
void Inpaint (const QVImage< uChar > &src, const QVImage< uChar > &mask, const QVImage< sFloat > &distances, QVImage< uChar > &dest, int radius=4, IppiInpaintFlag flag=IPP_INPAINT_TELEA)
 Restores unknown image pixels.
void Inpaint (const QVImage< uChar, 3 > &src, const QVImage< uChar > &mask, const QVImage< sFloat > &distances, QVImage< uChar, 3 > &dest, int radius=4, IppiInpaintFlag flag=IPP_INPAINT_TELEA)
 Overload for function Inpaint, for different channel number images.
QMap< sInt, int > HistogramRange (const QVImage< uChar, 1 > &src, QList< uChar > values=QList< uChar >())
 Calculates frequency histogram for a given set of values, for a QVImage.
void FloodFillGetSize (const QVGenericImage &src, QVImage< uChar > &buffer)
 Allocates size in a buffer image for temporary data for function family FloodFill.
void Copy (const QVImage< uChar, 1 > &src, QVImage< uChar, 1 > &dest)
 Copies pixel values between two images.
void Copy (const QVImage< sShort, 1 > &src, QVImage< sShort, 1 > &dest)
 Copies pixel values between two images.
void Copy (const QVImage< sFloat, 1 > &src, QVImage< sFloat, 1 > &dest)
 Copies pixel values between two images.
void Copy (const QVImage< uChar, 3 > &src, QVImage< uChar, 3 > &dest)
 Copies pixel values between two images.
void Copy (const QVImage< sShort, 3 > &src, QVImage< sShort, 3 > &dest)
 Copies pixel values between two images.
void Copy (const QVImage< sFloat, 3 > &src, QVImage< sFloat, 3 > &dest)
 Copies pixel values between two images.
void Copy (const QVImage< uChar, 1 > &src, QVImage< uChar, 3 > &dest)
 Copies pixel values from a 1-channel image to all of the channels for a 3-channel image.
void Copy (const QVImage< sShort, 1 > &src, QVImage< sShort, 3 > &dest)
 Copies pixel values from a 1-channel image to all of the channels for a 3-channel image.
void Copy (const QVImage< sFloat, 1 > &src, QVImage< sFloat, 3 > &dest)
 Copies pixel values from a 1-channel image to all of the channels for a 3-channel image.
void Compare (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of two images using a specified compare operation.
void Compare (const QVImage< sShort > &src1, const QVImage< sShort > &src2, QVImage< uChar > &dest, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of two images using a specified compare operation.
void Compare (const QVImage< sFloat > &src1, const QVImage< sFloat > &src2, QVImage< uChar > &dest, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of two images using a specified compare operation.
void Compare (const QVImage< uChar, 3 > &src1, const QVImage< uChar, 3 > &src2, QVImage< uChar > &dest, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of two images using a specified compare operation.
void Compare (const QVImage< sShort, 3 > &src1, const QVImage< sShort, 3 > &src2, QVImage< uChar > &dest, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of two images using a specified compare operation.
void Compare (const QVImage< sFloat, 3 > &src1, const QVImage< sFloat, 3 > &src2, QVImage< uChar > &dest, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of two images using a specified compare operation.
void CompareC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of a source image to a given value using a specified compare operation.
void CompareC (const QVImage< sFloat > &src, QVImage< uChar > &dest, sFloat constant, IppCmpOp ippCmpOp=ippCmpEq)
 Compares pixel values of a source image to a given value using a specified compare operation.
void Convert (const QVImage< uChar, 1 > &src, QVImage< sShort, 1 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< uChar, 1 > &src, QVImage< sFloat, 1 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< sShort, 1 > &src, QVImage< uChar, 1 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< sShort, 1 > &src, QVImage< sFloat, 1 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< uChar, 3 > &src, QVImage< sShort, 3 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< uChar, 3 > &src, QVImage< sFloat, 3 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< sShort, 3 > &src, QVImage< uChar, 3 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< sShort, 3 > &src, QVImage< sFloat, 3 > &dest)
 Converts a image from one bit depth to another.
void Convert (const QVImage< sFloat, 1 > &src, QVImage< uChar, 1 > &dest, IppRoundMode roundMode=ippRndNear)
 Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.
void Convert (const QVImage< sFloat, 1 > &src, QVImage< sShort, 1 > &dest, IppRoundMode roundMode=ippRndNear)
 Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.
void Convert (const QVImage< sFloat, 3 > &src, QVImage< uChar, 3 > &dest, IppRoundMode roundMode=ippRndNear)
 Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.
void Convert (const QVImage< sFloat, 3 > &src, QVImage< sShort, 3 > &dest, IppRoundMode roundMode=ippRndNear)
 Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.
void RGBToGray (const QVImage< uChar, 3 > &src, QVImage< uChar, 1 > &dest)
 Converts an RGB image to gray-scale using fixed transform coefficients.
void RGBToGray (const QVImage< sShort, 3 > &src, QVImage< sShort, 1 > &dest)
 Converts an RGB image to gray-scale using fixed transform coefficients.
void RGBToGray (const QVImage< sFloat, 3 > &src, QVImage< sFloat, 1 > &dest)
 Converts an RGB image to gray-scale using fixed transform coefficients.
void Threshold (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant, IppCmpOp ippCmpOp=ippCmpEq)
 Performs thresholding of pixel values in an image buffer.
void Threshold (const QVImage< sShort > &src, QVImage< sShort > &dest, sShort constant, IppCmpOp ippCmpOp=ippCmpEq)
 Performs thresholding of pixel values in an image buffer.
void Threshold (const QVImage< sFloat > &src, QVImage< sFloat > &dest, sFloat constant, IppCmpOp ippCmpOp=ippCmpEq)
 Performs thresholding of pixel values in an image buffer.
void Set (QVImage< uChar > &img, uChar constant)
 Sets pixels of an image ROI to a value.
void Set (QVImage< sShort > &img, sShort constant)
 Sets pixels of an image ROI to a value.
void Set (QVImage< sFloat > &img, sFloat constant)
 Sets pixels of an image ROI to a value.
void Set (QVImage< uChar, 3 > &img, uChar red, uChar green, uChar blue)
 Sets pixels of a 3-channel image ROI to a value respective constant value, one for each channel.
void Set (QVImage< sShort, 3 > &img, sShort red, sShort green, sShort blue)
 Sets pixels of a 3-channel image ROI to a value respective constant value, one for each channel.
void Set (QVImage< sFloat, 3 > &img, sFloat red, sFloat green, sFloat blue)
 Sets pixels of a 3-channel image ROI to a value respective constant value, one for each channel.
void Abs (const QVImage< sShort > &src, QVImage< sShort > &dest)
 Computes absolute pixel values of a source image and places them into the destination image.
void Abs (const QVImage< sFloat > &src, QVImage< sFloat > &dest)
 Computes absolute pixel values of a source image and places them into the destination image.
void Not (const QVImage< uChar > &src, QVImage< uChar > &dest)
 Performs a bit-wise NOT operation on each pixel of an image.
void Not (const QVImage< uChar, 3 > &src, QVImage< uChar, 3 > &dest)
 Performs a bit-wise NOT operation on each pixel of an image.
void OrC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant)
 Performs a bit-wise inclusive OR operation between each pixel of an image and a constant.
void AndC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant)
 Performs a bit-wise AND operation between each pixel of an image and a constant.
void XorC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant)
 Performs a bit-wise exclusive OR operation between each pixel of an image and a constant.
void LShiftC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant)
 Shifts bits in pixel values to the left.
void RShiftC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant)
 Shifts bits in pixel values to the right.
void Add (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest, int scale=1)
 Adds pixel values of two images.
void Add (const QVImage< uChar, 3 > &src1, const QVImage< uChar, 3 > &src2, QVImage< uChar, 3 > &dest, int scale=1)
 Adds pixel values of two images.
void Add (const QVImage< sShort > &src1, const QVImage< sShort > &src2, QVImage< sShort > &dest, int scale=1)
 Adds pixel values of two images.
void Add (const QVImage< sShort, 3 > &src1, const QVImage< sShort, 3 > &src2, QVImage< sShort, 3 > &dest, int scale=1)
 Adds pixel values of two images.
void Add (const QVImage< sFloat > &src1, const QVImage< sFloat > &src2, QVImage< sFloat > &dest)
 Adds pixel values of two images.
void Add (const QVImage< sFloat, 3 > &src1, const QVImage< sFloat, 3 > &src2, QVImage< sFloat, 3 > &dest)
 Adds pixel values of two images.
void Sub (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest, int scale=1)
 Subtracts pixel values of two images.
void Sub (const QVImage< uChar, 3 > &src1, const QVImage< uChar, 3 > &src2, QVImage< uChar, 3 > &dest, int scale=1)
 Subtracts pixel values of two images.
void Sub (const QVImage< sShort > &src1, const QVImage< sShort > &src2, QVImage< sShort > &dest, int scale=1)
 Subtracts pixel values of two images.
void Sub (const QVImage< sShort, 3 > &src1, const QVImage< sShort, 3 > &src2, QVImage< sShort, 3 > &dest, int scale=1)
 Subtracts pixel values of two images.
void Sub (const QVImage< sFloat > &src1, const QVImage< sFloat > &src2, QVImage< sFloat > &dest)
 Subtracts pixel values of two images.
void Sub (const QVImage< sFloat, 3 > &src1, const QVImage< sFloat, 3 > &src2, QVImage< sFloat, 3 > &dest)
 Subtracts pixel values of two images.
void Mul (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest, int scale=1)
 Multiplies pixel values of two images.
void Mul (const QVImage< uChar, 3 > &src1, const QVImage< uChar, 3 > &src2, QVImage< uChar, 3 > &dest, int scale=1)
 Multiplies pixel values of two images.
void Mul (const QVImage< sShort > &src1, const QVImage< sShort > &src2, QVImage< sShort > &dest, int scale=1)
 Multiplies pixel values of two images.
void Mul (const QVImage< sShort, 3 > &src1, const QVImage< sShort, 3 > &src2, QVImage< sShort, 3 > &dest, int scale=1)
 Multiplies pixel values of two images.
void Mul (const QVImage< sFloat > &src1, const QVImage< sFloat > &src2, QVImage< sFloat > &dest)
 Multiplies pixel values of two images.
void Mul (const QVImage< sFloat, 3 > &src1, const QVImage< sFloat, 3 > &src2, QVImage< sFloat, 3 > &dest)
 Multiplies pixel values of two images.
void Div (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest, int scale=1)
 Divides pixel values of an image by pixel values of another image.
void Div (const QVImage< uChar, 3 > &src1, const QVImage< uChar, 3 > &src2, QVImage< uChar, 3 > &dest, int scale=1)
 Divides pixel values of an image by pixel values of another image.
void Div (const QVImage< sShort > &src1, const QVImage< sShort > &src2, QVImage< sShort > &dest, int scale=1)
 Divides pixel values of an image by pixel values of another image.
void Div (const QVImage< sShort, 3 > &src1, const QVImage< sShort, 3 > &src2, QVImage< sShort, 3 > &dest, int scale=1)
 Divides pixel values of an image by pixel values of another image.
void Div (const QVImage< sFloat > &src1, const QVImage< sFloat > &src2, QVImage< sFloat > &dest)
 Divides pixel values of an image by pixel values of another image.
void Div (const QVImage< sFloat, 3 > &src1, const QVImage< sFloat, 3 > &src2, QVImage< sFloat, 3 > &dest)
 Divides pixel values of an image by pixel values of another image.
void MulScale (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest)
 Multiplies pixel values of two images and scales the products.
void MulScale (const QVImage< uChar, 3 > &src1, const QVImage< uChar, 3 > &src2, QVImage< uChar, 3 > &dest)
 Multiplies pixel values of two images and scales the products.
void AbsDiff (const QVImage< uChar > &src1, const QVImage< uChar > &src2, QVImage< uChar > &dest)
 Calculates absolute difference between two images.
void AbsDiff (const QVImage< sFloat > &src1, const QVImage< sFloat > &src2, QVImage< sFloat > &dest)
 Calculates absolute difference between two images.
void MulC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant, int scale=1)
 Multiplies pixel values of an image by a constant.
void MulC (const QVImage< sShort > &src, QVImage< sShort > &dest, sShort constant, int scale=1)
 Multiplies pixel values of an image by a constant.
void MulC (const QVImage< sFloat > &src, QVImage< sFloat > &dest, sFloat constant)
 Multiplies pixel values of an image by a constant.
void AddC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant, int scale=1)
 Adds a constant to pixel values of an image.
void AddC (const QVImage< sShort > &src, QVImage< sShort > &dest, sShort constant, int scale=1)
 Adds a constant to pixel values of an image.
void AddC (const QVImage< sFloat > &src, QVImage< sFloat > &dest, sFloat constant)
 Adds a constant to pixel values of an image.
void SubC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant, int scale=1)
 Subtracts a constant from pixel values of an image.
void SubC (const QVImage< sShort > &src, QVImage< sShort > &dest, sShort constant, int scale=1)
 Subtracts a constant from pixel values of an image.
void SubC (const QVImage< sFloat > &src, QVImage< sFloat > &dest, sFloat constant)
 Subtracts a constant from pixel values of an image.
void DivC (const QVImage< uChar > &src, QVImage< uChar > &dest, uChar constant, int scale=1)
 Divides pixel values of an image by a constant.
void DivC (const QVImage< sShort > &src, QVImage< sShort > &dest, sShort constant, int scale=1)
 Divides pixel values of an image by a constant.
void DivC (const QVImage< sFloat > &src, QVImage< sFloat > &dest, sFloat constant)
 Divides pixel values of an image by a constant.
void Sum (const QVImage< uChar > &src, sDouble &value)
 Computes the sum of image pixel values.
void Sum (const QVImage< sShort > &src, sDouble &value)
 Computes the sum of image pixel values.
void Sum (const QVImage< uChar, 3 > &src, sDouble &r, sDouble &g, sDouble &b)
 Computes the sum of image pixel values, by separate planes.
void Sum (const QVImage< sShort, 3 > &src, sDouble &r, sDouble &g, sDouble &b)
 Computes the sum of image pixel values, by separate planes.
void Mean (const QVImage< uChar > &src, sDouble &value)
 Computes the mean of image pixel values.
void Mean (const QVImage< sShort > &src, sDouble &value)
 Computes the mean of image pixel values.
void Mean (const QVImage< uChar, 3 > &src, sDouble &r, sDouble &g, sDouble &b)
 Computes the mean of image pixel values, by separate planes.
void Mean (const QVImage< sShort, 3 > &src, sDouble &r, sDouble &g, sDouble &b)
 Computes the mean of image pixel values, by separate planes.
void Max (const QVImage< uChar > &src, uChar &value)
 Computes the maximum of image pixel values.
void Max (const QVImage< sShort > &src, sShort &value)
 Computes the maximum of image pixel values.
void Max (const QVImage< sFloat > &src, sFloat &value)
 Computes the maximum of image pixel values.
void Max (const QVImage< uChar, 3 > &src, uChar &r, uChar &g, uChar &b)
 Computes the maximum of image pixel values, by separate planes.
void Max (const QVImage< sShort, 3 > &src, sShort &r, sShort &g, sShort &b)
 Computes the maximum of image pixel values, by separate planes.
void Min (const QVImage< uChar > &src, uChar &value)
 Computes the minimum of image pixel values.
void Min (const QVImage< sShort > &src, sShort &value)
 Computes the minimum of image pixel values.
void Min (const QVImage< sFloat > &src, sFloat &value)
 Computes the minimum of image pixel values.
void Min (const QVImage< uChar, 3 > &src, uChar &r, uChar &g, uChar &b)
 Computes the minimum of image pixel values, by separate planes.
void Min (const QVImage< sShort, 3 > &src, sShort &r, sShort &g, sShort &b)
 Computes the minimum of image pixel values, by separate planes.
void FilterMax (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt colMaskSize, uInt rowMaskSize)
 Applies the max filter to an image.
void FilterMax (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt colMaskSize, uInt rowMaskSize)
 Applies the max filter to an image.
void FilterMin (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt colMaskSize, uInt rowMaskSize)
 Applies the min filter to an image.
void FilterMin (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt colMaskSize, uInt rowMaskSize)
 Applies the min filter to an image.
void FilterBox (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt colMaskRadius, uInt rowMaskRadius)
 Blurs an image using a simple box filter.
void FilterBox (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt colMaskRadius, uInt rowMaskRadius)
 Blurs an image using a simple box filter.
void FilterGauss (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt maskSize)
 Filters an image using a Gaussian kernel.
void FilterGauss (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt maskSize)
 Filters an image using a Gaussian kernel.
void FilterHipass (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt maskSize=3)
 Filters an image using a high-pass filter.
void FilterHipass (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt maskSize=3)
 Filters an image using a high-pass filter.
void FilterLowpass (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt maskSize=3)
 Filters an image using a lowpass filter.
void FilterLowpass (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt maskSize=3)
 Filters an image using a lowpass filter.
void FilterSharpen (const QVImage< uChar > &src, QVImage< uChar > &dest)
 Filters an image using a sharpening filter.
void FilterSharpen (const QVImage< sFloat > &src, QVImage< sFloat > &dest)
 Filters an image using a sharpening filter.
void FilterSobelHoriz (const QVImage< uChar > &src, QVImage< uChar > &dest)
 Filters an image using a horizontal Sobel kernel.
void FilterSobelHoriz (const QVImage< sShort > &src, QVImage< sShort > &dest)
 Filters an image using a horizontal Sobel kernel.
void FilterSobelHoriz (const QVImage< sFloat > &src, QVImage< sFloat > &dest)
 Filters an image using a horizontal Sobel kernel.
void FilterSobelVert (const QVImage< uChar > &src, QVImage< uChar > &dest)
 Filters an image using a vertical Sobel kernel.
void FilterSobelVert (const QVImage< sShort > &src, QVImage< sShort > &dest)
 Filters an image using a vertical Sobel kernel.
void FilterSobelVert (const QVImage< sFloat > &src, QVImage< sFloat > &dest)
 Filters an image using a vertical Sobel kernel.
void FilterSobelHorizMask (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt maskSize=3)
 Filters an image using a horizontal Sobel kernel.
void FilterSobelVertMask (const QVImage< sFloat > &src, QVImage< sFloat > &dest, uInt maskSize=3)
 Filters an image using a vertical Sobel kernel.
void FilterSobelHorizBorder (const QVImage< uChar > &src, QVImage< sShort > &dest, QVImage< uChar > &buffer, uInt maskSize=3)
 Applies horizontal Sobel filter with border.
void FilterSobelNegVertBorder (const QVImage< uChar > &src, QVImage< sShort > &dest, QVImage< uChar > &buffer, uInt maskSize=3)
 Applies vertical Sobel filter with border.
void FilterMedian (const QVImage< uChar > &src, QVImage< uChar > &dest, uInt colMaskRadius=3, uInt rowMaskRadius=3)
 Filters an image using a median filter.
void FilterMedian (const QVImage< sShort > &src, QVImage< sShort > &dest, uInt colMaskRadius=3, uInt rowMaskRadius=3)
 Filters an image using a median filter.
void Resize (const QVImage< uChar > &src, QVImage< uChar > &dest, int interpolation=IPPI_INTER_LINEAR)
 Changes an image size.
void Resize (const QVImage< sFloat > &src, QVImage< sFloat > &dest, int interpolation=IPPI_INTER_LINEAR)
 Changes an image size.
void FilterSobelHorizGetBufferSize (const QVGenericImage &src, QVImage< uChar > &buffer, uInt maskSize=3)
 Allocates size in a buffer image for temporary data for function FilterSobelHoriz.
void FilterSobelNegVertGetBufferSize (const QVGenericImage &src, QVImage< uChar > &buffer, uInt maskSize=3)
 Allocates size in a buffer image for temporary data for function FilterSobelNegVert.
void FloodFillRange (QVImage< uChar > &img, QVImage< uChar > &buffer, uInt seedX, uInt seedY, uChar newVal, uChar minDelta, uChar maxDelta)
 Performs flood filling of pixels with values in the specified range in the connected area on an image.


Function Documentation

void qvipp::Abs ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest 
)

Computes absolute pixel values of a source image and places them into the destination image.

See also:
Not(const QVImage<sShort> &, QVImage<sShort> &)

void qvipp::Abs ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest 
)

Computes absolute pixel values of a source image and places them into the destination image.

Parameters:
src source image.
dest destination image.

void qvipp::AbsDiff ( const QVImage< sFloat > &  src1,
const QVImage< sFloat > &  src2,
QVImage< sFloat > &  dest 
)

Calculates absolute difference between two images.

See also:
AbsDiff(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::AbsDiff ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest 
)

Calculates absolute difference between two images.

This function calculates the absolute pixel-wise difference between two images by the formula:

dest(x,y) = abs(src1(x,y) - src2(x,y)) 

Parameters:
src1 source image to use pixels as first operands in subtraction.
src2 source image to use pixels as second operands in subtraction.
dest destination image to hold result pixels of operation.

void qvipp::Add ( const QVImage< sFloat, 3 > &  src1,
const QVImage< sFloat, 3 > &  src2,
QVImage< sFloat, 3 > &  dest 
)

Adds pixel values of two images.

See also:
Add(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Add ( const QVImage< sFloat > &  src1,
const QVImage< sFloat > &  src2,
QVImage< sFloat > &  dest 
)

Adds pixel values of two images.

See also:
Add(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Add ( const QVImage< sShort, 3 > &  src1,
const QVImage< sShort, 3 > &  src2,
QVImage< sShort, 3 > &  dest,
int  scale = 1 
)

Adds pixel values of two images.

See also:
Add(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Add ( const QVImage< sShort > &  src1,
const QVImage< sShort > &  src2,
QVImage< sShort > &  dest,
int  scale = 1 
)

Adds pixel values of two images.

See also:
Add(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Add ( const QVImage< uChar, 3 > &  src1,
const QVImage< uChar, 3 > &  src2,
QVImage< uChar, 3 > &  dest,
int  scale = 1 
)

Adds pixel values of two images.

See also:
Add(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Add ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest,
int  scale = 1 
)

Adds pixel values of two images.

This function adds corresponding pixel values of two source image buffers and places the results in a destination buffer. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src1 source image to use pixels as first operands in add.
src2 source image to use pixels as second operands in add.
dest destination image to hold result pixels of add.
scale value to perform scaling of resulting pixel values, for integer bit depth.

void qvipp::AddC ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
sFloat  constant 
)

Adds a constant to pixel values of an image.

See also:
AddC(const QVImage<uChar> &, QVImage<uChar> &, uChar, int scale)

void qvipp::AddC ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest,
sShort  constant,
int  scale = 1 
)

Adds a constant to pixel values of an image.

See also:
AddC(const QVImage<uChar> &, QVImage<uChar> &, uChar, int scale)

void qvipp::AddC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant,
int  scale = 1 
)

Adds a constant to pixel values of an image.

This function changes the image intensity by adding the value to image pixel values. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src source image to use pixels as first operands in add.
dest destination image to hold result pixels of add.
constant value to use as second operand in add.
scale value to perform scaling of resulting pixel values, for integer bit depth.

void qvipp::AndC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant 
)

Performs a bit-wise AND operation between each pixel of an image and a constant.

Parameters:
src source image to perform bit-wise AND operation on.
dest destination image to hold result of bit-wise operation.
constant value to perform bit-wise operation with.

void qvipp::Canny ( QVImage< sFloat > &  dX,
QVImage< sFloat > &  dY,
QVImage< uChar > &  dest,
QVImage< uChar > &  buffer,
double  low = 50.0,
double  high = 150.0 
)

Performs Canny algorithm for edge detection.

See also:
Canny(QVImage<sShort> &, QVImage<sShort> &, QVImage<uChar> &, QVImage<uChar> &, double, double)

Definition at line 536 of file qvipp.cpp.

References Canny(), CHECK_COMPATIBLE_IMAGES, QVGenericImage::getAnchor(), QVGenericImage::getROI(), QVImage< Type, Planes >::getStep(), QVImage< Type, Planes >::getWriteData(), IMAGE_ROISIZE, IPP_DEBUG, PDATA_WRITE, and QVGenericImage::setROI().

void qvipp::Canny ( QVImage< sShort > &  dX,
QVImage< sShort > &  dY,
QVImage< uChar > &  dest,
QVImage< uChar > &  buffer,
double  low = 50.0,
double  high = 150.0 
)

Performs Canny algorithm for edge detection.

This function finds edges in the source image ROI and stores them into the output image dest using the Canny algorithm.

The function requires a temporary buffer image, that should have been initialized with CannyGetSize function.

Images dX and dY should be filtered images from the original, from which we desire to obtain the contours, using horizontal and vertical Sobel filters.

A code example of a full canny extractor, given a source image, is described in the code below:

        [...]

        QVImage<sFloat> imageFloat(cols, rows), dX(cols, rows), dY(cols, rows);
        QVImage<uChar>  canny(cols, rows), buffer;

        qvipp::Convert(image, imageFloat);
        qvipp::FilterSobelHorizMask(imageFloat,dY,3);
        qvipp::FilterSobelVertMask(imageFloat,dX,3);
        qvipp::CannyGetSize(canny, buffer);
        qvipp::Canny(dX, dY, canny, buffer);

        [...]

Parameters:
dX source image x-derivative.
dY source image y-derivative.
dest output image of the detected edges.
buffer image to hold temporary data during function operations.
low lower threshold for edges detection.
high upper threshold for edges detection.
See also:
CannyGetSize

FilterSobelHoriz

FilterSobelVert

FilterSobelHorizBorder

FilterSobelNegVertBorder

Definition at line 522 of file qvipp.cpp.

References CHECK_COMPATIBLE_IMAGES, QVGenericImage::getAnchor(), QVGenericImage::getROI(), QVImage< Type, Planes >::getStep(), QVImage< Type, Planes >::getWriteData(), IMAGE_ROISIZE, IPP_DEBUG, PDATA_WRITE, and QVGenericImage::setROI().

Referenced by Canny().

void qvipp::CannyGetSize ( const QVGenericImage src,
QVImage< uChar > &  buffer 
)

Allocates size in a buffer image for temporary data for function Canny.

This function should be applied to any QVImage<uChar> image to be used as a buffer image for function Canny. Initializes dimensions for that buffer image, appropriated for canny algorithm.

Parameters:
src source image to apply later Canny operator.
buffer buffer image to initialize for further operations.
See also:
Canny

Definition at line 515 of file qvipp.cpp.

References IMAGE_ROISIZE, and IPP_DEBUG.

Referenced by FastMarchingGetBufferSize(), and FloodFillGetSize().

void qvipp::Compare ( const QVImage< sFloat, 3 > &  src1,
const QVImage< sFloat, 3 > &  src2,
QVImage< uChar > &  dest,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of two images using a specified compare operation.

See also:
void Compare(const QVImage<uChar> &, const QVImage<uChar> &src2, QVImage<uChar> &, IppCmpOp)

void qvipp::Compare ( const QVImage< sShort, 3 > &  src1,
const QVImage< sShort, 3 > &  src2,
QVImage< uChar > &  dest,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of two images using a specified compare operation.

See also:
void Compare(const QVImage<uChar> &, const QVImage<uChar> &src2, QVImage<uChar> &, IppCmpOp)

void qvipp::Compare ( const QVImage< uChar, 3 > &  src1,
const QVImage< uChar, 3 > &  src2,
QVImage< uChar > &  dest,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of two images using a specified compare operation.

See also:
void Compare(const QVImage<uChar> &, const QVImage<uChar> &src2, QVImage<uChar> &, IppCmpOp)

void qvipp::Compare ( const QVImage< sFloat > &  src1,
const QVImage< sFloat > &  src2,
QVImage< uChar > &  dest,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of two images using a specified compare operation.

See also:
void Compare(const QVImage<uChar> &, const QVImage<uChar> &src2, QVImage<uChar> &, IppCmpOp)

void qvipp::Compare ( const QVImage< sShort > &  src1,
const QVImage< sShort > &  src2,
QVImage< uChar > &  dest,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of two images using a specified compare operation.

See also:
void Compare(const QVImage<uChar> &, const QVImage<uChar> &src2, QVImage<uChar> &, IppCmpOp)

void qvipp::Compare ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of two images using a specified compare operation.

This function compares the corresponding pixels of ROI in two source images src1, src2 using the ippCmpOp compare operation, and writes the results to a 1-channel uChar image dest.

If the result of the compare is true, the corresponding output pixel is set to an IPP_MAX_8U value; otherwise, it is set to 0.

Parameters:
src1 first operand in comparison image.
src2 second operand in comparison image.
dest image to store comparison value pixels.
ippCmpOp Compare operation to be used for comparing the pixel values. Must be one of these enumerated values:
  • ippCmpLess, for less comparison
  • ippCmpLessEq, for less or equal comparison
  • ippCmpEq, for equal comparison
  • ippCmpGreaterEq, for greater or equal comparison
  • ippCmpGreater, for greater comparison

void qvipp::CompareC ( const QVImage< sFloat > &  src,
QVImage< uChar > &  dest,
sFloat  constant,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of a source image to a given value using a specified compare operation.

See also:
CompareC(const QVImage<uChar> &, QVImage<uChar> &, uChar, IppCmpOp ippCmpOp)

void qvipp::CompareC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Compares pixel values of a source image to a given value using a specified compare operation.

This function compares pixels of the each channel of the source image ROI src to a given value specified for each channel using the ippCmpOp compare operation, and writes the results to a 1-channel Ipp8u image dest.

If the result of the compare is true, that is all pixels of all channels satisfy to the specified condition, then the corresponding output pixel is set to an IPP_MAX_8U value; otherwise, it is set to 0.

Parameters:
src image to compare pixel values.
dest image to store pixel comparison values.
constant value to compare each pixel value.
ippCmpOp Compare operation to be used for comparing the pixel values. Must be one of these enumerated values:
  • ippCmpLess, for less comparison
  • ippCmpLessEq, for less or equal comparison
  • ippCmpEq, for equal comparison
  • ippCmpGreaterEq, for greater or equal comparison
  • ippCmpGreater, for greater comparison

void qvipp::Convert ( const QVImage< sFloat, 3 > &  src,
QVImage< sShort, 3 > &  dest,
IppRoundMode  roundMode = ippRndNear 
)

Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.

See also:
Convert(const QVImage<sFloat, 1> &, QVImage<uChar, 1> &, IppRoundMode)

void qvipp::Convert ( const QVImage< sFloat, 3 > &  src,
QVImage< uChar, 3 > &  dest,
IppRoundMode  roundMode = ippRndNear 
)

Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.

See also:
Convert(const QVImage<sFloat, 1> &, QVImage<uChar, 1> &, IppRoundMode)

void qvipp::Convert ( const QVImage< sFloat, 1 > &  src,
QVImage< sShort, 1 > &  dest,
IppRoundMode  roundMode = ippRndNear 
)

Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.

See also:
Convert(const QVImage<sFloat, 1> &, QVImage<uChar, 1> &, IppRoundMode)

void qvipp::Convert ( const QVImage< sFloat, 1 > &  src,
QVImage< uChar, 1 > &  dest,
IppRoundMode  roundMode = ippRndNear 
)

Converts a image from a floating point bit depth to a integer bit depth, using a given round mode.

This function converts pixel values in the source image ROI pSrc to a different bit depth and writes them to the destination image ROI pDst. No scaling is done.

Rounding defined by roundMode is performed, and the result is saturated to the destination data type range.

Parameters:
src image to convert bit depth.
dest image to store resulting bit depth image conversion.
roundMode specified round mode. Possible values for the enumeration are:
  • ippRndZero. Specifies that floating-point values must be truncated toward zero.
  • ippRndNear. Specifies that floating-point values must be rounded to the nearest integer.

void qvipp::Convert ( const QVImage< sShort, 3 > &  src,
QVImage< sFloat, 3 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< sShort, 3 > &  src,
QVImage< uChar, 3 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< uChar, 3 > &  src,
QVImage< sFloat, 3 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< uChar, 3 > &  src,
QVImage< sShort, 3 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< sShort, 1 > &  src,
QVImage< sFloat, 1 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< sShort, 1 > &  src,
QVImage< uChar, 1 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< uChar, 1 > &  src,
QVImage< sFloat, 1 > &  dest 
)

Converts a image from one bit depth to another.

See also:
Convert(const QVImage<uChar, 1> &, QVImage<sShort, 1> &)

void qvipp::Convert ( const QVImage< uChar, 1 > &  src,
QVImage< sShort, 1 > &  dest 
)

Converts a image from one bit depth to another.

This function converts pixel values in the source image ROI pSrc to a different bit depth and writes them to the destination image ROI pDst. No scaling is done.

Parameters:
src image to convert bit depth.
dest image to store resulting bit depth image conversion.

void qvipp::Copy ( const QVImage< sFloat, 1 > &  src,
QVImage< sFloat, 3 > &  dest 
)

Copies pixel values from a 1-channel image to all of the channels for a 3-channel image.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 3> &)

void qvipp::Copy ( const QVImage< sShort, 1 > &  src,
QVImage< sShort, 3 > &  dest 
)

Copies pixel values from a 1-channel image to all of the channels for a 3-channel image.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 3> &)

void qvipp::Copy ( const QVImage< uChar, 1 > &  src,
QVImage< uChar, 3 > &  dest 
)

Copies pixel values from a 1-channel image to all of the channels for a 3-channel image.

This function copies data from a source 1-channel image ROI src, to each of the channels of the destination 3-channel image ROI dest.

Parameters:
src source image.
dest destination image.

void qvipp::Copy ( const QVImage< sFloat, 3 > &  src,
QVImage< sFloat, 3 > &  dest 
)

Copies pixel values between two images.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 1> &)

void qvipp::Copy ( const QVImage< sShort, 3 > &  src,
QVImage< sShort, 3 > &  dest 
)

Copies pixel values between two images.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 1> &)

void qvipp::Copy ( const QVImage< uChar, 3 > &  src,
QVImage< uChar, 3 > &  dest 
)

Copies pixel values between two images.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 1> &)

void qvipp::Copy ( const QVImage< sFloat, 1 > &  src,
QVImage< sFloat, 1 > &  dest 
)

Copies pixel values between two images.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 1> &)

void qvipp::Copy ( const QVImage< sShort, 1 > &  src,
QVImage< sShort, 1 > &  dest 
)

Copies pixel values between two images.

See also:
Copy(const QVImage<uChar, 1> &, QVImage<uChar, 1> &)

void qvipp::Copy ( const QVImage< uChar, 1 > &  src,
QVImage< uChar, 1 > &  dest 
)

Copies pixel values between two images.

This function copies data from a source image ROI src to the destination image ROI dest.

Parameters:
src source image.
dest destination image.

void qvipp::Div ( const QVImage< sFloat, 3 > &  src1,
const QVImage< sFloat, 3 > &  src2,
QVImage< sFloat, 3 > &  dest 
)

Divides pixel values of an image by pixel values of another image.

See also:
Div(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Div ( const QVImage< sFloat > &  src1,
const QVImage< sFloat > &  src2,
QVImage< sFloat > &  dest 
)

Divides pixel values of an image by pixel values of another image.

See also:
Div(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Div ( const QVImage< sShort, 3 > &  src1,
const QVImage< sShort, 3 > &  src2,
QVImage< sShort, 3 > &  dest,
int  scale = 1 
)

Divides pixel values of an image by pixel values of another image.

See also:
Div(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Div ( const QVImage< sShort > &  src1,
const QVImage< sShort > &  src2,
QVImage< sShort > &  dest,
int  scale = 1 
)

Divides pixel values of an image by pixel values of another image.

See also:
Div(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Div ( const QVImage< uChar, 3 > &  src1,
const QVImage< uChar, 3 > &  src2,
QVImage< uChar, 3 > &  dest,
int  scale = 1 
)

Divides pixel values of an image by pixel values of another image.

See also:
Div(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Div ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest,
int  scale = 1 
)

Divides pixel values of an image by pixel values of another image.

This function divides corresponding pixel values of two source image buffers and places the results in a destination buffer. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src1 source image to use pixels as dividends in division.
src2 source image to use pixels as divisors in division.
dest destination image to hold result pixels of division.
scale value to perform scaling of resulting pixel values, for integer bit depth.

void qvipp::DivC ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
sFloat  constant 
)

Divides pixel values of an image by a constant.

See also:
DivC(const QVImage<uChar> &, QVImage<uChar> &, uChar, int)

void qvipp::DivC ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest,
sShort  constant,
int  scale = 1 
)

Divides pixel values of an image by a constant.

See also:
DivC(const QVImage<uChar> &, QVImage<uChar> &, uChar, int)

void qvipp::DivC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant,
int  scale = 1 
)

Divides pixel values of an image by a constant.

This function changes image intensity by dividing pixel values of an image buffer by the constant value. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src source image to use pixels as first operands in multiplication.
dest destination image to hold result pixels of multiplication.
constant value to use as second operand in multiplication.
scale value to perform scaling of resulting pixel values, for integer bit depth.

void qvipp::FastMarching ( const QVImage< uChar > &  mask,
QVImage< sFloat > &  distances,
int  radius,
QVImage< uChar > &  buffer 
)

Calculates distance transform to closest zero pixel for all non-zero pixels of source image using fast marching method.

This function computes the distance from the closest zero pixel to each image pixel according to the Fast Marching Method (FMM). For further info, see:

A.Telea. An Image Inprinting Technique Based on the Fast Marching Method. Journal of Graphic Tools, vol.9, No.1. ACM Press, 2004.

Parameters:
mask source image to obtain distances to closest zero pixel.
distances image to hold distances to closest zero pixel.
radius Radius of the neighborhood of the marked area.
buffer image to hold temporary data during function operations.
See also:
FastMarchingGetBufferSize

Definition at line 572 of file qvipp.cpp.

References QVGenericImage::getAnchor(), QVGenericImage::getROI(), QVImage< Type, Planes >::getStep(), QVImage< Type, Planes >::getWriteData(), IMAGE_ROISIZE, IPP_DEBUG, PDATA_READ, PDATA_WRITE, and QVGenericImage::setROI().

void qvipp::FastMarchingGetBufferSize ( const QVGenericImage image,
QVImage< uChar > &  buffer 
)

Allocates size in a buffer image for temporary data for function FastMarching.

This function should be applied to any QVImage<uChar> image to be used as a buffer image for function FastMarching. Initializes dimensions for that buffer image, appropriated for that algorithm.

Parameters:
image source image to apply Fast Marching algorithm.
buffer buffer image to initialize for further operations.
See also:
FastMarching

Definition at line 565 of file qvipp.cpp.

References CannyGetSize(), IMAGE_ROISIZE, and IPP_DEBUG.

void qvipp::FilterBox ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  colMaskRadius,
uInt  rowMaskRadius 
)

Blurs an image using a simple box filter.

See also:
FilterBox(const QVImage<uChar> &, QVImage<uChar> &, uInt, uInt)

void qvipp::FilterBox ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  colMaskRadius,
uInt  rowMaskRadius 
)

Blurs an image using a simple box filter.

This function sets each pixel in the output image as the average of all the input image pixels in the rectangular neighborhood of size mask size given.

This has the effect of smoothing or blurring the input image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
colMaskSize mask width.
rowMaskSize mask height.

void qvipp::FilterGauss ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  maskSize 
)

Filters an image using a Gaussian kernel.

See also:
FilterGauss(const QVImage<uChar> &, QVImage<uChar> &, uInt)

void qvipp::FilterGauss ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  maskSize 
)

Filters an image using a Gaussian kernel.

This function applies a lowpass Gaussian filter to an image ROI. The corresponding kernel is the matrix of either 3x3 or 5x5 size. The 3x3 filter uses the kernel:

$ \left| \begin{array}{ccc} 1/16 & 2/16 & 1/16 \\ 2/16 & 4/16 & 2/16 \\ 1/16 & 2/16 & 1/16 \\ \end{array} \right| $

These filter coefficients correspond to a 2-dimensional Gaussian distribution with standard deviation 0.85.

The 5x5 filter uses the kernel:

$ \left| \begin{array}{ccccc} 2/571 & 7/571 & 12/571 & 7/571 & 2/571 \\ 7/571 & 31/571 & 52/571 & 31/571 & 7/571 \\ 12/571 & 52/571 & 127/571 & 52/571 & 12/571 \\ 7/571 & 31/571 & 52/571 & 31/571 & 7/571 \\ 2/571 & 7/571 & 12/571 & 7/571 & 2/571 \\ \end{array} \right| $

These filter coefficients correspond to a 2-dimensional Gaussian distribution with standard deviation 1.0.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).

void qvipp::FilterHipass ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  maskSize = 3 
)

Filters an image using a high-pass filter.

See also:
FilterHipass(const QVImage<uChar> &, QVImage<uChar> &, uInt)

void qvipp::FilterHipass ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  maskSize = 3 
)

Filters an image using a high-pass filter.

This function applies a high-pass filter to an image ROI. The corresponding kernel is the matrix of either 3x3 or 5x5 size with the following values:

$ \left| \begin{array}{ccc} -1 & -1 & -1 \\ -1 & +8 & -1 \\ -1 & -1 & -1 \\ \end{array} \right| $

for 3x3 size, or

$ \left| \begin{array}{ccccc} -1 & -1 & -1 & -1 & -1 \\ -1 & -1 & -1 & -1 & -1 \\ -1 & -1 & +24 & -1 & -1 \\ -1 & -1 & -1 & -1 & -1 \\ -1 & -1 & -1 & -1 & -1 \\ \end{array} \right| $

For 5x5 size. This filter attenuates low-frequency components and thus sharpens an image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).

void qvipp::FilterLowpass ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  maskSize = 3 
)

Filters an image using a lowpass filter.

See also:
FilterLowpass(const QVImage<uChar> &, QVImage<uChar> &, uInt)

void qvipp::FilterLowpass ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  maskSize = 3 
)

Filters an image using a lowpass filter.

This filter blurs an image by averaging the pixel values over some neighborhood. It works similar to FilterBox function, but uses two fixed mask sizes: 3x3, or 5x5.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).

void qvipp::FilterMax ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  colMaskSize,
uInt  rowMaskSize 
)

Applies the max filter to an image.

See also:
FilterMax(const QVImage<uChar> &, QVImage<uChar> &, uInt, uInt)

void qvipp::FilterMax ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  colMaskSize,
uInt  rowMaskSize 
)

Applies the max filter to an image.

This function sets each pixel in the destination image to the maximum value of all the source image pixel values in the neighborhood of mask size given.

This has the effect of increasing the contrast in the image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
colMaskSize mask width.
rowMaskSize mask height.

void qvipp::FilterMedian ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest,
uInt  colMaskRadius = 3,
uInt  rowMaskRadius = 3 
)

Filters an image using a median filter.

See also:
FilterMedian(const QVImage<uChar> &, QVImage<uChar> &, uInt, uInt)

void qvipp::FilterMedian ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  colMaskRadius = 3,
uInt  rowMaskRadius = 3 
)

Filters an image using a median filter.

This function sets each pixel in the output buffer as the median value of all the input pixel values taken in the neighborhood of the processed pixel.

This filter removes noise and does not cut out signal brightness drops, as an averaging filter does.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
colMaskSize mask width.
rowMaskSize mask height.

void qvipp::FilterMin ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  colMaskSize,
uInt  rowMaskSize 
)

Applies the min filter to an image.

See also:
FilterMin(const QVImage<uChar> &, QVImage<uChar> &, uInt, uInt)

void qvipp::FilterMin ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uInt  colMaskSize,
uInt  rowMaskSize 
)

Applies the min filter to an image.

This function sets each pixel in the destination image to the minimum value of all the source image pixel values in the neighborhood of mask size given.

This has the effect of decreasing the contrast in the image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
colMaskSize mask width.
rowMaskSize mask height.

void qvipp::FilterSharpen ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest 
)

Filters an image using a sharpening filter.

See also:
FilterSharpen(const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::FilterSharpen ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest 
)

Filters an image using a sharpening filter.

This function applies a sharpening filter to an image ROI. The corresponding kernel is the matrix of 3x3 size with the following values:

$ \left| \begin{array}{ccc} -1/8 & -1/8 & -1/8 \\ -1/8 & 16/8 & -1/8 \\ -1/8 & -1/8 & -1/8 \\ \end{array} \right| $

This filter enhances high-frequency components and thus sharpens an image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.

void qvipp::FilterSobelHoriz ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest 
)

Filters an image using a horizontal Sobel kernel.

See also:
FilterSobelHoriz(const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::FilterSobelHoriz ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest 
)

Filters an image using a horizontal Sobel kernel.

See also:
FilterSobelHoriz(const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::FilterSobelHoriz ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest 
)

Filters an image using a horizontal Sobel kernel.

This function apply a horizontal Sobel operator to an image ROI.

This filter has the effect of both enhancing and smoothing horizontal edges of an image.

Warning: this function is not working properly. It will be repaired, for now better use function FilterSobelHorizMask

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.

void qvipp::FilterSobelHorizBorder ( const QVImage< uChar > &  src,
QVImage< sShort > &  dest,
QVImage< uChar > &  buffer,
uInt  maskSize = 3 
)

Applies horizontal Sobel filter with border.

This function is similar to FilterSobelHorizMask, but automatically creates a required border and define appropriate pixel values.

Function FilterSobelHorizGetBufferSize should be used to initialize sizes for a buffer QVImage<uChar> image, which will hold temporary data for the function operations.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
buffer buffer image to hold temporal data during function operation.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).
See also:
FilterSobelHorizGetBufferSize

void qvipp::FilterSobelHorizGetBufferSize ( const QVGenericImage src,
QVImage< uChar > &  buffer,
uInt  maskSize = 3 
)

Allocates size in a buffer image for temporary data for function FilterSobelHoriz.

This function should be applied to any QVImage<uChar> image to be used as a buffer image for function FilterSobelHoriz. Initializes dimensions for that buffer image, appropriated for that algorithm.

Parameters:
src source image to apply later filter.
buffer buffer image to initialize for further operations.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).
See also:
FilterSobelHoriz

void qvipp::FilterSobelHorizMask ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  maskSize = 3 
)

Filters an image using a horizontal Sobel kernel.

This function apply a horizontal Sobel operator to an image ROI.

The appropriate kernel is the matrix of 3x3 size, or either 3x3 or 5x5 size in accordance with mask parameter of the corresponding function flavors. The kernels have the following values:

$ \left| \begin{array}{ccc} 1 & 2 & 1 \\ 0 & 0 & 0 \\ -1 & -2 & -1 \\ \end{array} \right| $

for 3x3 size, or

$ \left| \begin{array}{ccccc} 1 & 4 & 6 & 4 & 1 \\ 2 & 8 & 12 & 8 & 2 \\ 0 & 0 & 0 & 0 & 0 \\ -2 & -8 & -12 & -8 & -2 \\ -1 & -4 & -6 & -4 & -1 \\ \end{array} \right| $

For 5x5 size. This filter has the effect of both enhancing and smoothing horizontal edges of an image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).

Referenced by qvdta::SobelCornerResponseImage().

void qvipp::FilterSobelNegVertBorder ( const QVImage< uChar > &  src,
QVImage< sShort > &  dest,
QVImage< uChar > &  buffer,
uInt  maskSize = 3 
)

Applies vertical Sobel filter with border.

This function is similar to FilterSobelVertMask, but uses negative values for the mask applied, and automatically create a required border and define appropriate pixel values.

Function FilterSobelNegVertGetBufferSize should be used to initialize sizes for a buffer QVImage<uChar> image, which will hold temporary data for the function operations.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
buffer buffer image to hold temporal data during function operation.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).
See also:
FilterSobelNegVertGetBufferSize

void qvipp::FilterSobelNegVertGetBufferSize ( const QVGenericImage src,
QVImage< uChar > &  buffer,
uInt  maskSize = 3 
)

Allocates size in a buffer image for temporary data for function FilterSobelNegVert.

This function should be applied to any QVImage<uChar> image to be used as a buffer image for function FilterSobelNegVert. Initializes dimensions for that buffer image, appropriated for that algorithm.

Parameters:
src source image to apply later filter.
buffer buffer image to initialize for further operations.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).
See also:
FilterSobelNegVert

void qvipp::FilterSobelVert ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest 
)

Filters an image using a vertical Sobel kernel.

See also:
FilterSobelVert(const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::FilterSobelVert ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest 
)

Filters an image using a vertical Sobel kernel.

See also:
FilterSobelVert(const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::FilterSobelVert ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest 
)

Filters an image using a vertical Sobel kernel.

This function apply a vertical Sobel operator to an image ROI.

This filter has the effect of both enhancing and smoothing vertical edges of an image.

Warning: this function is not working properly. It will be repaired, for now better use function FilterSobelVertMask

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.

void qvipp::FilterSobelVertMask ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
uInt  maskSize = 3 
)

Filters an image using a vertical Sobel kernel.

This function apply a vertical Sobel operator to an image ROI. The appropriate kernel is the matrix of 3x3 size, or either 3x3 or 5x5 size in accordance with mask parameter of the corresponding function flavors. The kernels have the following values:

$ \left| \begin{array}{ccc} -1 & 0 & 1 \\ -2 & 0 & 2 \\ -1 & 0 & 1 \\ \end{array} \right| $

for 3x3 size, or

$ \left| \begin{array}{ccccc} -1 & -2 & 0 & 2 & 1 \\ -4 & -8 & 0 & 8 & 4 \\ -6 & -12 & 0 & 12 & 6 \\ -4 & -8 & 0 & 8 & 4 \\ -1 & -2 & 0 & 2 & 1 \\ \end{array} \right| $

For 5x5 size. This filter has the effect of both enhancing and smoothing vertical edges of an image.

Parameters:
src source image to filter.
dest destination image to hold the resulting image after filtering.
maskSize size of mask. Should be 3 (for mask of size 3x3) or 5 (for mask of size 5x5).

Referenced by qvdta::SobelCornerResponseImage().

void qvipp::FloodFillGetSize ( const QVGenericImage src,
QVImage< uChar > &  buffer 
)

Allocates size in a buffer image for temporary data for function family FloodFill.

This function should be applied to any QVImage<uChar> image to be used as a buffer image for function family FloodFill. Initializes dimensions for that buffer image, appropriated for that algorithm.

Parameters:
src source image to apply later flood fill function.
buffer buffer image to initialize for further operations.
See also:
FloodFillRange

Definition at line 648 of file qvipp.cpp.

References CannyGetSize(), IMAGE_ROISIZE, and IPP_DEBUG.

void qvipp::FloodFillRange ( QVImage< uChar > &  img,
QVImage< uChar > &  buffer,
uInt  seedX,
uInt  seedY,
uChar  newVal,
uChar  minDelta,
uChar  maxDelta 
)

Performs flood filling of pixels with values in the specified range in the connected area on an image.

This function performs flood filling of the group of connected pixels in the seed pixel neighborhoods whose pixel values $ v_i $ satisfies the following condition:

$ v_i - minDelta \leq v_0 \leq v_i + maxDelta $

where $ v_0 $ is the pixel value of the seed point. Values of these pixel is set to the newVal value.

The function requires a temporary buffer whose size should be computed with the function ippiFloodFillGetSize beforehand.

Parameters:
img image to flood fill.
buffer temporary buffer image previously initialized with FloodFillGetSize.
seedX column coordinate for the seed.
seedY row coordinate for the seed.
newVal Value to fill with for one-channel data.
minDelta Minimum difference between neighbor pixels for one-channel data.
maxDelta Maximum difference between neighbor pixels for one-channel data.
See also:
FloodFillGetSize

QMap< sInt, int > qvipp::HistogramRange ( const QVImage< uChar, 1 > &  src,
QList< uChar >  values = QList< uChar >() 
)

Calculates frequency histogram for a given set of values, for a QVImage.

This function computes the intensity histogram of an image in the ranges specified by the QList 'values'. Default value for this QList is empty list, indicating the set of integer which cover the group of valid values for uChar type (from 0 to 255).

Return value is a QMap variable, that maps pixel values, with their frequency of depicting in the image.

Parameters:
src source image to obtain histogram values.
values list of QVImage data type values, to obtain frequency in histogram.

Definition at line 618 of file qvipp.cpp.

References QVImage< Type, Planes >::getStep(), IMAGE_ROISIZE, IPP_DEBUG, and PDATA_READ.

Referenced by qvdta::CountingSort().

void qvipp::Inpaint ( const QVImage< uChar, 3 > &  src,
const QVImage< uChar > &  mask,
const QVImage< sFloat > &  distances,
QVImage< uChar, 3 > &  dest,
int  radius = 4,
IppiInpaintFlag  flag = IPP_INPAINT_TELEA 
)

Overload for function Inpaint, for different channel number images.

See also:
Inpaint(const QVImage<uChar> &, const QVImage<uChar> &, const QVImage<sFloat> &, QVImage<uChar> &, int, IppiInpaintFlag)

Definition at line 600 of file qvipp.cpp.

References QVGenericImage::getAnchor(), QVImage< Type, Planes >::getReadData(), QVGenericImage::getROI(), QVImage< Type, Planes >::getStep(), IMAGE_ROISIZE, Inpaint(), IPP_DEBUG, PDATA_READ, PDATA_WRITE, and QVGenericImage::setROI().

void qvipp::Inpaint ( const QVImage< uChar > &  src,
const QVImage< uChar > &  mask,
const QVImage< sFloat > &  distances,
QVImage< uChar > &  dest,
int  radius = 4,
IppiInpaintFlag  flag = IPP_INPAINT_TELEA 
)

Restores unknown image pixels.

This function reconstructs damaged part of the image, or removes a selected object. The image part to restore is defined by the mask image. Different distant transforms can be used, but the Fast Marching Method (implemented by FastMarching function) provides the best results. The order of pixel restoration is defined by the distance through the initialization the inpainting structure pState by the function ippiInpaintInitAlloc. Pixels are restored in according to the growing of their distance value. When a pixel is inpainted, it is treated as the known one. Two algorithms of direct inpainting are supported

A code example to show the use of this function is below:

 [...]
 
 QVImage<uChar,3> image;        // image to inpaint
 QVImage<uChar> mask;           // mask, indicating unknown pixels for image (0 known, >0 unknown)
 
 [...]
 
 QVImage<uChar> buffer;         // temporary buffer for FastMarching function
 QVImage<sFloat> distances(image.getCols(), image.getRows());   // image to hold distances to zero pixels
 QVImage<uChar,3> inpaint(image.getCols(),image.getRows());     // inpainted image from original
 
 qvipp::FastMarchingGetBufferSize(mask, buffer);                // initiating buffer image for FastMarching function
 qvipp::FastMarching(mask, distances, radius, buffer);          // calculating distances to zero pixels for image
 qvipp::Inpaint(image, mask, distances, inpaint, radius);       // inpainting
 
 [...]

Parameters:
src source image to restore.
mask mask image. Values different from zero indicate unknown pixels.
distances image to hold distances to closest zero pixel. Must have been pre-calculated.
dest destination image to hold restored image.
radius Radius of the neighborhood of the marked area, used for inpainting.
flag indicates the algorithm for direct inpainting:
  • IPP_INPAINT_TELEA. Use weighted sum of approximations by known pixels in the neighborhood.
  • IPP_INPAINT_NS. Use Navier-Stokes equations.

Definition at line 582 of file qvipp.cpp.

References QVGenericImage::getAnchor(), QVImage< Type, Planes >::getReadData(), QVGenericImage::getROI(), QVImage< Type, Planes >::getStep(), IMAGE_ROISIZE, IPP_DEBUG, PDATA_READ, PDATA_WRITE, and QVGenericImage::setROI().

Referenced by Inpaint().

void qvipp::LShiftC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant 
)

Shifts bits in pixel values to the left.

Parameters:
src source image to perform left shift on.
dest destination image to hold result of left shift.
constant value to perform left shift with.

void qvipp::Max ( const QVImage< sShort, 3 > &  src,
sShort &  r,
sShort &  g,
sShort &  b 
)

Computes the maximum of image pixel values, by separate planes.

See also:
Max(const QVImage<uChar,3> &, uChar &, uChar &, uChar &)

void qvipp::Max ( const QVImage< uChar, 3 > &  src,
uChar &  r,
uChar &  g,
uChar &  b 
)

Computes the maximum of image pixel values, by separate planes.

Parameters:
src source image to compute pixel maximum.
red return value containing the maximum of the values of the pixels of the image for the first channel.
green return value containing the maximum of the values of the pixels of the image for the second channel.
blue return value containing the maximum of the values of the pixels of the image for the third channel.

void qvipp::Max ( const QVImage< sFloat > &  src,
sFloat &  value 
)

Computes the maximum of image pixel values.

See also:
Max(const QVImage<uChar> &, uChar &)

void qvipp::Max ( const QVImage< sShort > &  src,
sShort &  value 
)

Computes the maximum of image pixel values.

See also:
Max(const QVImage<uChar> &, uChar &)

void qvipp::Max ( const QVImage< uChar > &  src,
uChar &  value 
)

Computes the maximum of image pixel values.

Parameters:
src source image to compute pixel maximum.
value return value containing the maximum of the values of the pixels of the image.

void qvipp::Mean ( const QVImage< sShort, 3 > &  src,
sDouble &  r,
sDouble &  g,
sDouble &  b 
)

Computes the mean of image pixel values, by separate planes.

See also:
Mean(const QVImage<uChar,3> &, sDouble &, sDouble &, sDouble &)

void qvipp::Mean ( const QVImage< uChar, 3 > &  src,
sDouble &  r,
sDouble &  g,
sDouble &  b 
)

Computes the mean of image pixel values, by separate planes.

Parameters:
src source image to compute pixel mean.
red return value containing the mean of the values of the pixels of the image for the first channel.
green return value containing the mean of the values of the pixels of the image for the second channel.
blue return value containing the mean of the values of the pixels of the image for the third channel.

void qvipp::Mean ( const QVImage< sShort > &  src,
sDouble &  value 
)

Computes the mean of image pixel values.

See also:
Mean(const QVImage<uChar> &, sDouble &)

void qvipp::Mean ( const QVImage< uChar > &  src,
sDouble &  value 
)

Computes the mean of image pixel values.

Parameters:
src source image to compute pixel mean.
value return value containing the mean of the values of the pixels of the image.

void qvipp::Min ( const QVImage< sShort, 3 > &  src,
sShort &  r,
sShort &  g,
sShort &  b 
)

Computes the minimum of image pixel values, by separate planes.

See also:
Min(const QVImage<uChar,3> &, uChar &, uChar &, uChar &)

void qvipp::Min ( const QVImage< uChar, 3 > &  src,
uChar &  r,
uChar &  g,
uChar &  b 
)

Computes the minimum of image pixel values, by separate planes.

Parameters:
src source image to compute pixel minimum.
red return value containing the minimum of the values of the pixels of the image for the first channel.
green return value containing the minimum of the values of the pixels of the image for the second channel.
blue return value containing the minimum of the values of the pixels of the image for the third channel.

void qvipp::Min ( const QVImage< sFloat > &  src,
sFloat &  value 
)

Computes the minimum of image pixel values.

See also:
Min(const QVImage<uChar> &, uChar &)

void qvipp::Min ( const QVImage< sShort > &  src,
sShort &  value 
)

Computes the minimum of image pixel values.

See also:
Min(const QVImage<uChar> &, uChar &)

void qvipp::Min ( const QVImage< uChar > &  src,
uChar &  value 
)

Computes the minimum of image pixel values.

Parameters:
src source image to compute pixel minimum.
value return value containing the minimum of the values of the pixels of the image.

void qvipp::MinEigenVal ( const QVImage< uChar > &  src,
QVImage< sFloat > &  dest,
QVImage< uChar > &  buffer,
uInt  apertureSize = 3,
uInt  avgWindow = 5,
IppiKernelType  kernel = ippKernelSobel 
)

Calculates the minimal eigen value of image blocks for corner detection.

This function takes a block around the pixel and computes the first derivatives Dx and Dy.

This operation is performed for every pixel of the image using either Sobel or Scharr kernel in accordance with the kernType parameter.

The size of the Sobel kernel may be specified the parameter apertureSize. If this parameter is set to 3 - the function used 3x3 kernel, if it set to 5 - the function uses 5x5 kernel.

Only 3x3 size is available for the Scharr kernel, therefore the parameter apertureSize must be set to 3 if the Scharr kernel is used.

Parameters:
src source image.
dest destination image to hold the minimal eigen values.
buffer image to hold temporary data during function operations.
apertureSize Size (in pixels) of the derivative operator used by the function, possible values are 3 or 5.
avgWindow Size of the blurring window in pixels, possible values are 3 (3x3 mask size) or 5 (5x5 mask size).
kernel Specifies the type of kernel used to compute derivatives, possible values are:
  • ippKernelSobel. Values for aperture size can be 3, or 5.
  • ippKernelScharr. Value for aperture size can only be 3.
See also:
MinEigenValGetBufferSize

Definition at line 550 of file qvipp.cpp.

References QVGenericImage::getAnchor(), QVGenericImage::getROI(), QVImage< Type, Planes >::getStep(), QVImage< Type, Planes >::getWriteData(), IMAGE_ROISIZE, IPP_DEBUG, PDATA_READ, PDATA_WRITE, and QVGenericImage::setROI().

Referenced by qvdta::HarrisCornerResponseImage(), and MinEigenValGetBufferSize().

void qvipp::MinEigenValGetBufferSize ( const QVGenericImage src,
QVImage< uChar > &  buffer,
uInt  apertureSize = 5,
uInt  avgWindow = 5 
)

Allocates size in a buffer image for temporary data for function MinEigenValGet.

This function should be applied to any QVImage<uChar> image to be used as a buffer image for function MinEigenVal. Initializes dimensions for that buffer image, appropriated for that algorithm.

Parameters:
src source image to apply later MinEigenVal function.
buffer buffer image to initialize for further operations.
apertureSize Size (in pixels) of the derivative operator used by the function, possible values are 3 or 5.
avgWindow Size of the blurring window in pixels, possible values are 3 or 5.
See also:
MinEigenVal

Definition at line 506 of file qvipp.cpp.

References IMAGE_ROISIZE, IPP_DEBUG, and MinEigenVal().

Referenced by qvdta::HarrisCornerResponseImage().

void qvipp::Mul ( const QVImage< sFloat, 3 > &  src1,
const QVImage< sFloat, 3 > &  src2,
QVImage< sFloat, 3 > &  dest 
)

Multiplies pixel values of two images.

See also:
Mul(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Mul ( const QVImage< sFloat > &  src1,
const QVImage< sFloat > &  src2,
QVImage< sFloat > &  dest 
)

Multiplies pixel values of two images.

See also:
Mul(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Mul ( const QVImage< sShort, 3 > &  src1,
const QVImage< sShort, 3 > &  src2,
QVImage< sShort, 3 > &  dest,
int  scale = 1 
)

Multiplies pixel values of two images.

See also:
Mul(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Mul ( const QVImage< sShort > &  src1,
const QVImage< sShort > &  src2,
QVImage< sShort > &  dest,
int  scale = 1 
)

Multiplies pixel values of two images.

See also:
Mul(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Mul ( const QVImage< uChar, 3 > &  src1,
const QVImage< uChar, 3 > &  src2,
QVImage< uChar, 3 > &  dest,
int  scale = 1 
)

Multiplies pixel values of two images.

See also:
Mul(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Mul ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest,
int  scale = 1 
)

Multiplies pixel values of two images.

This function multiplies corresponding pixel values of two source image buffers and places the results in a destination buffer. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src1 source image to use pixels as first operands in multiplication.
src2 source image to use pixels as second operands in multiplication.
dest destination image to hold result pixels of multiplication.
scale value to perform scaling of resulting pixel values, for integer bit depth.

Referenced by qvdta::SobelCornerResponseImage().

void qvipp::MulC ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
sFloat  constant 
)

Multiplies pixel values of an image by a constant.

See also:
MulC(const QVImage<uChar> &, QVImage<uChar> &, uChar constant, int)

void qvipp::MulC ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest,
sShort  constant,
int  scale = 1 
)

Multiplies pixel values of an image by a constant.

See also:
MulC(const QVImage<uChar> &, QVImage<uChar> &, uChar constant, int)

void qvipp::MulC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant,
int  scale = 1 
)

Multiplies pixel values of an image by a constant.

This function multiplies pixel values of an image by a constant value. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src source image to use pixels as first operands in multiplication.
dest destination image to hold result pixels of multiplication.
constant value to use as second operand in multiplication.
scale value to perform scaling of resulting pixel values, for integer bit depth.

void qvipp::MulScale ( const QVImage< uChar, 3 > &  src1,
const QVImage< uChar, 3 > &  src2,
QVImage< uChar, 3 > &  dest 
)

Multiplies pixel values of two images and scales the products.

See also:
MulScale(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::MulScale ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest 
)

Multiplies pixel values of two images and scales the products.

This function multiplies corresponding pixel values of two input buffers and scales the products using the following formula:

dest(i,j) = src1(i,j) * src2(i,j) / max_val 

where max_val is the maximum value of the pixel data range.

Parameters:
src1 source image to use pixels as first operands in multiplication.
src2 source image to use pixels as second operands in multiplication.
dest destination image to hold result pixels of multiplication.

void qvipp::Not ( const QVImage< uChar, 3 > &  src,
QVImage< uChar, 3 > &  dest 
)

Performs a bit-wise NOT operation on each pixel of an image.

See also:
Not(const QVImage<uChar> &, QVImage<uChar> &)

void qvipp::Not ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest 
)

Performs a bit-wise NOT operation on each pixel of an image.

Parameters:
src source image to perform bit-wise NOT operation on.
dest destination image to hold result of bit-wise operation.

void qvipp::OrC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant 
)

Performs a bit-wise inclusive OR operation between each pixel of an image and a constant.

Parameters:
src source image to perform bit-wise inclusive OR operation on.
dest destination image to hold result of bit-wise operation.
constant value to perform bit-wise operation with.

void qvipp::Resize ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
int  interpolation = IPPI_INTER_LINEAR 
)

Changes an image size.

See also:
Resize(const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Resize ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
int  interpolation = IPPI_INTER_LINEAR 
)

Changes an image size.

This function copies the content of the ROI in the source image, to the ROI of the destination image, adjusting it's original size to make it fit in the destination size It has the effect of resizing the original image, to fit the destination image, if both ROI's hold the whole of their respective images.

Parameters:
src source image to re-size ROI.
dest destination image to hold the re-sized ROI.
interpolation interpolation type. Selects the algorithm for interpolate pixel values. Possible values for this parameter are:
  • IPPI_INTER_NN. Nearest neighbor interpolation
  • IPPI_INTER_LINEAR. Linear interpolation
  • IPPI_INTER_CUBIC. Cubic interpolation
  • IPPI_INTER_SUPER. Supersampling interpolation, cannot be applied for image enlarging
  • IPPI_INTER_LANCZOS. Interpolation with Lanczos window.

void qvipp::RGBToGray ( const QVImage< sFloat, 3 > &  src,
QVImage< sFloat, 1 > &  dest 
)

Converts an RGB image to gray-scale using fixed transform coefficients.

See also:
RGBToGray(const QVImage<uChar, 3> &, QVImage<uChar, 1> &)

void qvipp::RGBToGray ( const QVImage< sShort, 3 > &  src,
QVImage< sShort, 1 > &  dest 
)

Converts an RGB image to gray-scale using fixed transform coefficients.

See also:
RGBToGray(const QVImage<uChar, 3> &, QVImage<uChar, 1> &)

void qvipp::RGBToGray ( const QVImage< uChar, 3 > &  src,
QVImage< uChar, 1 > &  dest 
)

Converts an RGB image to gray-scale using fixed transform coefficients.

This function converts an RGB image to gray scale (see Figure 6-18) using the following basic equation to compute luma from nonlinear gamma-corrected red, green, and blue values:

Y = 0.299 * R + 0.587 * G + 0.114 * B 

Note that the transform coefficients conform to the standard for the NTSC red, green, and blue CRT phosphors.

Parameters:
src RGB image to convert to gray scale.
dest resulting gray-scale image.

void qvipp::RShiftC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant 
)

Shifts bits in pixel values to the right.

Parameters:
src source image to perform right shift on.
dest destination image to hold result of right shift.
constant value to perform right shift with.

void qvipp::Set ( QVImage< sFloat, 3 > &  img,
sFloat  red,
sFloat  green,
sFloat  blue 
)

Sets pixels of a 3-channel image ROI to a value respective constant value, one for each channel.

See also:
Set(QVImage<uChar, 3> &, uChar, uChar, uChar)

void qvipp::Set ( QVImage< sShort, 3 > &  img,
sShort  red,
sShort  green,
sShort  blue 
)

Sets pixels of a 3-channel image ROI to a value respective constant value, one for each channel.

See also:
Set(QVImage<uChar, 3> &, uChar, uChar, uChar)

void qvipp::Set ( QVImage< uChar, 3 > &  img,
uChar  red,
uChar  green,
uChar  blue 
)

Sets pixels of a 3-channel image ROI to a value respective constant value, one for each channel.

This function sets pixels in the destination 3-channel image ROI img to a constant value. Each channel can be set to a different constant value, with a different parameter value.

Parameters:
img destination image to set.
red value to set pixels in first channel of image ROI.
green value to set pixels in second channel of image ROI.
blue value to set pixels in third channel of image ROI.

void qvipp::Set ( QVImage< sFloat > &  img,
sFloat  constant 
)

Sets pixels of an image ROI to a value.

See also:
Set(QVImage<uChar> &, uChar)

void qvipp::Set ( QVImage< sShort > &  img,
sShort  constant 
)

Sets pixels of an image ROI to a value.

See also:
Set(QVImage<uChar> &, uChar)

void qvipp::Set ( QVImage< uChar > &  img,
uChar  constant 
)

Sets pixels of an image ROI to a value.

This function sets pixels in the destination image ROI img to a constant value.

Parameters:
img destination image to set.
constant value to set pixels in image ROI.

Referenced by qvdta::FilterLocalMax(), and qvdta::getContoursThreshold().

void qvipp::Sub ( const QVImage< sFloat, 3 > &  src1,
const QVImage< sFloat, 3 > &  src2,
QVImage< sFloat, 3 > &  dest 
)

Subtracts pixel values of two images.

See also:
Sub(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Sub ( const QVImage< sFloat > &  src1,
const QVImage< sFloat > &  src2,
QVImage< sFloat > &  dest 
)

Subtracts pixel values of two images.

See also:
Sub(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Sub ( const QVImage< sShort, 3 > &  src1,
const QVImage< sShort, 3 > &  src2,
QVImage< sShort, 3 > &  dest,
int  scale = 1 
)

Subtracts pixel values of two images.

See also:
Sub(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Sub ( const QVImage< sShort > &  src1,
const QVImage< sShort > &  src2,
QVImage< sShort > &  dest,
int  scale = 1 
)

Subtracts pixel values of two images.

See also:
Sub(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Sub ( const QVImage< uChar, 3 > &  src1,
const QVImage< uChar, 3 > &  src2,
QVImage< uChar, 3 > &  dest,
int  scale = 1 
)

Subtracts pixel values of two images.

See also:
Sub(const QVImage<uChar> &, const QVImage<uChar> &, QVImage<uChar> &, int)

void qvipp::Sub ( const QVImage< uChar > &  src1,
const QVImage< uChar > &  src2,
QVImage< uChar > &  dest,
int  scale = 1 
)

Subtracts pixel values of two images.

This function substracts corresponding pixel values of two source image buffers and places the results in a destination buffer. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src1 source image to use pixels as first operands in subtraction.
src2 source image to use pixels as second operands in subtraction.
dest destination image to hold result pixels of subtraction.
scale value to perform scaling of resulting pixel values, for integer bit depth.

Referenced by qvdta::SobelCornerResponseImage().

void qvipp::SubC ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
sFloat  constant 
)

Subtracts a constant from pixel values of an image.

See also:
void SubC(const QVImage<uChar> &, QVImage<uChar> &, uChar, int)

void qvipp::SubC ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest,
sShort  constant,
int  scale = 1 
)

Subtracts a constant from pixel values of an image.

See also:
void SubC(const QVImage<uChar> &, QVImage<uChar> &, uChar, int)

void qvipp::SubC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant,
int  scale = 1 
)

Subtracts a constant from pixel values of an image.

This function changes image intensity by subtracting the constant value from pixel values of an image buffer. Saturation and scaling is used for integer data (uChar, sShort, etc...).

Scaling is done by multiplying the output pixel values by 2-scale before the function returns. This helps retain either the output data range or its precision. Usually the scaling with a positive factor is performed by the shift operation. Then, the result is rounded off to the nearest integer number.

Parameters:
src source image to use pixels as first operands in subtraction.
dest destination image to hold result pixels of subtraction.
constant value to use as second operand in subtraction.
scale value to perform scaling of resulting pixel values, for integer bit depth.

void qvipp::Sum ( const QVImage< sShort, 3 > &  src,
sDouble &  r,
sDouble &  g,
sDouble &  b 
)

Computes the sum of image pixel values, by separate planes.

See also:
Sum(const QVImage<uChar,3> &, sDouble &, sDouble &, sDouble &)

void qvipp::Sum ( const QVImage< uChar, 3 > &  src,
sDouble &  r,
sDouble &  g,
sDouble &  b 
)

Computes the sum of image pixel values, by separate planes.

Parameters:
src source image to compute pixel sum.
red return value containing the sum of the values of the pixels of the image for the first channel.
green return value containing the sum of the values of the pixels of the image for the second channel.
blue return value containing the sum of the values of the pixels of the image for the third channel.

void qvipp::Sum ( const QVImage< sShort > &  src,
sDouble &  value 
)

Computes the sum of image pixel values.

See also:
Sum(const QVImage<uChar> &, sDouble &)

void qvipp::Sum ( const QVImage< uChar > &  src,
sDouble &  value 
)

Computes the sum of image pixel values.

Parameters:
src source image to compute pixel sum.
value return value containing the sum of the values of the pixels of the image.

void qvipp::Threshold ( const QVImage< sFloat > &  src,
QVImage< sFloat > &  dest,
sFloat  constant,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Performs thresholding of pixel values in an image buffer.

See also:
Threshold(const QVImage<uChar> &, QVImage<uChar> &, uChar, IppCmpOp ippCmpOp)

void qvipp::Threshold ( const QVImage< sShort > &  src,
QVImage< sShort > &  dest,
sShort  constant,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Performs thresholding of pixel values in an image buffer.

See also:
Threshold(const QVImage<uChar> &, QVImage<uChar> &, uChar, IppCmpOp ippCmpOp)

void qvipp::Threshold ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant,
IppCmpOp  ippCmpOp = ippCmpEq 
)

Performs thresholding of pixel values in an image buffer.

This function thresholds pixels in the source image src using the specified level threshold. Pixel values in the source image are compared to the threshold value using the ippCmpOp comparison operation.

If the result of the compare is true, the corresponding output pixel is set to the threshold value. Otherwise, it is set to the source pixel value.

Parameters:
src image to threshold.
dest image to store thresholded image.
constant value to compare each pixel value.
ippCmpOp Compare operation to be used for thresholding the pixel values. Must be one of these enumerated values:
  • ippCmpLess, for less comparison
  • ippCmpLessEq, for less or equal comparison
  • ippCmpEq, for equal comparison
  • ippCmpGreaterEq, for greater or equal comparison
  • ippCmpGreater, for greater comparison

void qvipp::XorC ( const QVImage< uChar > &  src,
QVImage< uChar > &  dest,
uChar  constant 
)

Performs a bit-wise exclusive OR operation between each pixel of an image and a constant.

Parameters:
src source image to perform bit-wise exclusive OR operation on.
dest destination image to hold result of bit-wise operation.
constant value to perform bit-wise operation with.


Generated on Fri Dec 7 12:21:00 2007 for QVision by  doxygen 1.5.3