该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

clc;clear all;close all;%%%二维直线拟合

%%%生成随机数据

%内点

mu=[0 0]; %均值

S=[1 2.5;2.5 8]; %协方差

data1=mvnrnd(mu,S,200); %产生200个高斯分布数据

%外点

mu=[2 2];

S=[8 0;0 8];

data2=mvnrnd(mu,S,100); %产生100个噪声数据

%合并数据

data=[data1',data2'];

iter = 100; %%% 绘制数据点

figure;plot(data(1,:),data(2,:),'o');hold on; % 显示数据点

number = size(data,2); % 总点数

bestParameter1=0; bestParameter2=0; % 最佳匹配的参数

sigma = 1;

pretotal=0; %符合拟合模型的数据的个数 for i=1:iter

%%% 随机选择两个点

idx = randperm(number,2);

sample = data(:,idx); %%%拟合直线方程 y=kx+b

line = zeros(1,3);

x = sample(:, 1);

y = sample(:, 2); k=(y(1)-y(2))/(x(1)-x(2)); %直线斜率

b = y(1) - k*x(1);

line = [k -1 b] mask=abs(line*[data; ones(1,size(data,2))]); %求每个数据到拟合直线的距离

total=sum(maskpretotal %找到符合拟合直线数据最多的拟合直线

pretotal=total;

bestline=line; %找到最好的拟合直线

end

end

%显示符合最佳拟合的数据

mask=abs(bestline*[data; ones(1,size(data,2))])

hold on;

k=1;

for i=1:length(mask)

if mask(i)

inliers(1,k) = data(1,i);

k=k+1;

plot(data(1,i),data(2,i),'+');

end

end %%% 绘制最佳匹配曲线

bestParameter1 = -bestline(1)/bestline(2);

bestParameter2 = -bestline(3)/bestline(2);

xAxis = min(inliers(1,:)):max(inliers(1,:));

yAxis = bestParameter1*xAxis + bestParameter2;

plot(xAxis,yAxis,'r-','LineWidth',2);

title(['bestLine: y = ',num2str(bestParameter1),'x + ',num2str(bestParameter2)]);

怎样用matlab拟合,怎么用用matlab拟合两条直线相关推荐

  1. matlab如求曲线插值点,两条曲线之间的插值(matlab)

    好了朋友们.我有以下问题: 我有以下情节的数据. 因此该图的数据文件包含三列. 第二和第三个是x,y点.第一个是这些点所属的系统. 在这种情况下,红色的是20年的系统. 30年来的蓝色. 我想要找到的 ...

  2. matlab 平行,MATLAB判断两条直线平行

    两条直线平行的判据比较简单,只要斜率相等就可以了.但也有特殊情况,比如平行于y轴的直线斜率没有定义. 综合考虑以上情形,就不难将程序写出来,具体如下: 函数 isparallellines.mfunc ...

  3. Matlab计算两条直线的交点坐标

    %% 已知两条直线的斜率和截距,求交点坐标 function [x,y]=linecross(k1,b1,k2,b2)x=[];y=[];if k1==k2&b1==b2disp('chong ...

  4. 16 直线识别拟合角平分线(matlab程序)

    1.简述 直线检测是数字图像处理的重要内容,在道路识别,建筑物识别,医学图像分析等领域都有十分重要的应用.通过对已经获得的图像进行边缘检测,然后用Hough变换对边缘检测进行直线检测.该方法简单,受直 ...

  5. 根据坐标如何在matlab中l连成曲线,matlab中,如何将两条曲线画在一个坐标系里,plot(x1,x2,y1,y2)还是怎样...

    matlab中,如何将两条曲线画在一个坐标系里,plot(x1,x2,y1,y2)还是怎样以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快 ...

  6. Open3D RANSAC算法拟合分割多条直线

    Open3D RANSAC算法拟合分割多条直线 Open3D是一个基于Python的可视化和三维数据处理库,它包含了一些现代计算机视觉算法和工具,使得对3D图像和点云数据进行处理变得更加轻松.在Ope ...

  7. matlab拟合高次相,matlab 多元高次非线性函数拟合,回归,求教高手!

    问题描述: matlab 多元高次非线性函数拟合,回归,求教高手! 有这样几个数组 自变量n个: x=[...] y=[...] m=[.] w=[.] . 因变量一个: z=[.] 模型1(两个自变 ...

  8. Matlab 隐函数方程求解最小二乘法拟合一阶线性拟合二阶拟合传感器实验

       九层妖塔 起于垒土 Matlab 最小二乘法拟合一阶线性拟合&传感器实验 一.代码 二.数据处理结果 三.Notes 一.代码 %电容传感器位移实验数据 最小二乘法一阶线性拟合 x = ...

  9. 多项式在matlab中的应用,matlab的应用-多项式函数及多项式拟合

    matlab的应用-多项式函数及多项式拟合 Matlab 的应用- 多项式函数及多项式拟合 本节将向大家简要介绍 matlab 在多项式处理方面的应用. 多项式函数主要有: roots 求多项式的根 ...

  10. 最小二乘法函数拟合原理及matlab实现—数学笔记

    最小二乘法函数拟合原理及matlab实现 --数值分析数学笔记 如有纰漏,欢迎指正 文章目录 最小二乘法函数拟合原理及matlab实现 前言 一.拟合标准 1.使偏差向量满足 1 1 1 - 范数 2 ...

最新文章

  1. 初识广度优先搜索与解题套路
  2. Oracle 11.2.0.1 升级到 11.2.0.3 示例
  3. Android开发之sdcard读写数据(源代码分享)
  4. 找新朋友(欧拉函数)
  5. 关于SAP Spartacus在服务器端渲染模式和SAP Commerce Cloud API白名单的问题
  6. VC++动态链接库DLL编程深入浅出
  7. JAVA邮件发送的授权码_java实现邮件发送
  8. JavaWeb——什么是Session及Session的用法
  9. 蓝牙解码格式哪个最好_拆解报告:山灵UP2 蓝牙音频接收器
  10. matlab语言在天线设计,matlab语言在天线设计中的运用
  11. HOJ 10027 Longest Ordered Subsequence Extention
  12. 2022年全球及中国工程机械租赁行业头部企业市场占有率及排名调研报告
  13. 设计模式之禅之单一职责原则
  14. unity Layer CullingMask
  15. TX1刷机教程(安装caffe、cuda/cudnn)
  16. 计算机专业课程计划,计算机专业课程表(教学计划)
  17. Excel如何将数据拆分开
  18. Azure DevOps —— Azure Board 之 长篇故事、特性、用户情景(故事)的用法
  19. Android开发的参考书籍和参考网站
  20. GBase 8s HAC集群简介

热门文章

  1. 明小子mysql_安全狗最新版SQL注入防护多种方式bypass(简简单单/各种数据库通用)...
  2. 代码版本管理软件Git的优势和用法
  3. 计量数据分析数据库-计量分析资料大全空间计量分析资料大全
  4. PASCAL VOC数据集简介
  5. wⅰndows办公软件2003,办公软件2003官方下载-Office 2003官方下载免费完整版-华军软件园...
  6. 【系统分析师之路】2020年系统分析师综合知识历年真题
  7. 常见ActiveX控件下载大全
  8. 股市最好用的大数据软件_最实用的5款炒股软件
  9. 中国卫生健康统计年鉴(2006-2021年)
  10. 试验设计第二版茆诗松课后题答案_茆诗松数理统计学答案