Merge pull request #1486 from nzjrs:cv2-logpolar

This commit is contained in:
Roman Donchenko
2013-10-29 16:15:56 +04:00
committed by OpenCV Buildbot
3 changed files with 55 additions and 7 deletions

View File

@@ -76,14 +76,15 @@ enum { MORPH_RECT = 0,
};
//! interpolation algorithm
enum { INTER_NEAREST = 0, //!< nearest neighbor interpolation
INTER_LINEAR = 1, //!< bilinear interpolation
INTER_CUBIC = 2, //!< bicubic interpolation
INTER_AREA = 3, //!< area-based (or super) interpolation
INTER_LANCZOS4 = 4, //!< Lanczos interpolation over 8x8 neighborhood
enum { INTER_NEAREST = 0, //!< nearest neighbor interpolation
INTER_LINEAR = 1, //!< bilinear interpolation
INTER_CUBIC = 2, //!< bicubic interpolation
INTER_AREA = 3, //!< area-based (or super) interpolation
INTER_LANCZOS4 = 4, //!< Lanczos interpolation over 8x8 neighborhood
INTER_MAX = 7, //!< mask for interpolation codes
WARP_INVERSE_MAP = 16
INTER_MAX = 7, //!< mask for interpolation codes
WARP_FILL_OUTLIERS = 8,
WARP_INVERSE_MAP = 16
};
enum { INTER_BITS = 5,
@@ -1227,6 +1228,14 @@ CV_EXPORTS_W Mat getAffineTransform( InputArray src, InputArray dst );
CV_EXPORTS_W void getRectSubPix( InputArray image, Size patchSize,
Point2f center, OutputArray patch, int patchType = -1 );
//! computes the log polar transform
CV_EXPORTS_W void logPolar( InputArray src, OutputArray dst,
Point2f center, double M, int flags );
//! computes the linear polar transform
CV_EXPORTS_W void linearPolar( InputArray src, OutputArray dst,
Point2f center, double maxRadius, int flags );
//! computes the integral image
CV_EXPORTS_W void integral( InputArray src, OutputArray sum, int sdepth = -1 );

View File

@@ -4327,6 +4327,14 @@ cvLogPolar( const CvArr* srcarr, CvArr* dstarr,
cvRemap( src, dst, mapx, mapy, flags, cvScalarAll(0) );
}
void cv::logPolar( InputArray _src, OutputArray _dst,
Point2f center, double M, int flags )
{
Mat src = _src.getMat();
_dst.create( src.size(), src.type() );
CvMat c_src = src, c_dst = _dst.getMat();
cvLogPolar( &c_src, &c_dst, center, M, flags );
}
/****************************************************************************************
Linear-Polar Transform
@@ -4422,5 +4430,13 @@ void cvLinearPolar( const CvArr* srcarr, CvArr* dstarr,
cvRemap( src, dst, mapx, mapy, flags, cvScalarAll(0) );
}
void cv::linearPolar( InputArray _src, OutputArray _dst,
Point2f center, double maxRadius, int flags )
{
Mat src = _src.getMat();
_dst.create( src.size(), src.type() );
CvMat c_src = src, c_dst = _dst.getMat();
cvLinearPolar( &c_src, &c_dst, center, maxRadius, flags );
}
/* End of file. */