自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(513)
  • 资源 (5)
  • 收藏
  • 关注

原创 python Fabric在自动化部署中的应用

在运行输入连接信息已经是非常古老的做法了,Fabric 提供了一套在 fabfile 或命令行中指定服务器信息的简单方法。这里我们不展开说明,但是会展示最常用的方法:设置全局主机列表env.hosts。env是一个全局的类字典对象,是 Fabric 很多设置的基础,也能在 with 表达式中使用(事实上,前面见过的 ~fabric.context_managers.settings 就是它的一个简单封装)。当 fab 加载 fabfile 时,将会执行我们对 env 的修改并保存设置的变化。

2025-01-27 09:52:12 1468

原创 github通过修改hosts访问

ubuntu系统下,常常因为国内网络原因无法访问github官网或者也无法使用使用git clone指令,搭建梯子又过于复杂,可使用修改hosts文件,添加IP地址的方法改进。3、Ubuntu上Github下载慢的问题解决方法记录(linux自带工具查看网址的DNS)2、输入github域名:http://github.com,点击检测。2、解决ubuntu无法正常访问github的问题(添加的域名比较全)4、将IP地址复制到Hosts文件中。3、选择合适的IP地址,复制。

2024-11-29 22:37:19 3508

原创 ubuntu20.04运行ORB_SLAM2

安装cmake、git、gcc、g++。

2024-10-13 16:56:09 1024 1

原创 vscode安装及c++配置编译

VS Code官网下载地址:Visual Studio Code - Code Editing. Redefined。 搜索chinese,点击install下载安装中文插件。 VS Code是一个高级的编辑器,只能用来写代码,不能直接编译代码。所以,可使用 Windows平台下的一个gcc编译器MinGW-w64进行代码编译。 MinGW-w64编译器套件的下载:https://sourceforge.net/projects/mingw-w64/files/。在

2024-10-03 23:09:19 1958

原创 python实现多个pdf文件合并

打印发票时,需要将pdf合并成一个,单页两张打印。网上一些pdf合并逐渐收费,这玩意儿都能收费?自己写一个脚本使用。输入pdf文件夹路径data_dir,统计目录下的“合并后的PDF”文件夹下,输出合并后的pdf文件。

2024-09-17 08:15:00 676

原创 C++ GDl+ 多张图片合并生成GIF动画格式图片

使用ImageMagick多张图合成GIF。

2024-08-08 20:59:47 1018

原创 python-docx-template实现docx模板编程

python-docx库来创建word文档,但是对于文档的修改功能并不灵活。python-docx-template 模块主要依赖两个库, python-docx用于读取,编写和创建子文档 , jinja2用于管理插入到模板docx中的标签。其基本思路是利用jinja2制作Word模板,并动态向模板中插入文字、图片、表格等内容。1)2)3)

2024-08-08 20:53:57 1428

原创 qtcreator编译arm64工程

使用qtcreator编译arm64工程,首先需安装好:qtcreator + qt5.12.2(arm64)+交叉编译工具链。

2024-05-30 22:39:04 983 1

原创 MQTT服务搭建及python使用示例

MQTT(Message Queuing Telemetry Transport)是一种轻量级的、基于发布/订阅模式的通信协议,通常用于物联网设备之间的通讯。它具有低带宽、低功耗和开放性等特点,适合在网络带宽有限或者网络连接不稳定的环境下使用。MQTT协议使用TCP/IP协议栈进行通讯,支持多种编程语言和平台,并且能够提供可靠的消息传递机制。在MQTT中,设备可以发布消息到特定的主题(topic),同时其他设备可以订阅这些主题以接收相应的消息。这种发布/订阅模式使得设备之间的通讯更加灵活和高效。

2024-05-08 22:11:00 6996

原创 windows下使用nginx设置静态资源路由

nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果80端口被占用可以修改为未被占用的端口即可。web访问如下,地址:http://localhost/upload/测试nginx是否启动成功,直接在浏览器地址栏输入网址。,出现nginx页面说明启动成功。

