Bi-cubic interpolation

本文深入探讨了三次样条插值(Bi-cubic interpolation)的概念,这是一种在图像缩放和数字信号处理中广泛使用的高级插值技术。通过这种方法,可以实现平滑且精确的数据点估算,以提供高质量的图像重采样。
摘要由CSDN通过智能技术生成

Bi-cubic interpolation

/*******2019.03.31**********
双三次多项式插值 Bi-cubic interpolation
插值数据大小384*122,网格间距24m*24m
122行,384列
将数据模型插值为网格间距为dx=4m,dz=6m的数据模型。
数据文件名为md.txt
***************************/
#include<cstdio>

 //参数及常量定义 
 const int M=9,N=9;                       //原始数据大小
 const int dX=10,dZ=10,dz=2,dx=2;             //原始和插入后的网格间距 
 const int m=dZ/dz*(M-1)+1,n=dX/dx*(N-1)+1;  //插值后网格大小 
 double indata[M][N]={0.0};           //原始数据
 double outdata[m][n]={0.0}; 
 FILE * fpin,*fpout;         //两个文件指针,表示输入输出 

 struct matrix {  //定义矩阵结构体 
 	int dx,dy;
 	double **A;
 	matrix()  {}
 	matrix (int m ,int n) {  //动态申请空间 
 		A=new double *[m];
 		for(int i=0;i<m;i++) {
 			A[i]=new double [n];
		 }
		 dx=n;
		 dy=m;
	 }
 }; 
 matrix operator * (const matrix c1,const matrix c2) { //定义矩阵乘法 
 	matrix temp(c1.dy,c2.dx);
 	d
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值