Open CASCADE Technology 6.6.0
|
The class BilinearPixelInterpolation is used to compute a
SubPixel value on non integer Image coordinate
BilinearPixelInterpolation redefined a new method to compute
a SubPixel value .
The value is the bilinear interpolation of the
four nearest Image Pixel.
If V1, V2, V3, V4 is the value and (X1,Y1) , (X2,Y2),
(X3,Y3), (X4,Y4) the coordinates of the four nearest
Image Pixel then first we solve :
V1 = a*X1 + b*Y1 + c*X1*Y1 + d
V2 = a*X2 + b*Y2 + c*X2*Y2 + d
V3 = a*X3 + b*Y3 + c*X3*Y3 + d
V1 = a*X4 + b*Y4 + c*X4*Y4 + d
and V = a*FX + b*XY + c*FX*FY + d
is the Image SubPixel value on non integer
coordinate (FX,FY).
#include <Image_BilinearPixelInterpolation.hxx>
Public Member Functions | |
Image_BilinearPixelInterpolation () | |
Create a BilinearPixelInterpolation object. | |
virtual Standard_Boolean | Interpolate (const Handle< Image_Image > &aImage, const Standard_Real FX, const Standard_Real FY, const Standard_Integer LowerX, const Standard_Integer LowerY, const Standard_Integer UpperX, const Standard_Integer UpperY, Aspect_Pixel &RetPixel) const |
Redefined the method to compute SubPixel's value on non integer Image coordinate. LowerX,LowerY,UpperX,UpperY is the Image Min Max, it's used to check if the SubPixel coordinate FX,FY is outside of image. Return True if Interpolation Succes. Return False if the SubPixel is out from Image. | |
virtual Standard_Boolean | Interpolate (const Handle< Image_DColorImage > &aImage, const Standard_Real FX, const Standard_Real FY, const Standard_Integer LowerX, const Standard_Integer LowerY, const Standard_Integer UpperX, const Standard_Integer UpperY, Aspect_ColorPixel &RetPixel) const |
Compute SubPixel's value on non integer Image coordinate for DColorImage and ColorPixel. LowerX,LowerY,UpperX,UpperY is the Image Min Max, it's used to check if the SubPixel coordinate FX,FY is outside of image. Return True if Interpolation Succes. Return False if the SubPixel is out from Image. | |
virtual Standard_Boolean | Interpolate (const Handle< Image_DIndexedImage > &aImage, const Standard_Real FX, const Standard_Real FY, const Standard_Integer LowerX, const Standard_Integer LowerY, const Standard_Integer UpperX, const Standard_Integer UpperY, Aspect_IndexPixel &RetPixel) const |
Compute SubPixel's value on non integer Image coordinate for DIndexedImage and IndexPixel. LowerX,LowerY,UpperX,UpperY is the Image Min Max, it's used to check if the SubPixel coordinate X,Y is outside of image. Return True if Interpolation Succes. Return False if the SubPixel is out from Image. |
Image_BilinearPixelInterpolation::Image_BilinearPixelInterpolation | ( | ) |
virtual Standard_Boolean Image_BilinearPixelInterpolation::Interpolate | ( | const Handle< Image_Image > & | aImage, |
const Standard_Real | FX, | ||
const Standard_Real | FY, | ||
const Standard_Integer | LowerX, | ||
const Standard_Integer | LowerY, | ||
const Standard_Integer | UpperX, | ||
const Standard_Integer | UpperY, | ||
Aspect_Pixel & | RetPixel | ||
) | const [virtual] |
Reimplemented from Image_PixelInterpolation.
virtual Standard_Boolean Image_BilinearPixelInterpolation::Interpolate | ( | const Handle< Image_DIndexedImage > & | aImage, |
const Standard_Real | FX, | ||
const Standard_Real | FY, | ||
const Standard_Integer | LowerX, | ||
const Standard_Integer | LowerY, | ||
const Standard_Integer | UpperX, | ||
const Standard_Integer | UpperY, | ||
Aspect_IndexPixel & | RetPixel | ||
) | const [virtual] |
Reimplemented from Image_PixelInterpolation.
virtual Standard_Boolean Image_BilinearPixelInterpolation::Interpolate | ( | const Handle< Image_DColorImage > & | aImage, |
const Standard_Real | FX, | ||
const Standard_Real | FY, | ||
const Standard_Integer | LowerX, | ||
const Standard_Integer | LowerY, | ||
const Standard_Integer | UpperX, | ||
const Standard_Integer | UpperY, | ||
Aspect_ColorPixel & | RetPixel | ||
) | const [virtual] |
Reimplemented from Image_PixelInterpolation.