2024-04-16 20:52:24 1310

原创 linux设置程序在开机时自启动

对于某些没有使用systemd的Linux发行版,可以在/etc/rc.local文件中添加自启动命令。请确保该文件具有可执行权限。对于使用systemd作为初始化系统的Linux发行版(如:CentOS 7、Ubuntu 16.04及更高版本等),可以通过创建一个systemd服务来实现自启动。首先,打开当前用户的crontab配置文件:crontab -e。可以使用cron的@reboot事件来在系统启动时运行程序。下次系统启动时,指定的程序将自动运行。然后,重启系统以使更改生效。

2024-04-15 22:57:36 3098

原创 图像配准之HomographyNet

单应性原理被广泛应用于图像配准,全景拼接,机器人定位SLAM,AR增强现实等领域,下图为单应矩阵在图像拼接中的应用示例。

2024-02-14 15:40:21 1899

原创 DFM-无监督图像匹配

提出了一种新的图像匹配方法,利用现成的深度神经网络提取的学习特征来获得良好的图像匹配效果。该方法使用预训练的VGG结构作为特征提取器,不需要任何额外的训练来提高匹配。

2024-02-14 15:30:44 1457

原创 数字PID算法基础

PID控制器在只有比例环节时,存在转速波动和稳态误差。通过增加积分环节可以消除稳态误差,通过微分环节消除转速调节的波动问题。因此,在PID三个环节的共同努力下,就可以实现如下理想的转速调节曲线。

2023-12-30 15:02:51 1288

原创 制作自己的 Docker 容器

我们可以把这个命令写在 Dockerfile 里面,这样容器启动以后,这个命令就已经执行了,不用再手动输入了。注意,指定了CMD命令以后,docker container run命令就不能附加命令了(比如前面的/bin/bash),否则它会覆盖CMD命令。FROM node:8.4:该 image 文件继承官方的 node image,冒号表示标签,这里标签是8.4,即8.4版本的 node。首先,在项目的根目录下,新建一个文本文件.dockerignore,写入下面的内容。

2023-12-24 16:29:52 549

原创 Qt 路径处理

工作目录是指当前目录,运行目录是指exe所在路径。所以将1.txt放到对应命令行执行得目录就行,当然这肯定不是最终得解决办法,最终得解决办法就是使用“QCoreApplication::applicationDirPath()”,即为exe所在得目录。

2023-10-30 20:44:07 1043

原创 ubunt18.04 使用SimpleScreenRecorder进行屏幕录像

2、Ubuntu(Linux)使用SimpleScreenRecorder录屏。录制OpenGl应用程序不需要额外下载解码器;显示录制文件大小,心里有底。随用随录,操作任性;1、Ubuntu下三个实用的录屏软件。

2023-08-28 21:43:12 984

原创 qt创建临时文件

QTemporaryFile * createNativeFile(QFile & file) :// 创建本地临时文件,如果文件不是本地文件,使用QDir::tempPath()创建一个QTemporaryFile,将文件的内容复制给它。这是一个重要的技术,避免了存储在临时文件的应用程序数据损坏。注意:为了验证效果,我们使用了setAutoRemove(false),如果使用完需要删除临时文件,可以开启自动删除模:setAutoRemove(true),也可以手动删除:tmpFile.remove()。

2023-08-27 22:04:29 1048

原创 qt检查文件夹是否有写权限

在判断一个目标路径是否可写时,QFileInfo的isWritable()并不好用,一般我们会基于QFile尝试在目标路径新建一个临时文件,通过判断文件是否创建成功间接判断目标路径是否可写。继续排查,官方文档描述:a)如果未启用 NTFS 权限检查,Windows 上的结果将仅反映文件是否标记为只读。如果自己实现这个逻辑,需要做文件打开,关闭,删除等一系列的处理,可以借助QTemproryFile类实现同样的目的。b)在 NTFS 文件系统上,出于性能原因,所有权和权限检查默认是禁用的。

