【图像缩放】最邻近插值
前言 图像处理中有三种常用的插值算法:
- 最邻近插值
- 双线性插值
- 双立方(三次卷积)插值
最邻近插值
如果想先看效果和源码,可以拉到最底部
何时进行最邻近插值 这个算法的特点是
- 速度非常快速
- 误差很大
- 如果缩放系数较大,肯定会有马赛克效果
数学理论 最简单的理论-
1对1映射
,如图文章图片
简单分析如下:
- 目标插值图中的某像素点
(distI, distJ)
在原图中的映射为(i + v, j + u)
- 最终这个点的取值就是
(i, j)
处的值 -
v
,u
都小于1(就是进行一次取整)
F(i + v, j + u) = f(i, j)
直接映射+取整即可完成取值
代码实现 过于简单,不再赘述,核心就是
运行效果 可参考同系列中的
双立方插值
中的效果图三种插值算法的简单比较
纬度 | 最邻近 | 双线性 | 双立方 |
---|---|---|---|
速度 | 快 | 较慢 | 慢 |
质量 | 低 | 中 | 高 |
质量相比于canvas |
远低于 | 低于 | 高于 |
代码实现难度 | 极易 | 易 | 偏难 |
适用场景 | 实时计算 | 作为默认实现效果 | 高质量的效果 |
JS
实现了几种插值算法,包括(最邻近值,双线性,三次卷积-包括两种不同实现等)https://github.com/dailc/image-process
附录 博客
初次发布
2016.11.02
于我个人博客上面http://www.dailichun.com/2017/11/01/imageprocess_nearestinterpolation.html
推荐阅读
- 宽容谁
- 我要做大厨
- 增长黑客的海盗法则
- 画画吗()
- 2019-02-13——今天谈梦想()
- 远去的风筝
- 三十年后的广场舞大爷
- 叙述作文
- 20190302|20190302 复盘翻盘
- 学无止境,人生还很长