通常,可以表示为卷积的变化是局部的,这意味着即使它们可能改变整个图像,对任何特定元素的影响也仅由其周围的少量像素确定
一、拉伸,缩小,变形,旋转
均匀调整
图像的增大或缩小可以使用相同的函数 cv::resize() 来实现
void cv::resize( cv::InputArray src, // Input image cv::OutputArray dst, // Result image cv::Size dsize, // New size double fx = 0, // x-rescale double fy = 0, // y-rescale int interpolation = CV::INTER_LINEAR // interpolation method );
图像金字塔
图像金字塔是图像的集合,它由单个原始图像产生,连续降采样,直到达到一些期望的停止点,此停止点可能是单 像素 图像 ,从其前身产生每个金字塔阶段的方法 cv::pyrDown()
void cv::pyrDown( cv::InputArray src, // Input image cv::OutputArray dst, // Result image const cv::Size& dstsize = cv::Size() // Output image size );
你有一个图像,并希望构建一系列的新图像,每个都从其前身缩减,函数 cv::buildPyramid() 在单个调用中为你创建一个图像堆栈
void cv::buildPyramid( cv::InputArray src, // Input image cv::OutputArrayOfArrays dst, // Output images from pyramid int maxlevel // Number of pyramid levels );
cv::pyrUp() ,将现有的图像转换为每个方向两倍大的图像,首先将图像的大小 增加到每个维度的原始值的两倍,新的偶数行填充0
void cv::pyrUp( cv::InputArray src, // Input image cv::OutputArray dst, // Result image const cv::Size& dstsize = cv::Size() // Output image size );
非均匀映射
仿射变换
透视变换
二、通用变换 (General Remappings)
三、图像修复
四、直方图均衡化