2023-08-27 22:00:43 1962

原创 std vector 用法

return a>b;// 从大到小排序return a>b;});//使用lambda表达式。

2023-07-31 22:49:12 692

原创 python time 获取毫秒级时间戳

【代码】python time 获取毫秒级时间戳。

2023-06-19 21:04:29 6100

原创 c++获取硬盘or分区序列号

此信息以特定分区类型(如 ext4、xfs)的格式存储,并在重新格式化时发生变化。在使用 Windows 时,可以使用命令获取硬盘分区的(或多或少唯一的)序列号。Linux 有类似的东西吗?获得硬件设备的唯一编码,并且可以通过编程方式检索?

2023-06-19 21:01:39 1582 1

原创 Linux 基本指令 touch, cp 和 mv

linux 中创建新文件、复制、粘贴、 剪切。指令 + --help,查看其它参数用法。

2023-05-14 10:16:54 832

原创 Linux 查看指令 cd,ls,pwd

这个指令会打印出文件的权限 (-rw-rw-r-- 之后我们在细说这个), 用户名, 文件大小, 修改日期, 文件名。功能:查看文件/文件夹内容,支持排序、大小、属性、权限查看。功能:这里的文件大小使用了 K, MB, GB 之类概括。功能:显示所有文件,包括隐藏的文件 (以 . 开头的)2)ls -a (all 的简写) 显示所有文件。功能:输出详细信息 -l (long 的简写)3)ls -lh (human) 显示给人看。4)ls --help 帮助。功能:查看当前目录绝对路径。功能:进入指定目录。

2023-05-14 09:18:55 1358

原创 红外相机工作原理

通过场景中被监控对象自身发射的红外光进行成像,其基于目标与背景或目标各部分之间的温差或热辐射差,生成热像图来发现目标,在此基础上还能将热像图转换成视频图像,产品被称为红外热成像摄像机。自然界中,一切物体都会辐射红外线,因此利用探测器测定目标本身和背景之间的红外线差,可以得到不同的红外图像,称为热图像。红外热成像仪采用红外热成像技术,探测目标物体的红外辐射,并通过光电转换、信号处理等手段,将目标物体的温度分布图像转换成视频图像的设备,我们称为红外热成像仪。,红外线(或称热辐射)是自然界中存在最为广泛的辐射。

2023-05-11 21:52:13 3063

原创 cmakelist.txt 编译并引用动态库

使用 CMakeLists.txt 设置工程以 debug 形式编译。2)动态库类 libHelloSLAM.cpp。1)动态库类 libHelloSLAM.h。

2023-04-24 22:19:40 772

原创 小样本学习

给定两张图片 a 和 b,如果两张图片越相似,则 sim (a, b) 的值越大。在小样本学习问题中,Support Set中每一类往往只有少数几个样本,单单依靠这些样本,不可能训练出一个深度神经网络,甚至无法采用迁移学习中的Pretraining+Fine Tuning方法。将Query图片和Support Set中所有图片全部转化为特征向量,然后依次计算Query图片对应的特征向量和Support Set中各图片对应特征向量之间的距离,返回Support Set中距离最小的图片类别作为预测结果。

2023-02-24 21:14:56 5155 2

原创 使用GDAL进行坐标转换

我国的基本比例尺地形图(1:5千,1:1万,1:2.5万,1:10万,1:25万,1:50万,1:100万)中,大于或等于1:50万均采用高斯-克吕格投影(Gauss_Kruger),又叫横轴墨卡托投影(Transverse Mercator);投影坐标系统是根据某种映射关系,将地理坐标系统中由经纬度确定的三维球面坐标投影到二维的平面上所使用的坐标系统。地图投影就是把地球表面的任意点,利用一定数学法则,转换到地图平面上的理论和方法,一般有两种坐标系来进行表示,分别是地理坐标系和投影坐标系。

