- 博客(19)
- 资源 (6)
- 问答 (5)
- 收藏
- 关注
原创 【OpenSfM】two_view_reconstruction_and_refinement
two_view_reconstruction_and_refinement` 函数用于利用已知的旋转(`R`)和平移(`t`)信息进行两幅图像之间的三维重建和优化。具体来说,它根据相机的相对位姿(`R` 和 `t`),通过对图像中的特征点(`b1` 和 `b2`)进行反投影,找到满足几何约束的匹配点(称为内点),并对这些点进行优化。如果内点的数量大于 5,说明重建初步是可信的。如果 `transposed` 为 `True`,则 `R` 和 `t` 被转置和调整,以保证与计算过程中的其他步骤保持一致。
2024-10-04 22:38:43
529
原创 【OpenSfM】compute_image_pairs
compute_image_pairs函数在 OpenSfM 中的主要作用是计算所有匹配的图像对,并根据重建能力对它们进行排序。
2024-10-03 23:01:41
439
原创 【tensorflow】线性模型实战
线性模型:y = 1.477 * x + 0.0891. 采样数据采样噪声eps在均值0,方差0.01的高斯分布中,而后在均匀分布U(0,1)中,区间[-10,10]进行n=100次随机采样:data = []for i in range(100): x = np.random.uniform(-10.,10.) #均匀分布 eps = np.random.normal(0.,0.1) #正态分布 y = 1.477 * x + 0.089 + ep.
2020-11-05 10:40:52
325
1
原创 【python】labelme制作数据集标签(json转txt)
1. labelme制作标签安装:https://github.com/wkentaro/labelme 有列出各种系统安装方法启动:终端输入labelme(有介绍怎么启动)启动以后:处理完图像以后保存,json格式。2. json转txtimport osimport jsonimport numpy as npdir_json = '/test_label_json/' #json存储的文件目录dir_txt = '/test_label_json/' ...
2020-10-17 15:56:41
5171
5
原创 【pytorch_6】Logistic回归的实现
1. Logistic 函数函数可以将输出映射到[0,1]之间,函数会逐渐趋于平稳,即饱和,对应着导数会越来越小(至少会>0)。如图:2. 定义模型3. 定义Loss损失和优化Loss函数:首先线性回归的损失函数使用的是:而对于二分类的交叉熵损失函数,即:如果使用Mini-Batch损失函数处理则变成了此时Logistic回归模型所用的损失函数。优化:SGD4. 训练以及更新实现过程:import...
2020-10-06 11:42:56
523
原创 【pytorch_5】线性回归的实现
步骤:1. 准备数据import torchx_data = torch.Tensor([[1.0],[2.0],[3.0]])y_data = torch.Tensor([[2.0],[4.0],[6.0]]) 2. 设计模型:class LinearModel(torch.nn.Module): #继承 def __init__(self): #构造函数,初始化对象 super(LinearModel,self).__init
2020-10-03 21:52:09
1184
原创 【pytorch_4】实现Back Propagation(BP)
1. 线性模型:2. 损失函数:import torchx_data = [1.0,2.0,3.0]y_data = [2.0,4.0,6.0]w = torch.Tensor([1.0]) #存储数据w.requires_grad = True #计算梯度def forward(x): #定义线性模型 return x * wdef loss(x,y): #定义损失函数MSE y_pred = forwar...
2020-10-02 18:04:12
139
原创 【pytotch_3】SGD随机梯度下降的实现
梯度下降是对于全部样本而言的,所以它需要的是代价函数,对loss最终要求和。即:所以带入后:对于随机梯度下降(SGD)来说,是对于单个样本而言的,即对每个样本梯度更新,并迭代权重。所以它每次只用loss函数即可,无需求和。损失函数:SGD实现:import matplotlib.pyplot as pltx_data = [1.0,2.0,3.0]y_data = [2.0,4.0,6.0] #输入两个样本数据w = 1.0 ...
2020-10-01 21:29:53
341
原创 【pytorch_2】梯度下降的实现
想得到一个全局最小代价值,此优化问题为:梯度下降算法根据贪心算法的思路,寻找最优,但容易陷入局部最优里(由于在损失函数中并无太多局部最优点,所以寻找损失函数的最优值其实是不易陷入的)其中,alpha为学习率。注:此函数中最重要的一个点是鞍点(梯度为0),即陷入鞍点后无法继续迭代。如果将上一文中的线性模型带入,进行梯度下降计算损失值:得到梯度函数:对此梯度算法过程进行实现:import matplotlib.pyplot as pltx_da...
2020-09-30 16:09:20
173
原创 【pytorch_1】实现线性模型和损失函数
1. 从线性模型开始,线性模型的形式:2. Training Loss(Error)其中Mean Square Error:我们可以输入几个简单的数画一个损失函数的图:import numpy as npimport matplotlib.pyplot as pltx_data = [1.0,2.0,3.0] #输入训练集y_data = [2.0,4.0,6.0]def forward(x): #定义模型y=x*w ret...
2020-09-29 21:42:12
361
原创 【配置问题】python以及pip路径配置问题(mac)
自己下了python3.8以后……1. 首先查了一下python3的版本>>python3 -versionPython 3.7.02. 打开VIM编辑器vim ~/.bash_profile根据提示进去编辑界面,输入python3.8的路径,如下:export PATH=$PATH:/usr/local/bin/python3.8alias python3="/usr/local/bin/python3.8"按shift+zz保存退出3. 然后.
2020-09-28 20:42:27
652
原创 【配置问题】pkg_resources.DistributionNotFound: The ‘pip==20.1.1‘ distribution was not found and is ……
原因:可能是默认目录软连接过多引起的一个解决方法:1. 先查看pip3默认路径>>where pip3/Library/Frameworks/Python.framework/Versions/3.8/bin/pip3/usr/local/bin/pip3/usr/bin/pip32. 删除旧版本的软连接>>rm /Library/Frameworks/Python.framework/Versions/3.8/bin/pip3...
2020-09-28 19:57:36
10336
原创 1006 换个格式输出整数 (15 分) JAVA
让我们用字母B来表示“百”、字母S表示“十”,用12...n来表示不为零的个位数字n(<10),换个格式来输出任一个不超过 3 位的正整数。例如234应该被输出为BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。输入格式:每个测试输入包含 1 个测试用例,给出正整数n(<1000)。输出格式:每个测试用例的输出占一行,用规定...
2019-11-22 17:08:30
291
原创 1001 害死人不偿命的(3n+1)猜想 (15 分) JAVA
卡拉兹(Callatz)猜想:对任何一个正整数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国...
2019-11-21 15:42:50
106
原创 机器学习经典算法——决策树
1.决策树模型 决策树是一种基本的分类与回归方法,以建树的形式来做决策。 决策树学习的三个步骤:特征选择、生成决策树、决策树修剪。2.特征选择特征选择就是寻找属性来划分样本,随着划分过程不断进行,我们希望决策树的分支结点所包含的样本尽可能属于同一类别,即结点的"纯度"越来越高。其准则就是信息增益或信息增益比。信息熵:信息熵越小代表的样本纯度越高。信息增益:信息增益...
2019-11-17 20:55:32
446
原创 虚拟地址空间
(1)内核区:存储OS内核代码和数据及每个进程有关的数据结构(2)用户区:用户栈——存储调用参数、返回值/地址、局部变量等。 共享库——存储公共函数库,如printf等。 堆——动态申请存储区,如C中malloc()、free(),C++中的操作符new和delete。 ...
2018-05-10 22:10:12
188
原创 ARP地址解析原理(图)
有两个主机A、B,解析时先查询ARP表。 -->若B的MAC地址存在,则直接利用表中的地址对IP数据包封装,并发送给主机B。 -->若B的MAC地址不存在,则: ...
2018-05-09 19:54:18
1118
原创 PAT:1012. 数字分类 (20)
给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4...;A3 = 被5除后余2的数字的个数;A4 = 被5除后余3的数字的平均数,精确到小数点后1位;A5 = 被5除后余4的数字中最大数字。输入格式:每个输入包含1个测试用例。每个测试用例先给出一个不超过1000...
2018-04-02 19:59:35
192
原创 用一行python写出1+2+3+…+10**8
----------可以用reduce()这样:reduce(lambda x,y:x+y,range(1,10**8))首先利用lambda造一个求和函数,在进行累加计算。
2018-03-20 17:53:38
4416
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人