every blog every motto: The shortest answer is doing.

0. 前言

本节简单介绍下基于Matlab的分形插值代码,网上关于这方面资料比较少,在这里进行简单的整理。

1. 正文

1.1 二维(x,y)分形插值

1.1.1 结果展示

原始点数据新建一个txt文件,保存后删除后缀,放在./data文件夹下


迭代1次,效果

迭代三次效果

1.1.2 代码部分

% This is a fline.m program (fractal line interpolation)
clear
clc% 前期设置
% file_name = input('输入数据文件名:','s');
% rate = input('输入纵向压缩比:');
% iteration_num = input('输入迭代次数(<4):');
file_name = 'num';
rate = 0.3;
iteration_num = 3;
t = num2str(iteration_num); % 迭代次数数值转字符串% 输入、输出路径
input_path = ['./data/' file_name]; % 输入数据存放位置
output_path = [input_path '_output_' t]; % 输出数据存放位置
hold off% 加载数据
eval(['load ' input_path]);
eval(['data=' file_name ';']); % 将数据存放在data变量中
eval(['clear ' file_name]); % 删除文件名变量的值x = data(1,:); % x
y = data(2,:); % y[t,n] = size(x);denominator = x(n) - x(1); % 公式分母
point_section = n-1; % 插值点区间
plot(x,y,'--ok');
hold on% 公式计算
for k=1: iteration_num % 迭代iteration_num次disp(['迭代次数:' ,num2str(k)])for i=1:point_sectiona(i) = (x(i+1)-x(i))/denominator;e(i) = (x(n)*x(i)-x(1)*x(i+1))/denominator;c(i) = (y(i+1)-y(i)-rate*(y(n)-y(1)))/denominator;f(i) = ((x(n)*y(i)-x(1)*y(i+1))-rate*(x(n)*y(1)-x(1)*y(n)))/denominator;endfor i=1:point_sectionfor j=1:nxx((i-1)*point_section+j) = a(i)*x(j)+e(i);yy((i-1)*point_section+j) = c(i)*x(j) + rate*y(j)+f(i);endenddisp(['------第' num2str(k)  '次迭代完成-------']);size(yy)% 迭代计算[t,n] = size(xx);point_section = n-1;% 不同的线性if k==1,line=''':k''';endif k>=2,line='''-k''';endeval(['plot(xx,yy, ' line ')']); % 画图x = xx;y = yy;
end% 保存最后一次数据
save_con_str = ['fwd=fopen(' '''' output_path '''' ',' '''' 'w' '''' ')'];
eval([save_con_str ';']);for i=1:nfprintf(fwd,'%8.4f',xx(i));
end
fprintf(fwd,'\n') ;
for i=1:nfprintf(fwd,'%8.4f',yy(i));
end
fclose(fwd);

1.2 三维(x,y,z) 分形插值

1.2.1 结果展示

原始数据,放在当前文件夹(./data/)下,新建一个txt,保存数据后删除后缀

结果1:

结果2:

1.2.2 代码

二维、三维的分形插值完整代码:
https://download.csdn.net/download/weixin_39190382/12674351