2023-02-24 21:10:13 4823

原创 python读取tif图像+经纬度

则,左上角的地理坐标为:(GT(0) , GT(3) ),如果图像不含地理坐标信息,默认返回值是:(0,1,0,0,0,1);(2)用ReadAsArray(, , ,),读出从(xoff,yoff)开始,大小为(xsize,ysize)的矩阵。GeoTIFF使用gdal进行读取,GDAL 是一个开源的操作栅格数据和矢量数据的库,可用于读写、获取坐标系、获取指定位置像元值等。(1)读取一个波段,其参数为波段的索引号,波段索引号从1开始(我打开的这幅图像只有一个波段)4:列旋转,如果图像北方朝上,该值为0;

2023-02-24 21:02:19 7668 3

原创 git 命令行导入仓库

【代码】git 命令行导入仓库。

2023-02-14 21:46:51 228 2

原创 ubuntu 防火墙命令整理

1.2、查看防火墙:firewall-cmd --list-all。1.3、更新防火墙规则:firewall-cmd --reload。1.1、查看防火墙状态:firewall-cmd --state。2.1、临时增加(reload之后消失):不需要reload。2.3、临时删除端口:reload后消失。2.4、永久删除端口:reload后生效。1、防火墙:firewall-cmd命令。2.2、永久增加:reload后生效。4.4、增加服务(临时增加)4.5、删除服务(临时删除)4.1、防火墙服务的状态。

2023-01-29 23:03:24 4194

原创 基于Docker 部署 Seafile服务搭建

MySQL root 用户的密码 (MYSQL_ROOT_PASSWORD and DB_ROOT_PASSWD)Seafile 的配置文件存放在 shared/seafile/conf 目录下,您可以根据。注意:您应该在 docker-compose.yml 文件所在的目下执行以上命令。 示例文件到您的服务器上,然后根据您的实际环境修改该文件。持久化存储 Seafile 数据的 volumes 目录 (volumes)需要等待几分钟,等容器首次启动时的初始化操作完成后,您就可以在浏览器上访问。

2023-01-29 22:45:14 3777

原创 windows 查询并关闭被占用的端口

查询占用此端口的程序pid,此例中最后一项12596即为程序的PID。2、查找被占用的端口,例如8886。1、以管理员权限运行cmd。

2023-01-29 22:35:29 1135

原创 python 异步操作async和await

asyncio是"多任务合作"模式(cooperative multitasking),允许异步任务交出执行权给其他任务,等到其他任务完成,再收回执行权继续往下执行。协程(Co-routine),也可称为微线程,或非抢占式的多任务子例程,一种用户态的上下文切换技术(通过一个线程实现代码块间的相互切换执行)。我们从asyncio模块中直接获取一个EventLoop的引用,然后把需要执行的协程扔到EventLoop中执行,就实现了异步IO。携程对象:执行携程函数 函数名(),得到的就是携程对象。

2023-01-29 22:33:23 13631 1

原创 python websockets实现server和client的通信

第二层 while 的作用是保证 ws 连接一直处于接收状态(长连接),当 ws 被服务端关闭时,会抛出 ConnectionClosed ,一般我们会收到 1000 正常关闭码和 1006 服务端内部错误异常关闭码两种,在上文的代码中,我们收到异常 1006 关闭码时,就 break 退出 while 循环,从而自动关闭 ws 连接上下文,进行一次新的 ws 上下文连接。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。

2023-01-29 22:26:24 7174

原创 ubuntu18.04运行ORB_SLAM2

下载完成后解压缩到主目录(其他位置也可),进入ORB_SLAM2文件夹进行编译。注意代码最后一部分是数据集的存储路径,需要按照自己的存储路径进行更改。下载好以后拷贝associate.py至ORB_SLAM2主文件夹内。在associate.py所在的目录执行:(将RGB信息和深度信息链接到一起)在ORB_SLAM2文件夹内新建data(名字随意)文件夹,用于存放数据集,将刚刚解压缩后的文件夹拷贝至data文件夹内。将build.sh文件和build_ros.sh中的make -j改为make。

