double类型的ID号,双线性内插取像素值

一张影像放大后是由一个个像素组成,每个像素都是一个数值,可以通过行列号直接过去得到该像素值,但是如果这个行列号为浮点数该怎么获取呢,直接取整也不精确,所以需要给四周的像素分配不同的权重来获取一个个接近真实的像素值,这个过程就要用到线性插值获取
网上看到公式很复杂,然后看别人写的代码,好像就理解了,特此记录,给自己复习也给后来者提供一个思路。
现在用excel来模拟一个图片像素吧,如下图:
在这里插入图片描述

如果行号为3,列号为3的时候,取出来的像素值为6,无可争议。
那么现在问题来了:行号为3.4,列号为3.8的时候这个值应该是多少才更接近真实情况呢?

现在来分析问题,取整的话为行3,列3,像素在6这里,但是在X方向偏离了0.4,在Y方向偏离了0.8,所以行号3.4,列好3.8真实像素值应该与红框标注的四个像素都有关系,它们存在一个权重分配问题,如下图:
在这里插入图片描述
计算分为三步,如下图:
在这里插入图片描述
这是根据别人代码逆出来的,具体公式我可能解释不太清楚,仔细琢磨一下感觉有道理,特此记录。
辉 2021.8.14

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值