【MATLAB】 分形插值相关推荐

  1. 分形插值matlab,分形插值算法和MATLAB实验

    一,分形插值算法 --分形图的递归算法1,分形的定义 分形(Fractal)一词,是法国人B.B.Mandelbrot 创造出来的,其原意包含了不规则.支离破碎等意思.Mandelbrot 基于对不规 ...

  2. 【老生谈算法】MATLAB分形图形-树叶源码——分形图形

    MATLAB分形图形-树叶 1.文档下载: 本算法已经整理成文档如下,有需要的朋友可以点击进行下载 序号 文档(点击下载) 本项目文档 [老生谈算法]MATLAB分形图形-树叶.docx 2.算法详解 ...

  3. matlab 三维线性插值,MATLAB三维插值与拟合

    MATLAB三维插值与拟合 插值和拟合都是数据优化的一种方法,当实验数据不够多时经常需要用到这种方法来画图.在matlab中都有特定的函数来完成这些功能.这两种方法的确别在于:当测量值是准确的,没有误 ...

  4. matlab植物,matlab分形植物模拟

    学习 您的评论 发布评论 用户评价 关于分形的内容,很好 2018-06-22 11:06:53 基于MATLAB实现分形图形的绘制,如何下载 2018-06-21 19:16:20 ...... m ...

  5. MATLAB一维插值笔记与应用–十安辰

    MATLAB一维插值笔记与应用–十安辰 我们以一个题来了解一维插值,如下: ​ 天文学家在1914年8月份的7次观测中,测得地球与金星之间的距离(单位:m),并取其常用对数值与日期的一组历史数据,如表 ...

  6. matlab chebyshev插值,Matlab之插值

    转自:http://blog..net/htttw/article/details/7251459 Matlab之插值 Matlab中有5种基本的插值方法: nearest:最近邻插值法(平面立体均适 ...

  7. MATLAB拉格朗日插值

    %程序:lagrange.m %功能:拉格朗日插值算法(MATLAB R2009a) %说明:x自变量取值向量 %     y对应x的函数取值 %     xh可以是一个向量,计算xh处插值结果 % ...

  8. Matlab数据插值-内插、外插

    插值就是已知一组离散的数据点集,在集合内部某两个点之间预测函数值的方法. 一.一维插值 插值运算是根据数据的分布规律,找到一个函数表达式可以连接已知的各点,并用此函数表达式预测两点之间任意位置上的函数 ...

  9. matlab实现查值,[数学建模(六)]使用MATLAB实现插值

    常用的插值:拉格朗日多项式插值.牛顿插值.分段线性插值.Hermite 插值和三次样条插值. 1.拉格朗日插值法 function y=lagrange(x0,y0,x); n=length(x0); ...

  10. matlab画动物轮廓图,MATLAB一维插值的应用实例—画左右手的轮廓图

    问题提出 画你自己的手的形状,在MATLAB中输入 figure('position',get(0,'screensize')) axes('position',[0 0 1 1]) [x,y]=gi ...

最新文章

  1. keras-vis可视化特征
  2. C++命名空间(namespace)
  3. redis 超时失效key 的监听触发
  4. 好看的按钮html,html-好看的CSS按钮
  5. 经验 | 计算机视觉顶会上的灌水文都有哪些特征?
  6. java db 使用_JavaDB的基本使用
  7. 周鸿祎在美参加的信息安全大会已有两人确诊新冠肺炎
  8. 现实世界的Windows Azure:采访Applied Information Science的技术总监Vishwas Lele
  9. 软件测试的几大误区(带你踩坑)
  10. winform中的小技巧【自用】
  11. 介绍Unity中相机的投影矩阵与剪切图像、投影概念
  12. Struts2.0中ActionInvocation使用
  13. python批量下载静态页面_Python selenium如何打包静态网页并下载
  14. 常用的邮箱有哪些,可用好用的邮箱大全推荐
  15. Ubuntu18.04 安装NVIDIA英伟达驱动教程
  16. 微信公众平台开发教程Java版(一)环境准备篇
  17. 如何自建微信外卖平台_如何建立微信点餐平台 微信小程序外卖怎么做
  18. linux socket错误提示errno分析
  19. 【C语言笔记】【宏定义系列】 向下舍入到指定数值的倍数
  20. c语言赛车游戏代码,python制作赛车游戏

热门文章

  1. matlab脉冲补偿,基于LabVIEW和Matlab的纳秒脉冲测量信号补偿研究
  2. python 长度queue_Python基础知识梳理
  3. 软件界面是怎么做出来的_可可英语这个软件怎么样?了解的人出来说说真实情况...
  4. Vagrant:将装在C盘的虚拟机移动到别的目录
  5. Java编程:约瑟夫问题——单向环形链表
  6. JavaScript:面向对象简单实例——图书馆
  7. Javascript特效:吸顶
  8. 爬虫:python爬虫学习笔记之Beautifulsoup正则表达式
  9. python 特征选择卡方_为什么pythonsklearn特征选择卡方(chi2)测试不是对称的?
  10. Java集合框架源码解读(4)——WeakHashMap