2022-12-31 08:00:01 1185

原创 亚像素级精确度的角点

有时我们需要最大精度的角点检测。OpenCV为我们提供了函cv2.cornerSubPix(), 它可以提供亚像素级别的角点检测。下面是一个例子。首先我们要找到 Harris 角点,然后将角点的重心传给这个函数进行修正。Harris 角点用红色像素标出,绿色像素是修正后的像素。在使用这个函数是我们要定义一个迭代停止条件。当迭代次数达到或者精度条件满足后迭代就会停止。我们同样需要定义进行角点搜索的邻域大小。 image:8位单通道图像 labels:输出标签 s

2022-12-05 21:33:18 1961 1

原创 新章节开始

从2021年10月开始看slam十四讲,一年多过去了,断断续续的看,也看了好几个视频教程,自己查了一些关于相机模型的文章,项目中试着应用了一点。整体感觉,从开始的迷茫不知所云,到后来逐渐明白其中的原理。因为没有一个实践的机会,也走了很多弯路吧。 还好,经过一段学习、遗忘、迷茫,经过实践的摸索,大致理出了思路。接下来的一段时间内,开始发布slam相关的文章,当然这些文章有一部分已经在云笔记里躺了一段时间再进行修改得来,有一部分是较新的理解,躺一段时间再发布是希望确实理解清楚了再整理,在写的过程中

2022-12-05 21:16:36 437

原创 小目标检测文章阅读

无人机上目标检测的特点:1、图像特点 在多数情况下,无人机的拍摄视野很大,包含丰富的视觉内容,虽然它提供了更全面的场景信息。缺点: 1)但是待检测的目标对象通常在图像中占比较小,且没有足够的检测细节; 2)目标的外观和结构质量都很差,容易与噪声混淆(大视场、小目标引起); 学术论文,主要内容为遥感图像飞机检测。 难点:由于遥感图像的成像时段以及环境条件不一,可见光遥感平台的分辨率、相机F数、飞行高度、视角等参量各有不同,待检测的飞机目标型

2022-12-05 21:02:23 1757

原创 CUDA驱动版本不满足CUDA运行版本查找

可能原因:每一个pytorch版本都有对应的cuda版本,可能是在安装pytorch的时候,选择的pytorch版本所对应的版本cuda版本与本机所安装的cuda版本不相符。比对前后两个cuda版本是否一致,如果不一致,就需要卸载并安装与本机cuda版本相同的pytorch(当然应该也可以改本机的cuda版本,只不过相对比较麻烦),选择合适版本版本,右键复制链接地址,替换上面的pytorch-version-link,执行命令就行。PS:时间太久已经找不到原文链接了,若有侵权请联系删除。

2022-11-30 21:38:28 1129

test_set.zip

k-means测试点集数据。

2021-07-06

TownCentreXVID.zip

目标跟踪视频:TownCentreXVID.avi及标记文件TownCentre-groundtruth.top。现有的链接失效了,上传一份。

2020-09-24

wps_fonts.zip

ubuntu下wps缺少字体。解决ubuntu下安装wps包后,文档可以用,但ppt打开提示缺少字体后自动退出。

2020-07-09

detectron2 cuda编译源文件适合windows系统

detectron2 cuda编译源文件,适合windows系统。新版的更新后被作者改坏了,在windows上无法完成编译,导致不能运行。

2020-06-22

win7主题文件资源文件及UniversalThemePatcher工具.zip

win7系统的原始主题文件dll,包括themeservice.dll、themeservice.mui、themeui.dll、themeui.mui、uxtheme.dll、uxtheme.mui文件。UniversalThemePatcher工具下载好,方便使用。

2020-05-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除