- 博客(498)
- 资源 (5)
- 收藏
- 关注
原创 Qt 路径处理
工作目录是指当前目录,运行目录是指exe所在路径。所以将1.txt放到对应命令行执行得目录就行,当然这肯定不是最终得解决办法,最终得解决办法就是使用“QCoreApplication::applicationDirPath()”,即为exe所在得目录。
2023-10-30 20:44:07
143
原创 ubunt18.04 使用SimpleScreenRecorder进行屏幕录像
2、Ubuntu(Linux)使用SimpleScreenRecorder录屏。录制OpenGl应用程序不需要额外下载解码器;显示录制文件大小,心里有底。随用随录,操作任性;1、Ubuntu下三个实用的录屏软件。
2023-08-28 21:43:12
242
原创 qt创建临时文件
QTemporaryFile * createNativeFile(QFile & file) :// 创建本地临时文件,如果文件不是本地文件,使用QDir::tempPath()创建一个QTemporaryFile,将文件的内容复制给它。这是一个重要的技术,避免了存储在临时文件的应用程序数据损坏。注意:为了验证效果,我们使用了setAutoRemove(false),如果使用完需要删除临时文件,可以开启自动删除模:setAutoRemove(true),也可以手动删除:tmpFile.remove()。
2023-08-27 22:04:29
521
原创 qt检查文件夹是否有写权限
在判断一个目标路径是否可写时,QFileInfo的isWritable()并不好用,一般我们会基于QFile尝试在目标路径新建一个临时文件,通过判断文件是否创建成功间接判断目标路径是否可写。继续排查,官方文档描述:a)如果未启用 NTFS 权限检查,Windows 上的结果将仅反映文件是否标记为只读。如果自己实现这个逻辑,需要做文件打开,关闭,删除等一系列的处理,可以借助QTemproryFile类实现同样的目的。b)在 NTFS 文件系统上,出于性能原因,所有权和权限检查默认是禁用的。
2023-08-27 22:00:43
1074
原创 c++获取硬盘or分区序列号
此信息以特定分区类型(如 ext4、xfs)的格式存储,并在重新格式化时发生变化。在使用 Windows 时,可以使用命令获取硬盘分区的(或多或少唯一的)序列号。Linux 有类似的东西吗?获得硬件设备的唯一编码,并且可以通过编程方式检索?
2023-06-19 21:01:39
870
1
原创 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
511
原创 红外相机工作原理
通过场景中被监控对象自身发射的红外光进行成像,其基于目标与背景或目标各部分之间的温差或热辐射差,生成热像图来发现目标,在此基础上还能将热像图转换成视频图像,产品被称为红外热成像摄像机。自然界中,一切物体都会辐射红外线,因此利用探测器测定目标本身和背景之间的红外线差,可以得到不同的红外图像,称为热图像。红外热成像仪采用红外热成像技术,探测目标物体的红外辐射,并通过光电转换、信号处理等手段,将目标物体的温度分布图像转换成视频图像的设备,我们称为红外热成像仪。,红外线(或称热辐射)是自然界中存在最为广泛的辐射。
2023-05-11 21:52:13
1544
原创 cmakelist.txt 编译并引用动态库
使用 CMakeLists.txt 设置工程以 debug 形式编译。2)动态库类 libHelloSLAM.cpp。1)动态库类 libHelloSLAM.h。
2023-04-24 22:19:40
368
原创 小样本学习
给定两张图片 a 和 b,如果两张图片越相似,则 sim (a, b) 的值越大。在小样本学习问题中,Support Set中每一类往往只有少数几个样本,单单依靠这些样本,不可能训练出一个深度神经网络,甚至无法采用迁移学习中的Pretraining+Fine Tuning方法。将Query图片和Support Set中所有图片全部转化为特征向量,然后依次计算Query图片对应的特征向量和Support Set中各图片对应特征向量之间的距离,返回Support Set中距离最小的图片类别作为预测结果。
2023-02-24 21:14:56
2913
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
3067
原创 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
3442
1
原创 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
3264
原创 基于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
2549
原创 windows 查询并关闭被占用的端口
查询占用此端口的程序pid,此例中最后一项12596即为程序的PID。2、查找被占用的端口,例如8886。1、以管理员权限运行cmd。
2023-01-29 22:35:29
984
原创 python 异步操作async和await
asyncio是"多任务合作"模式(cooperative multitasking),允许异步任务交出执行权给其他任务,等到其他任务完成,再收回执行权继续往下执行。协程(Co-routine),也可称为微线程,或非抢占式的多任务子例程,一种用户态的上下文切换技术(通过一个线程实现代码块间的相互切换执行)。我们从asyncio模块中直接获取一个EventLoop的引用,然后把需要执行的协程扔到EventLoop中执行,就实现了异步IO。携程对象:执行携程函数 函数名(),得到的就是携程对象。
2023-01-29 22:33:23
9546
1
原创 python websockets实现server和client的通信
第二层 while 的作用是保证 ws 连接一直处于接收状态(长连接),当 ws 被服务端关闭时,会抛出 ConnectionClosed ,一般我们会收到 1000 正常关闭码和 1006 服务端内部错误异常关闭码两种,在上文的代码中,我们收到异常 1006 关闭码时,就 break 退出 while 循环,从而自动关闭 ws 连接上下文,进行一次新的 ws 上下文连接。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。
2023-01-29 22:26:24
2897
原创 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
847
原创 亚像素级精确度的角点
有时我们需要最大精度的角点检测。OpenCV为我们提供了函cv2.cornerSubPix(), 它可以提供亚像素级别的角点检测。下面是一个例子。首先我们要找到 Harris 角点,然后将角点的重心传给这个函数进行修正。Harris 角点用红色像素标出,绿色像素是修正后的像素。在使用这个函数是我们要定义一个迭代停止条件。当迭代次数达到或者精度条件满足后迭代就会停止。我们同样需要定义进行角点搜索的邻域大小。 image:8位单通道图像 labels:输出标签 s
2022-12-05 21:33:18
1802
1
原创 新章节开始
从2021年10月开始看slam十四讲,一年多过去了,断断续续的看,也看了好几个视频教程,自己查了一些关于相机模型的文章,项目中试着应用了一点。整体感觉,从开始的迷茫不知所云,到后来逐渐明白其中的原理。因为没有一个实践的机会,也走了很多弯路吧。 还好,经过一段学习、遗忘、迷茫,经过实践的摸索,大致理出了思路。接下来的一段时间内,开始发布slam相关的文章,当然这些文章有一部分已经在云笔记里躺了一段时间再进行修改得来,有一部分是较新的理解,躺一段时间再发布是希望确实理解清楚了再整理,在写的过程中
2022-12-05 21:16:36
366
原创 小目标检测文章阅读
无人机上目标检测的特点:1、图像特点 在多数情况下,无人机的拍摄视野很大,包含丰富的视觉内容,虽然它提供了更全面的场景信息。缺点: 1)但是待检测的目标对象通常在图像中占比较小,且没有足够的检测细节; 2)目标的外观和结构质量都很差,容易与噪声混淆(大视场、小目标引起); 学术论文,主要内容为遥感图像飞机检测。 难点:由于遥感图像的成像时段以及环境条件不一,可见光遥感平台的分辨率、相机F数、飞行高度、视角等参量各有不同,待检测的飞机目标型
2022-12-05 21:02:23
1131
原创 CUDA驱动版本不满足CUDA运行版本查找
可能原因:每一个pytorch版本都有对应的cuda版本,可能是在安装pytorch的时候,选择的pytorch版本所对应的版本cuda版本与本机所安装的cuda版本不相符。比对前后两个cuda版本是否一致,如果不一致,就需要卸载并安装与本机cuda版本相同的pytorch(当然应该也可以改本机的cuda版本,只不过相对比较麻烦),选择合适版本版本,右键复制链接地址,替换上面的pytorch-version-link,执行命令就行。PS:时间太久已经找不到原文链接了,若有侵权请联系删除。
2022-11-30 21:38:28
766
翻译 如何写出一份完整的发明专利
名称+领域+方案+效果,结尾一个句号,300字以内。(方案效果可以不用太详细)方法:本发明提供一种卷积神经网络方法,领域:属于卷积神经网络领域。
2022-11-27 21:01:14
1881
原创 ransac直线段拟合
也就是一开始设定一个无穷大的迭代次数,然后每次更新模型参数估计的时候,用当前的“内点”比值当成 来估算出迭代次数。“内点”就是组成模型参数的数据,“外点”就是不适合模型的数据。同时RANSAC假设:在给定一组含有少部分“内点”的数据,存在一个程序可以估计出符合“内点”的模型。也就是说,在迭代 k 次的情况下, (1-tn)k就是 k 次迭代计算模型都至少采样到一个“外点”去计算模型的概率。4、比较当前模型和之前推出的最好的模型的“内点“的数量,记录最大“内点”数的模型参数和“内点”数;
2022-11-06 15:32:42
671
原创 cv2.approxPolyDP函数实现轮廓线的多边形逼近
实际项目需要拟合轮廓线,提取更贴合目标的四个点,于是找到了cv2.approxPolyDP函数。若为 true,该函数返回一个带符号的面积值,正负取决于轮廓的方向(顺时针还是逆时针)。closed:如果为true,则闭合近似曲线(其第一个和最后一个顶点为连接的);contour:输入的二维点集(轮廓顶点),可以是 vector 或 Mat 类型。curve:输入的二维点集(轮廓顶点),可以是 vector 或 Mat 类型。epsilon:指定近似精度的参数, 这是原始曲线和它的近似之间最大距离。
2022-11-01 22:18:41
5733
原创 coco目标检测排名
可以看到截止目前2022.11月,指标最高的为FD-SwinV2-F,ap为64.2。有同学整理了coco上排名靠前的检测算法,并做了摘要。
2022-10-29 18:31:18
2783
原创 错误处理:docker io.containerd.runtime.v2.task no such file or directory
报错:docker io.containerd.runtime.v2.task no such file or directory,显卡驱动升级后docker运行时不匹配错误。原因:驱动升级,驱动相关的nvidia-container-toolkit未升级。
2022-10-25 21:37:50
576
原创 pytorch 修改预训练模型
torchvision中提供了很多训练好的模型,这些模型是在1000类,224*224的imagenet中训练得到的,很多时候不适合我们自己的数据,可以根据需要进行修改。最后,构建一个对象,并加载resnet预训练的参数就可以了。
2022-10-22 16:00:13
1085
原创 ubuntu 安装 notepad++
Notepad++官方只有Win系统的版本,因此要在Linux系统中运行,还需要wine运行环境。也可以在命令行直接输入notepad-plus-plus来启动软件。然后,就可以享受Notepad++给你带来的一致体验了。如何在Ubuntu中通过。
2022-10-22 15:56:22
5391
转载 ubuntu安装SVN开机启动
查看当前启动level,会打印一个数字,把这个数字加到脚本 startsvn.sh 的 Default-Start 后面,然后从步骤 3再执行一遍试试。
2022-10-21 22:17:59
771
原创 Linux下apt-get命令详解(安装、卸载、更新、查询软件包)
apt-get 命令适用于 deb 包管理式的 Linux 操作系统(Debian、Ubuntu等),主要用于自动从互联网软件仓库中搜索、下载、安装、升级、卸载软件或操作系统。下面给大家简单分享一下:apt-get命令的用法,具体应该如何使用apt-get命令?
2022-10-19 21:30:02
7528
原创 ubuntu 16.04 SSH 无法远程登录问题
找到:PermitRootLogin prohibit-password禁用。解决ubuntu 16.04 SSH 无法远程登录问题。添加:PermitRootLogin yes。step1、安装 open ssh。step2、修改root密码。
2022-09-22 21:46:29
619
原创 win10 编译 Pangolin
Pangolin 库依赖 Glew 和 freeglut,所以在编译 Pangolin 之前,先编译 Glew 和 freeglut,这两个包编译后统一放在OpenGL文件夹。在 D:/env/OpenGL 文件夹下新建 bin、include、lib文件夹。
2022-09-22 21:41:24
1472
1
原创 win10 编译Eigen库
将环境设置为“Debug”和“×64”,然后在VS中打开属性管理器界面,右键“Debug|×64”,选择“添加新项目属性表”。最后,把“D:\env\Eigen3.4\share\eigen3\cmake”中的四个.cmake文件复制到“D:\env\Eigen3.4\include\eigen3”目录下。等待VS分析工程和文件完毕后,确保VS当前是“Release”和“×64”模式,在“解决方案资源管理器”中,右键“ALL_BUILD”,点击“生成”。点击“Configure”,设置环境。
2022-09-22 21:32:18
1452
1
TownCentreXVID.zip
2020-09-24
detectron2 cuda编译源文件适合windows系统
2020-06-22
win7主题文件资源文件及UniversalThemePatcher工具.zip
2020-05-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人