interpolation

本文介绍了浮点数的表示方法,包括符号位、阶码和尾数,并详细讲解了图像处理中的插值算法,如最近邻插值、双线性插值、双三次插值和Lanczos插值,分析了各种算法的优缺点及其应用场景。
摘要由CSDN通过智能技术生成
//! interpolation algorithm
enum
{
    INTER_NEAREST=CV_INTER_NN, //!< nearest neighbor interpolation
    INTER_LINEAR=CV_INTER_LINEAR, //!< bilinear interpolation
    INTER_CUBIC=CV_INTER_CUBIC, //!< bicubic interpolation
    INTER_AREA=CV_INTER_AREA, //!< area-based (or super) interpolation
    INTER_LANCZOS4=CV_INTER_LANCZOS4, //!< Lanczos interpolation over 8x8 neighborhood
    INTER_MAX=7,
    WARP_INVERSE_MAP=CV_WARP_INVERSE_MAP
};

//! resizes the image
CV_EXPORTS_W void resize( InputArray src, OutputArray dst,
                          Size dsize, double fx=0, double fy=0,
                          int interpolation=INTER_LINEAR );

//! warps the image using affine transformation
CV_EXPORTS_W void warpAffine( InputArray src, OutputArray dst,
                              InputArray M, Size dsize,
                              int flags=INTER_LINEAR,
                              int borderMode=BORDER_CONSTANT,
                              const Scalar& borderValue=Scalar());

//! warps the image using perspective transformation
CV_EXPORTS_W void warpPerspective( InputArray src, OutputArray dst,
                                   InputArray M, Size dsize,
                                   int flags=INTER_LINEAR,
                                   int borderMode=BORDER_CONSTANT,
                                   const Scalar& borderValue=Scalar());

(2)imgwarp.cpp中有插值函数,resize

(3)float a=1.0f在内存中的表示是3f800000,这个3f800000是怎么得出的?
3f800000H=0 01111111 00000000000000000000000B (注意我分成了三段)
符点型数据在X86机上占四个字节,其存储按IEEE754标准实现,即:
1位的符号位s 0(代表正数,1代表负数)
8位的指数位e(移码表示)01111111是0的移码
23位的小数位f 0000000000000000000000 表示小数部分为0
计算机在表示符点数时,要将10进制数转成二进制的规范数形式进行存储的。即:1.f*2^e在存储时,小数前面的1是隐式存储的,不体现在数据中。
现在翻译一下:
3f800000H=1.0*2^0=1.0

(4)移码

移码(又叫增码)是符号位取反的 补码,一般用做浮点数的阶码,引入的目的是为了保证浮点数的机器零为全0。  [1]  
①移码的定义:设由1位符号位和n位数值位组成的阶码,则 [X]移=2En + X (-2n<X<2n)
例如: X=+1011 [X]移=11011
X=-1011 [X]移=00101
②移码与补码的关系: [X]移与[X]补的关系是符号位互为相反数(仅符号位不同),
例如: X=+1011 [X]补=01011 [X]移=11011
X=-1011 [X
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值