图像内插是在诸如放大、收缩、旋转和几何校正等任务中广泛应用的基本工具。从根本上来看,内插是用已知数据来估计未知位置的数值的处理。

最近邻内插法(nearest neighbor):假设一幅大小为500×500像素的图像要放大到750×750像素。一种简单的放大方法是创建一个假想的750×750网格,它与原始图像有相同的间隔。然后将其收缩,使它准确地与原图像匹配。显然收缩后的750×750网格的像素间隔要小于原图像的像素间隔。为了对覆盖的每一个点赋以灰度值,我们在原图像中寻找最接近的像素,并把该像素的灰度赋给750×750网格中的新像素。当我们完成对网格中覆盖的所有点的灰度赋值之后,就把图像扩展到原来规定的大小,得到放大后的图像。

代码展示:

import cv2
import numpy as np#dstH,dstW表示新图的Size,scrH,scrW表示旧图的Size
def NN_interpolation(img,dstH,dstW):scrH,scrW,_=img.shaperetimg=np.zeros((dstH,dstW,3),dtype=np.uint8)for i in range(dstH-1):for j in range(dstW-1):#计算出新图坐标(i,j)坐标用旧图中的那个坐标来填充scrx=round(i*(scrH/dstH))scry=round(j*(scrW/dstW))retimg[i,j]=img[scrx,scry]return retimgimg = cv2.imread("E:/pythontupian/1.jpg")
zoom = NN_interpolation(img,img.shape[0]*2,img.shape[1]*2)
cv2.imshow("nearest neighbor", zoom)
cv2.imshow("image", img)
cv2.waitKey(0)

结果展示:
原图

插值后


原图和插值图对比结果

最近邻插值(nearest neighbor)-----python相关推荐

  1. 数字图像处理笔记二 - 图片缩放(最近邻插值(Nearest Neighbor interpolation))

    图片缩放的两种常见算法: 最近邻域内插法(Nearest Neighbor interpolation) 双向性内插法(bilinear interpolation) 本文主要讲述最近邻插值(Near ...

  2. 最近邻分类器(Nearest Neighbor Classifier)

    先从简单的方法开始说,先提一提最近邻分类器/Nearest Neighbor Classifier,不过事先申明,它和深度学习中的卷积神经网/Convolutional Neural Networks ...

  3. 最近邻搜索|Nearest neighbor search

    维基百科:https://en.wikipedia.org/wiki/Nearest_neighbor_search 觉得整理的挺好,翻译 最近邻搜索( NNS ) 作为**邻近搜索(proximit ...

  4. 论文阅读“Nearest Neighbor Matching for Deep Clustering”(CVPR2021)

    论文标题 Nearest Neighbor Matching for Deep Clustering 论文作者.链接 作者:Dang, Zhiyuan and Deng, Cheng and Yang ...

  5. 【图像处理】图像内插“最近邻插值 最近邻内插法(Nearest Neighbour Interpolate)”代码演示(调整图像大小、放大、缩小)

    文章目录 何为内插--最近邻插值,引用自<数字图像处理--第三版> 代码演示 1.设置缩放倍数来放大.缩小图像 2.设置图片最终分辨率来放大.缩小图像 代码中使用的源图 20200625 ...

  6. 机器学习之深入理解K最近邻分类算法(K Nearest Neighbor)

    [机器学习]<机器学习实战>读书笔记及代码:第2章 - k-近邻算法 1.初识 K最近邻分类算法(K Nearest Neighbor)是著名的模式识别统计学方法,在机器学习分类算法中占有 ...

  7. 检索 : Approximate Nearest Neighbor NSW + HNSW

    在一个给定向量数据集中,按照某种度量方式,检索出与查询向量相近的K个向量(K-Nearest Neighbor,KNN),但由于KNN计算量过大,我们通常只关注近似近邻(Approximate Nea ...

  8. 机器学习算法系列(二十二)-近似k近邻算法-Annoy(Approximate Nearest Neighbor / ANN)

    阅读本文需要的背景知识点:k近邻算法.一丢丢编程知识 一.引言   前面一节我们学习了机器学习算法系列(二十一)-k近邻算法(k-Nearest Neighbor / kNN Algorithm),其 ...

  9. 图像放大算法一:最近邻法(Nearest Interpolation)

    图像放大算法有好几个,但是如果我们自己设计图像放大算法,这个或许是我们最容易想到的,其他的没有一点功底,恐怕不会搞. 图像放大算法总体思想:由于原来的图片像素少,现在的图片像素多,所以我们需要无中生有 ...

最新文章

  1. 奇偶个数_只愿与一人十指紧扣_新浪博客
  2. 麻省理工人工智能实验室发现更小更容易训练的神经网络
  3. PostgreSQL — 安装
  4. 整理出一个比较实用的SqlHelper类 满足大多数情况的使用
  5. shadowplay要下载java_Java并发程序设计(二)Java并行程序基础
  6. AI工程师面试凭高频问题提前准备,命中率会是多少?
  7. 软件测试需求人才越来越多
  8. C++ istringstream重新绑定和处理另一个字符串
  9. 初学python-练习_4使用python编写本地登录程序(带注册)
  10. vue-cli@webpack@4打包分析命令
  11. JavaScript基本语法
  12. zabbix报错gd、freetype、png、jpeg
  13. USACO 3.4 Raucous Rockers (rockers)
  14. 机器学习:SVR支持向量机回归
  15. 微服务项目之电商--19.ElasticSearch基本、高级查询和 过滤、结果过滤、 排序和聚合aggregations
  16. vscode配置php开发环境
  17. 记:docker初使用报错:An error occurred and No connection could be made machine actively refused it
  18. CSS中浮动和定位对元素宽度/外边距/其他元素所占空间的影响
  19. [robot_state_publisher-4] process has died [pid 20533, exit code 1, cmd /opt/ros/melodic/lib/robot_s
  20. 后谷歌时代 GoogleAdsense申请攻略和新玩法

热门文章

  1. ubuntu12.04 显卡 散热
  2. 解决margin塌陷问题
  3. baidu文库爪巴虫——xls
  4. Windows杀死端口进程
  5. 2B青年答疑:什么是2B青年?如何脱离2B青年行列?
  6. Ext.grid.CheckboxSelectionModel 只能选一行,不能全选和多选
  7. 原始投资100美元,C语言实现单利息投资和复合利息投资
  8. 举个栗子~Tableau 技巧(211):学做指针环形图
  9. Unity游戏开发:文字冒险游戏项目实战
  10. mac配置iOS开发环境