图像缩放之最近邻插值
来源:互联网 发布:对妹妹做过什么 知乎 编辑:程序博客网 时间:2024/05/21 01:32
坚持就是胜利之第一个脚印。感谢指正,让我学习到新的知识。
数学原理
假设源图像A的大小为m*n,缩放后的图像B的大小为M*N,那么有:
pixel_B(X,Y)=pixel_A(X*(m/M),Y*(n/N))
也就是说缩放后的图像B的(X,Y)位置处的像素值为源图像A的(X*(m/M),Y*(n/N))处的像素值。
优缺点
优点:我觉得原理很容易理解,操作起来很容易。
缺点:还不知道,留着后面学了新的方法做对比。
代码实现
/************************2016-10-5******************************************功能:最近邻插值缩放图像*数学原理; 假设原图像大小为m*n,新图像的大小为M*N 那么新图像的(X,Y)点的像素pixel(X,Y)=原图像pixel(X*(m/M),Y*(N/n)) 由于图像坐标不能为小数,对计算出的坐标通过四舍五入或取整处理**********************************************************************/#include <opencv2\opencv.hpp>#include <iostream>using namespace std;using namespace cv;int main(){ Mat image = imread("lena.jpg"); int Col_s = image.cols / 2;//新的图像长宽缩小至一半 int Row_s = image.rows / 2; Mat smallerImage(Row_s, Col_s, CV_8UC3); for (int i = 0; i < Row_s; i++){ for (int j = 0; j < Col_s; j++){ int X = i*2; int Y = j*2; smallerImage.at<Vec3b>(i, j) = image.at<Vec3b>(X, Y); } } int Col_b = image.cols * 2;//新的图像长宽增加一倍 int Row_b = image.rows * 2; Mat biggerImage(Row_b, Col_b, CV_8UC3); for (int i = 0; i < Row_b; i++){ for (int j = 0; j < Col_b; j++){ int X = i / 2; int Y = j / 2; biggerImage.at<Vec3b>(i, j) = image.at<Vec3b>(X, Y); } } imshow("image", image); imshow("smallerImage", smallerImage); imshow("biggerImage", biggerImage); waitKey(0); return 0;}
程序效果图
1 0
- 图像缩放之最近邻插值
- 图像缩放之最近邻插值
- 图像缩放—最近邻插值
- 图像缩放--最近邻插值
- 图像的插值算法之最近邻插值
- 图像缩放算法及速度优化——(一)最近邻插值
- 图像缩放算法及速度优化——(一)最近邻插值
- 图像缩放--OpenCV cvResize函数--最近邻插值---双线性插值--基本原理
- 图像缩放算法及速度优化——(一)最近邻插值
- 图像缩放--OpenCV cvResize函数--最近邻插值---双线性插值--基本原理
- 图像缩放--OpenCV cvResize函数--最近邻插值---双线性插值--基本原理
- 图像缩放算法及速度优化——(一)最近邻插值
- 图像缩放--OpenCV cvResize函数--最近邻插值---双线性插值--基本原理
- 图像缩放算法及速度优化——(一)最近邻插值
- 图像缩放--OpenCV cvResize函数--最近邻插值---双线性插值--基本原理
- 图像缩放--OpenCV cvResize函数--最近邻插值---双线性插值--基本原理
- 图片缩放之近邻取样插值
- 高质量的快速的图像缩放 之 近邻取样插值和其速度优化
- 笔记8:构造方法和匿名对象
- Android数据存储五种方式总结
- ubuntu修改主机名
- 文件描述符和文件指针的区别
- HDU 4055 Number String(DP)
- 图像缩放之最近邻插值
- Toast优化
- OpenGL-对纹理的理解
- Android中的【Cursor】类总结
- maven-assembly-plugin把java工程打包成为一个可执行的jar包
- mysql中递归树状结构
- 软件项目版本号的命名规则及格式
- 基于位置的服务
- numpy.r_