- 博客(104)
- 资源 (2)
- 收藏
- 关注
原创 【计算机视觉】单应模型与单应矩阵
单应模型、Homography矩阵在SfM或三维重建、VSLAM的初始化过程有着普遍的应用单应模型矩阵的推导设给定同一平面结构两幅图像,相机的内参分别为K1K1K_1、K2K2K_2,以第一幅图的相机坐标系为参考,则两个相机的投影矩阵分别为 P1=K[I0]P1=K[I0]\begin{equation*}P_1=K\left[\begin{arra...
2020-07-19 17:16:59
872
1
原创 【自动驾驶基础】【激光雷达】3D激光雷达与图像传感器的外参标定
外参标定采用长方形模板进行标定,分别获得相机的外参数和激光雷达的外参数;一种基于任意三面体的雷达-相机系统外部参数标定方法:利用环境的三面体,以其设世界坐标系,将激光点云拟合三个平面,求得平面参数,并求得两帧间的雷达的相对位姿,同时,利用射极几何模型,获得图像传感器的相对位姿运动,AX=XB。...
2020-04-02 23:36:34
1874
原创 C++内存管理与智能指针用法小结
C++ 智能指针shared_ptr,unique_ptrstd::shared_ptr<double> db_ptr(new double(0.0));//先声明,后初始化std::shared_ptr<double> db_ptr;db_ptr = std::shared_ptr<double&
2018-06-03 16:43:18
261
原创 Linux 工程开发常用命令小结
1 查看设备$lsusb #查看usb$dmesg #查看状态$depmod #depend module 用于分析可加载模块相依性,供modprobe使用$sudo -i #获取root$2 搜索3 文件操作#zip 文件的生成、解压$unzip#tar格式$tar -xvf #解压$tar -cvf #压缩4 VIM5 Git...
2018-05-14 09:13:05
270
原创 OpenMVG源码笔记
数据结构landmark 点云与相关特征点template<typename Key, typename Value>using Hash_Map = std::unordered_map<Key, Value>;using Index_T = uint32_t;struct Observation{ Observation():id_feat(Und...
2018-05-05 23:12:28
1414
原创 GoogleTest gtest 新手快速入门
15~30min完成入门 GoogleTest(gtest)是一套便捷的测试工具,适合测试算法、类(如构造过程)、功能模块等。以Ubuntu为例简介安装与使用例程。。1 快速安装Gtest:Ubuntu打开terminalwget https://github.com/google/googletest/archive/release-1.7.0.tar.gzcd goog...
2018-03-30 10:07:11
762
原创 相机标定技术原理(1):张氏标定算法详解
相机标定的三种方法1. 基于标定板的辅助标定2. 基于世界属性的半自动标定3. 自标定1. 辅助标定典型方法即标定板标定(立体标定板与平面标定板)张正友提出的标定方法应用广发,基于单应模型实现求解相机内外参数。2. 半自动标定通过利用观察到属性,如平行线、垂直关系,实现标定内参数。3. 自标定通过先验约束条件,如相机的skew因数为零,估计相机的内参数。...
2018-03-17 23:24:48
1581
原创 【图像处理】图像信号处理Image Signal Processing(ISP)技术第1篇
什么是ISP?ISP是Image Signal Processor的缩写,ISP影像信号处理器的主要作用是对前端sensor (影像传感器) 输出的信号做后期处理。不同的ISP用来搭配不同厂商的sensor。ISP在整个camera产品中很重要,它直接影响呈现给用户的画质优劣。图像经过CCD或者CMOS的采集后,需要经过后期处理才可以较好的适应不同的环境,在不同光学条件下都能较好的还原出人眼所见的真实细节。在ISP中它会完成我们常常提及的3A(AWB/AE/AF),自动白平衡/自动曝光/自动对焦)。
2025-11-17 16:42:44
87
原创 【开发工具】Windows10&11远程Ubuntu18及以上桌面
本文介绍如何在Windows系统上远程连接Ubuntu桌面,实现双系统高效切换。方法使用Windows自带的"远程桌面连接"功能。Ubuntu端需安装XRDP服务:执行安装命令、启用服务并开放3389端口,完成后需重启且保持登出状态。Windows端输入Ubuntu的IP地址和系统账号即可连接。该方法简化了跨系统操作流程,适合需要同时使用Windows办公软件和Ubuntu开发环境的用户。
2025-10-07 21:55:06
320
原创 【人工智能原理】Natural Image Statistics A probabilistic approach to early computational vision
视网膜-视神经-LGN(颞下皮质)-V1(初级视觉皮层)-V2-V4。
2025-09-26 23:43:08
198
原创 【深度学习】AI-Codec基于深度学习的图像编解码的方法与实验
本文总结了图像和视频编解码的神经网络方法发展历程。早期基于MLP的方法受限于硬件条件,网络结构较浅;随后出现基于随机神经网络和CNN的方法。2016年首次提出端到端CNN编解码框架,引入变分自编码器(VAE)将编码输出转化为概率分布。CompressAI工具包实现了这些方法,并提供了训练和评测流程。实验表明,通过调整压缩参数可以控制图像质量和比特率。训练时需要特定结构的数据集,并支持从本地加载自定义模型。研究还发现编解码效率问题,提出了优化方案。整体展示了神经网络方法在图像压缩领域的演进和应用。
2025-09-24 22:41:06
746
原创 【工具】【软件】WindTerm远程登录嵌入式系统
WindTerm是一款开源免费的SSH/Telnet/Serial终端工具,支持Windows、Linux和macOS。其特点包括高性能、多协议支持、会话管理、脚本自动化等,适合开发者和系统管理员使用。
2025-09-23 22:48:29
404
原创 【SLAM论文笔记】SplaTAM论文小结
参考方法有ORB-SLAM3、Point-SLAM、NICE-SLAM、Kintinuous、ElasticFusion,测试数据集有ScanNet++、Replica、TUM-RGBD、Orig-ScanNet,SpaTAM并未在全部对比均为第一,表现最佳的是在ScanNet++、Replica,ScanNet++上SplaTAM方法位姿精度比第2名ORB-SLAM3高两个数量级,在TUM。上无稀疏SLAM结果,NICE-SLAM与Point-SLAM占优。SplaTAM基本做到了SOTA。
2025-09-07 21:27:43
854
原创 【嵌入式】【树莓派】【大疆PSDK】用树莓派4B开发大疆行业无人机应用系统小结-【硬件篇】
近期在开发行业无人机应用软件,服务器下发飞行控制命令如航线任务,通过蜂窝移动网络或卫星通信网络传输到无人机机载嵌入式系统,该系统处理任务消息并通过无人机飞控硬件与软件接口,与无人机飞控交互,同时机载嵌入式系统收集无人机状态数据,上传到服务器给平台软件处理分析。本文以大疆行业无人机M350-RTK为例,使用M350-RTK的E-Port接口、PSDK等软硬件接口,树莓派4B做原型,实现了上述嵌入式软硬件系统。
2025-09-07 21:25:15
554
原创 【跨平台编译】【树莓派】在x86上编译树莓派上运行的C&C++代码,搭建树莓派4B的跨平台编译环境
本文介绍了在x86 Ubuntu系统上交叉编译适用于树莓派4B(aarch64架构)C++程序的实现方法。通过apt安装aarch64交叉编译器(gcc-aarch64-linux-gnu),配置CMake工具链文件指定编译器路径和ARMv8架构标志,成功实现本地编译ARM平台可执行文件。相比32位ARM方案,该方法针对64位树莓派4B硬件特性进行了适配,解决了远程开发效率低下的问题。关键点包括正确设置交叉编译器路径、指定ARMv8架构参数以及配置CMake查找路径模式。
2025-09-01 17:56:26
378
原创 【树莓派】【嵌入式】远程开发树莓派,解决ping不通外网问题
电脑网络共享,右键桌面右下角的网络图标,网络和Internet,高级网络设置,打开联网连接的适配器选项,勾选分享网络。先把这个电脑与树莓派相连的以太网改为手动, 192.168.137.1,网关255.255.255.0,保存。用网线连接树莓派B,若有电脑A有网口,直接连,若无,网线另一端接网口转USB,USB接电脑。在树莓派系统内设置静态IP,如192.168.137.129。
2025-08-19 22:11:24
258
原创 【开发工具】VS code远程树莓派&AI开发板Ubuntu
最近在树莓派、算能SoC https://www.sophgo.com/sophon-u/product/introduce/sg200x.html 上开发Python、C&C++源码,短期避开跨平台编译,直接在板子上改代码,用VS code远程登录,比从本地复制确实方便。本地Windows打开VS code,点击左下角><的标志,选择Connect to host,输入。无法连接成功,可能是由于板子记录了之前远程电脑的密钥,导致新机器无法与之建立联系。,然后正常登录,提示输入远程系统上账号对应密码。
2025-08-13 10:11:56
203
原创 【SLAM】Soomthing And Mapping技术参考
参考的实验结果通过结果可视化直观验证了该方法在建图一致性方面的优势,并且量化对比了LOAM、SegMatch、IE与使用submap建图的精度,其中基于submap的建图精度最高,多个场景的上述方法的RMSE均值为85.4cm 89.0cm 14.5cm 5.3cm。Tectonic SAM,采用因子图模型,优化方法估计状态(地图与位姿参数),本文将submap类比于大陆板块(Tectonic),对submap内部节点改变不明显,submap之间可大幅度调整。求解最小二乘问题,由于使用矩阵的平方根,称为。
2024-03-11 18:26:10
1140
原创 【点云】激光点云建图评测
解决:相机与INS的外参Tci中的Z轴加0.3度,平移量z轴减去0.1m,使得某设备某次的建图重投影OK;建议LiDAR与INS的标定方法与相机和INS的标定在原理保持一致。验证方法:LiDAR与INS采用连续时间系统标定,与依靠INS定位的标定参数比对;最大厚度、90%最大厚度、厚度标准差与RMS等,类似标志牌的点云厚度评测。基本过程描述:某一时刻图像,查询INS位姿,利用Tci计算相机位姿,分析:LiDAR与INS的外参或INS与相机的外参误差过大。点云从世界坐标转换到相机坐标,利用齐次坐标表达,
2024-03-11 18:09:34
1282
原创 【自动驾驶】Submap总结
大规模点云地图的点云数量一般为10的6+次方量级,直接而全部加载对内存大小要求高, 空间尺度大,不便于快速变换视角,为便于可视化,提高查看效率,可将原始点云按网格分组,如以20m见方将点云分划为不同的submap,可视化“缩略地图”,每个submap以单个点显示,一瞥全貌,同时可选中感兴趣的区域,“放大”,可显示选中区域的原始点云细节。为相机坐标系下B相应局部坐标系的姿态变换矩阵;陆标点在待投影相机的坐标系下表示为。为相机坐标系下B相应局部坐标系的原点坐标,则在相机坐标系下的表达,,投影方程表达如下,
2024-03-08 17:31:56
1361
原创 【论文笔记】On the Principles of Parismony and Self-Consistency for the Emergence of Intelligence
人类由于生物体的遗传约束,尤其是神经系统的低耗能、高能效比的特点,情绪与本能往往超越理智与良知,而群体(社会)的动态演变,复杂性远超越自然,致使个体与群体在某些场景、阶段表现不尽人意,同时个体也在不断学习历史经验与教训,群体演变中有一个迟滞的反馈。植物、动物的生化机理,和动物的先天遗传或本能,这都是生物进化、学习的结果,并被记录到DNA作遗传;我想动物的智能包含潜意识、情绪、感情、本能等,人类则在动物智能的基础上,进化出来理智、想象力、良知与道德感、信念与意志等等,我认为这些都可以称为模型。
2024-03-07 18:44:17
871
1
原创 【设计模式】工厂模式与抽象工厂模式
另一个场景,读者查、借还书都需要管理系统从数据库查询书籍、读者账户系统,同时考虑系统未来用不同的第三方数据库,如何设计呢?现在增加一个需求,增加文学书籍类,专业类、文学类都要支持按语种检索,工厂模式便于对新增需求的扩展,以图书馆管理系统为例,需要API提供查询不同专业分类的书目列表,一般实现,用统一的工厂接口提供获取数据的功能,可以把构建返回对象,提取到工厂类,
2024-03-07 17:49:01
838
原创 【设计模式】外观模式
以图书馆管理系统为背景,还书流程包含更新书的借阅状态、计算读者账户的逾期费、支付费用等,希望提供函数实现一键式处理。暴露了内部实现,客户不必知道内部知识,同时考虑未来新需求,可以把这些封装到一个类,新类提供接口,
2024-03-06 20:40:06
448
原创 【深度学习】COCO API源码解读
本文介绍了COCO API如何通过Cython将C语言实现的语义分割掩码解析功能封装为Python接口。具体实现路径包括:底层C代码(maskApi.h/c)、Cython封装层(_mask.pyx)以及最终的Python API。代码示例展示了如何通过Cython调用C函数,并提供了Python接口封装示例,包括掩码编码等功能。整个架构实现了从底层C代码到高效Python接口的无缝衔接。
2024-03-06 20:20:57
673
原创 深度学习从入门到精通:Pytorch基础
对图像预处理:https://pytorch.org/vision/stable/transforms.html。典型维度为N X C X H X W,N为图像张数,C为图像通道数,HW为图高宽。transforms.Compose()设置图像预处理模式组合,例如。fiftyone下载数据集在/home//fiftyone,sequeeze()将长度为1的维度抹除,数据不会减少。程序参数 忘记加–cuda,导致训练数据是在cpu上。,输入全连接层,需要变形为。模型输出取mean()。
2024-03-05 17:52:05
1115
1
原创 【深度学习】TensorFlow基础介绍
Int64存储bool、Enum、uint32、int32、int64、uint64,Bytes存储字符串、二进制,Float存储float(float32)和double(float64)。tensorflow定义的数据格式,一种二进制文件格式,用于保存和读取图像和文本数据。tfrecord文件包含了tf.train.Example protobuf数据。不同点:变量可被TensorFlow的自动求导机制求导,常被用于机器学习模型的参数。采用tfrecord的数据协议,Dataset结构需参考。
2024-03-05 17:40:09
754
原创 《模式识别与机器学习》第一章
有限训练数据,一交叉验证方法,S-fold cross-validation:数据分成S份,每次S-1份训练,余下1份验证,S种组合训练与验证。观测数据的多少,影响曲线拟合情况:同样的模型,如较少的数据会导致严重过拟合,较多的数据会使得拟合更接近理想模型。相对熵:用分布q近似未知分布p,发送信息编码时所谓最优编码方法,则为使得信息无失真,需要额外的信息量,称为相对熵。用变量表示事件,离散变量的熵的最大值为lnM,M为离散变量的取值的个数。:向量,曲线拟合问题中的待估计的参数,即M阶多项式的各阶系数。
2024-03-05 17:29:55
892
原创 Focal Loss介绍
样本少的类别较难分类,Focal loss有助于提高样本少类别的准确率;但难分样本不局限于样本数少的类别。Focal loss从分类难易程度加权loss,使得loss聚焦于难分样本。正负样本个数不均,导致训练反馈偏重于样本多的类别。采用加权,平衡交叉熵。
2024-03-04 17:39:46
789
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