当前位置: 首页 > wzjs >正文

白云区网站开发公司做网络推广的公司

白云区网站开发公司,做网络推广的公司,鼠标滚轮翻页网站模板,个人网站和企业网站需求 : 用C实现一堆离散的二维点拟合出来一条直线 理论 直线公式: a x b y c 0 axbyc0 axbyc0 随机选两个点,构造一般式直线: a x b y c 0 axbyc0 axbyc0 方向向量: d ( x 2 − x 1 , y 2 − y 1 ) d (…

需求 : 用C++实现一堆离散的二维点拟合出来一条直线

理论

直线公式:
a x + b y + c = 0 ax+by+c=0 ax+by+c=0

  1. 随机选两个点,构造一般式直线:
    a x + b y + c = 0 ax+by+c=0 ax+by+c=0

方向向量:
d = ( x 2 − x 1 , y 2 − y 1 ) d = (x2-x1,y2-y1) d=(x2x1,y2y1)
法向量:
n = ( − d y , d x ) n = (-d_y,d_x) n=(dy,dx)

在直线的“一般式方程”中:
ax+by+c=0
这个 (a,b) 实际上就是直线的法向量

也就是
a = y 2 − y 1 b = x 2 − x 1 c = − a x 1 − b y 1 a = y2-y1 \\ b= x2-x1\\c = -ax1-by1 a=y2y1b=x2x1c=ax1by1

  1. 计算所有点到直线的距离:

d i = ∣ a x i + b y i + c ∣ a 2 + b 2 d_i = \frac{|ax_i + by_i + c|}{\sqrt{a^2+b^2}} di=a2+b2 axi+byi+c

  1. 判断是否为内点(小于阈值)

  2. 重复若干次,选出包含最多内点的模型

若:

s 是一次采样所需点数(拟合直线是 2)
p 是样本中内点的比例
k 是需要的置信度(如 0.99)
则最少采样次数
N 应满足:

1 − ( 1 − p s ) N > = k = = > N > = l o g ( 1 − k ) 1 − P s 1 - ( 1 - p^{s} ) ^N >= k ==> N>= \frac{log(1-k)}{1-P^s} 1(1ps)N>=k==>N>=1Pslog(1k)

这可以根据实际数据调整迭代次数。

Code

//point2ds输入 iterations迭代次数 bestliner输出最佳的点数,besta,bestb,bestc 直线的参数
void testransac2D(std::vector<Eigen::Vector2d> point2ds, int iterations, int& bestliner, int& besta, int& bestb, int& bestc) {//生成随机数std::random_device rand;std::mt19937 gen(rand());std::uniform_int_distribution<> distribution(0, point2ds.size() - 1);for (int i = 0; i < iterations; i++) {int id1 = distribution(gen);int id2 = distribution(gen);if (id1 == id2) continue;Eigen::Vector2d point1 = point2ds[id1];Eigen::Vector2d point2 = point2ds[id2];//计算直线int a = point1.y() - point2.y();int b = point1.x() - point2.y();int c = -a * point1.x() - b * point1.y();double thr = 10.;int liner = 0;//计算直线距离 算出内点数量最多的那个for (auto& point : point2ds) {double dis = abs(a * point.x() + b * point.y() + c) / sqrt(a * a + b * b);if (dis < thr) {liner++;}}if (liner > bestliner) {bestliner = liner;besta = a;bestb = b;bestc = c;}}
}
http://www.dtcms.com/wzjs/232086.html

相关文章:

  • 合肥做网站的企业宜昌今日头条新闻
  • 中英文的网站设计王通seo
  • 毕业设计做网站用什么网络推广方式有哪几种
  • 网站正在建设中av手机版seo网络推广经理招聘
  • 模版网站怎么做企业如何网络推广
  • 交友app搭建网络排名优化软件
  • 安康做网站seo教程 百度网盘
  • 网站建设公司排名及费用搜索引擎优化员简历
  • 如何优化网站提高排名西安seo推广
  • 建设网站的意义作用是什么网络销售新手入门
  • 律师做网络推广哪个网站好百度信息流广告怎么投放
  • 一站式做网站费用seo优化方案
  • 泉州网站设计理念培训网络营销的认识与理解
  • 湖南seo优化价格北京快速优化排名
  • 做网站案例郑州今天刚刚发生的新闻
  • wordpress安装文档北京网站优化排名推广
  • vps 网站打不开微信群推广平台有哪些
  • 摄影网站的建设的论文亚马逊seo是什么意思
  • 计算机多媒体毕业设计网站建设网络推广员岗位职责
  • 邯郸吧厦门百度推广排名优化
  • 苏州网站seo服务关键词搜索排名查询
  • 网络公司建设网站国外免费网站服务器
  • 陕西建设执业中心网站百度公司招聘官网
  • led营销型网站建设百度付费问答平台
  • 有模版之后怎么做网站百度关键词推广可以自己做吗
  • 自己做的网站某个网页打开很慢建站系统有哪些
  • 建设银行手机查询网站如何使用免费b站推广网站
  • 宜州市住房保障和城乡建设局网站短视频seo优化
  • dnf做任务解除制裁网站seo中文意思是
  • 厦门网页建设公司谷歌seo和百度seo