- 博客(88)
- 收藏
- 关注
原创 QT 学习:协同开发的程序如何汇总到主程序
3.或者更简单,在.ui中,找到占位的QWidget 控件,右键提升,写类名和头文件即可,后续调用就不需要代码了,只需要ui->widget占位的控件调用派生类的接口函数就行。1.我原来不考虑主程序代码量、不考虑代码美观,我都是直接写到主程序里面了,但是这样代码太多了,不方便管理,所以要剥离出来,单独封装。我有一个派生类,继承于QWidget,功能是用来绘制折线图的(直接QT例子粘贴的)或者有些好的类是自己封装后,可以无限复制使用,怎么挪到自己的主程序呢?以下举个小例子记录一下,我也备份一下。
2026-01-15 17:25:04
126
原创 QT + Socket 客户端/服务端 公网通讯
监听的时候,重点来了,正常来说,一个公网IP不可能只连一个电脑,如上图,除了公网IP外,还有一个主私网IP,这个IP也是局域网,所以监听的时候直接监听的IP是0.0.0.0,端口号指定,一旦有公网IP有用户连接,会直接转发给私网。,如果多个客户端在同一个wifi局域网中,实际上服务端响应的ip是同一个ip,只是端口号有区别,所以踢人的时候,需要指定对象的时候,一定是IP+端口号,或者给每个客户端指定一个别名。如下:办公室的wifi是局域网,也就是说入户的网线已经是被公网转发过的了,没有暴露公网ip。
2026-01-12 16:07:54
575
原创 基于Mingw64 tesseract 实现英文字符和数字识别
1.jpg库没有cmake.txt,没法直接用cmake编译,我们直接用libjpeg-turbo库,可以用。2.tesseract 版本没用特别高,我的mingw版本还没法完全适应C++17,编译不过去,所以降了版本。QT 的.pro文件,这个动态库填写有先后顺序,烦死了,试了好多次,按我这样往下顺,要不然几百个报错。综上,如果你的mingw版本和我一样(mingw730_64),可以直接用下面的版本,我试过了可以。3.leptonica 版本要升,我最开始用的版本比我下面的低,有些头文件没有。
2025-12-04 15:48:29
351
原创 QT for Android 安卓开发之调用Java程序
新建完之后,构建一下,就会在build下面出现一个AndroidManifest.xml文件,拷贝到代码目录,新建一个android文件夹,放到这个里面,然后在代码里面添加一下现有文件,加进来。按照package name新建多个文件夹,如下(必须一致,要不然报错),Java代码放到里面,(注意Java代码的文件名要和里面的类名要一致,否则报错)deepseek的例子贴一下(注意:第一行必须要写对,文件夹名/换成.)一直调不成,结果是个愚蠢的问题,备份记录一下。
2025-10-15 17:38:24
452
原创 深度学习Pytorch入门(2):手撕MNIST 手写数字分类
MNIST数据集是282810 十分类的数据集,训练集60000张,测试集10000张CNN卷积神经网络n1 n2 n3 我这边取10 20 50很简单,就是卷积+激活+池化#定义一个CNN模型,用于手写数字分类#开始定义网络#卷积1#激活1nn.ReLU(),#池化1# 卷积2# 激活2nn.ReLU(),# 池化2# 拉平# 线性全连接层1# 线性全连接层2。
2025-09-26 18:41:09
429
原创 深度学习Pytorch入门(1):手撕CIFAR 10影像分类
CIFAR 是32*32 10分类的数据集官网:https://www.cs.toronto.edu/~kriz/cifar.html实际不是从这里下的,直接在python里面下的,后面会说到0.新建模型.py新建一个网络实现的.py,可以管理网络,单独拿出来0.1 实现过程0.1.1 引入头0.1.2 定义网络定义自己的网络,需要新建一个继承于nn.Module的类,重写definit#继承父类写法#重写__init__# 重写前向#写一个测试的例子。
2025-09-26 12:11:31
1100
原创 2D模板匹配,记录下
最近有兴趣看看模板匹配,先从2D开始,结果就直接发现了一个,这个项目地址在github,直接带界面、支持跨平台、项目效果还不错的高star的项目,拿来试试是真不错,直接把2D模板匹配覆盖掉了1.MFC C++工程2.基于相关系数的匹配3.支持旋转匹配4.不支持缩放匹配,模板没有添加缩放相关的模板5.效率还可以,几十到几百ms6.对光照和亮度不敏感7.比我同期下的一堆模板匹配的代码都要好,值得推荐1.加载模板图像和原始图像2.全部建立金字塔。
2025-09-23 16:01:07
481
原创 线激光相机 眼在手上六轴机器人手眼标定 备忘记录
1.这个就是基础的方程,和我上面那个一样2.这个方程拆解出来如下:左侧T(BF)为机器人位姿的旋转矩阵,这个组合的时候需要看三轴的旋转顺序,如果是ABB这种是四元素表示的,需要对应变换到旋转矩阵XL 和 ZL 为线激光某个点的坐标,是在线激光平面,所以只有两维,Z表示深度,X表示线激光走向方向,Y方向默认0或者其他常数右侧xyz 为基座坐标系下标记点的坐标,可以直接用机器人末端指点获取3.机器人POS矩阵左乘逆矩阵,变换如下4.上面等号右侧为已知量,直接用XYZ代替。
2025-09-17 18:53:34
1654
原创 机器人工具标定-记录一下-待验证(没数据)
式为不相容方程组),没有逆矩阵,没法直接用,需要求A的广义逆矩阵,如下。1.前四个点,构建旋转矩阵的时候,需要看下机器人是哪种旋转模式,论文里是ZYX顺序,常见的是XYZ(勃朗特+新松等),需要注意一下。求广义逆矩阵,可以看公式,或者借助Eigen矩阵库,下面代码是粘贴的,没有经过验证,有数据的可以验证一下。:标定点尖端在基座坐标系下的位置是不变的,所以4个点可以列出三个等式方程,先求相对位置,再指定方向;2.前四个点计算尖端点的位置相对于法兰末端的相对坐标,即deltX deltY deltZ。
2025-09-17 11:34:09
642
原创 手眼标定之已知同名点对,求解转换RT,备份记录
机器人手眼标定,往往需要获取相机和机器人末端工具和相机坐标系的转换关系,此处只介绍一种眼在手外,3D相机的解算方法。
2025-09-11 16:06:41
521
原创 Pytorch Yolov11 OBB 旋转框检测+window部署+推理封装 留贴记录
真是见鬼了,在网上搜了好久,都没有个直接能粘贴的源码,都是onnx部署的,我好不容易调通了libtorch的yolo11检测,想换个obb就不知道咋弄了,我这个部署教程写细一点,应该是。4.非极大抑制,主要是看IOU,这里的IOU直接利用opencv自带的函数确定,交并比,小于nms阈值的保留下来,就是最终的预测结果。,这一章开一下YOLOV11 OBB旋转框检测相关的全流程,有些和上一章重复的地方我会简写,要两篇结合着看,好了,开始吧。就是模型加载,前向,最后得到的是1 * 8 * 8400的输出数据。
2025-09-05 11:50:13
1166
原创 Pytorch Yolov11目标检测+window部署+推理封装 留贴记录
GPU版本的代码实际跑起来,如果传入的影像连续,够多,识别效率还是挺稳定的,如果采集频率不够,尤其是拍照效率没那么高的情况,测试下来发现效率不稳定,有时候20ms有时候100-300ms,不稳定,需要在window设置一些参数,和代码没关系。实际上,我们的推理函数不仅要给VS的工程调用,还要给其他工程调用,我这边接触最多的是QT Mingw,我这边是已经实现了的,给大家提供一个解决思路即可。值得注意,模型预热函数,我理解的是,GPU前几张照片有点慢,我加载模型后,直接塞两张空图像,先跑一下,后面就正常了。
2025-09-02 16:06:23
1086
原创 YOLO v11 POSE 目标+关键点检测+window部署+推理封装 留贴记录
4.2 然后就开始标样本了,用labelimg标,本次测试出了目标检测外,还需要检测关键点,类似标成下面这种,我之前标过一次样本,我就直接用了,没有标注的截图。4.3 因为labelimg标注完是json格式,要转化为yolo格式,运行以下脚本。运行以下脚本,将数据集划分为训练集和测试集,比例是7:3,看自己需求。然后直接训练,先不看详细训练参数,先能跑起来。4.4 开始训练模型。
2025-08-29 18:47:20
564
2
原创 ABB机器人四元素处理
q=w+xi+yj+zk 中 w x y z 也对应有些文档里写的q0 q1 q2 q3。然后,选择几个需求实现一下,这基本上就把互转实现差不多了。在用到ABB机器人时,姿态使用的是四元素的方式,如下。和这个也一样,所以公式应该没啥问题,直接套就行了。
2025-08-06 16:26:35
611
原创 XYZUVW+偏移+转向量(以勃朗特为例)
1.已知需要发给机器人的位姿XYZUVW,需要沿着最后的姿态方向做XYZ偏移,实现方式。2.已知XYZUVW,如何在可视化窗口绘制坐标方向箭头。
2025-08-06 12:22:38
533
原创 TEASER-plusplu Windows Mingw编译
URL改为提前下载好的file:///home/usrer-id/下载/googletest-release-1.8.1.zip。连接2:https://github.com/MIT-SPARK/TEASER-plusplus/releases。链接:https://github.com/google/googletest/releases?链接1:https://github.com/MIT-SPARK/TEASER-plusplus。5.4 不编译测试文件,要不make 测试代码的时候总报错。
2025-05-29 18:08:16
438
原创 Tensorflow2.0+部署(tensorflow/serving)过程备忘记录Windows+Linux
1.先拿官方例子测试一下,先下载一下tensorflow/serving2.6.0,然后在该目录结构下,找到 saved_model_half_plus_two_gpu例子,整体拷贝到想要放置的位置。下面的绝对路径表示模型存放的实际路径,最后一个参数项需要指定运行的容器和版本,里面的其他参数照猫画虎吧,很好理解,具体参数项也比较复杂。直接右键运行,得到结果,表示该程序检测出了9个目标,概率值+标签+目标框像素位置如下,通过解析json,可以得到目标检测结果。yolo_eval_2表示标签值;
2024-03-05 17:45:26
2090
1
原创 Tensorflow-gpu搭建,转载备忘
(例如:https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe)(1)访问Anaconda官网(https://docs.conda.io/en/latest/miniconda.html),点击所需版本的下载链接。(1)打开cmd界面(win+r+cmd)→输入命令行:conda env list→显示miniconda安装位置,及所有配置环境(base)。查看本机的GPU版本,低于该版本的都可以安装。
2023-11-22 16:32:22
890
原创 QT打包圆心识别
最近在练习QT相关内容,找了个相关功能集成了下,主要是为了熟悉各个组件,功能主要是进行轮子中心点识别。链接:https://pan.baidu.com/s/1LSigz1X-0GtiHr__W9i0nw。可以控制处理的进度,可以暂停、继续、终止,支持单张影像处理,也支持传入文件夹批量处理。5.主线程边调用dll边刷界面;新建子线程调用dll,主线程刷界面。2.按钮及各类参数添加组件。3.水印添加及图片可视化。
2023-11-21 20:02:57
288
原创 2021-07-27
VS2013_WIN64_LIBLAS_编译记录libLAS 是一个用来读写三维激光雷达数据(LiDAR) 的 C++ 库。在学习、科研和研发中都会广泛运用。笔者在Win7 64位系统、CMake和VS2013编译libLAS库,在编译过程中走了一些弯路和遇到了不好问题,终于一一解决。现以博客的形式记录下来。供相关研究的同仁学习交流。OSGeo4W也可以编译,但是感觉出来的库太臃肿了编译前的准备:下载库编译libLAS库还须要Boost、GDAL、TIFF和GeoTIFF四个库的支持,所以在编译l
2021-07-27 16:13:26
321
原创 VMware Workstation 出现bug
虚拟机提示:VMware Workstation 无法连接到虚拟机。请确保您有权运行该程序、访问该程序使用的所有目录以及访问所有临时文件目录。未能将管道连接到虚拟机: 所有的管道范例都在使用中。解决方案:首先把WIN10的快速启动关闭(自行百度);然后重启电脑,打开任务管理器,发现vmvare-vmx.exe这个进程已经没有了,再打开虚拟机,进来了!...
2020-09-25 20:02:39
535
转载 矩阵和向量求导的公式
https://blog.csdn.net/lirika_777/article/details/79646453https://blog.csdn.net/daaikuaichuan/article/details/80620518?ops_request_misc=&request_id=&biz_id=102&utm_term=%E7%9F%A9%E9%98%B5%E5%81%8F%E5%AF%BC&utm_medium=distribute.pc_search_re
2020-05-21 18:47:02
320
转载 GDAL:DEM渲染和等高线生成
//DEMRenderingontours.h#include "gdal_priv.h"#include"gdalwarper.h"#include "ogr_spatialref.h"#include "ogrsf_frmts.h"#include "process.h"#include<iostream>using namespace std;/*** @bri...
2020-05-07 20:16:42
2608
原创 GDAL:影像RPC和GCP校正
李明录大哥的代码这几个代码:链接:https://pan.baidu.com/s/1kLZw5KGIpIi4DWLNl-vwxQ提取码:xj06//ImageCorrectionByRPCorGCP.h#include "gdal_priv.h"#include"gdalwarper.h"#include "gdal_alg_priv.h"#include "ogr_spatial...
2020-05-07 17:39:42
5903
1
原创 C++ :找到一个或多个多重定义的符号解决办法
原因解释:https://blog.csdn.net/xiamentingtao/article/details/54341287解决方法1:如果对应的函数较短可以在前面加inline,将其变为内联函数解决方法2:头文件中只进行函数的定义,函数的实现放在源文件中...
2020-05-07 13:19:10
3948
原创 GDAL库windows和Linux下编译
gdal下载地址:https://trac.osgeo.org/gdal/wiki/DownloadSourcewindows下编译:链接:https://blog.csdn.net/lyandgh/article/details/81079570linux下编译:GDAL可通过configure来实现一些自定义配置,可通过./configure –h命令来查看。–prefix=path表...
2020-05-06 12:19:55
787
原创 C++:static关键词的作用
1. 修饰函数(普通函数和类函数)的局部变量static修饰一个普通的局部变量时,关键词改变了这个变量的生命周期,这个变量的生命周期和程序的生命周期相同,直到程序结束才销毁。#include <stdio.h>void test(){ static int a=0;//a为局部变量 a++; printf("%d",a);}int main (){ int i=...
2020-04-18 13:36:14
240
原创 GDAL:利用Shape文件对遥感影像进行裁剪
支持单个或多个多边形要素的shp文件,对于没有仿射信息的影像裁剪不成功。直接上代码://ImageCut.h#include "gdal_priv.h"#include <iostream>#include "ogr_spatialref.h"#include "ogrsf_frmts.h"#include "gdalwarper.h"using namespace ...
2020-04-18 12:24:55
4909
10
原创 VS属性配置问题
1. 设置当前工程临时的系统环境变量右击项目属性–>调试–>环境PATH=C:\3rdparty\Opencv3.4.4\x64\vc15\bin;%PATH%这样工程就可以直接访问环境目录里的dll2. int main(int argc,char argv[])在控制台输入或程序中调试时*右击项目属性–>调试–>命令参数...
2020-04-17 11:23:58
322
转载 单像空间后方交会(包括Matrix.h模板类)
链接:https://blog.csdn.net/x_ying_/article/details/89514098?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158441689419726867863326%2522%252C%2522scm%2522%253A%252220140713.130056874…%2522%257D...
2020-03-17 12:48:52
605
原创 C++判断操作系统
#if defined(linux)// Linux系统#elif defined(_WIN32)// Windows系统#endif
2020-03-10 18:21:15
1772
原创 Linux下Clion编译Cmake备忘
cmake_minimum_required(VERSION 3.14)project(test1)//生成的可执行文件名称set(CMAKE_CXX_STANDARD 11)//C++版本set(INC_DIR ./include)//第三方库的头文件set(LINK_DIR ./lib)//第三方库的库文件,此时为.soinclude_directories(${INC_DIR}) ...
2020-02-15 23:59:05
562
转载 C++:判断文件是否存在、创建删除文件Windows和Linux
https://blog.csdn.net/u012005313/article/details/50688257/
2020-02-15 21:19:08
948
原创 GDAL:影像镶嵌
//main.cpp#include "../IndexCalculation/IndexCalculation/ImageMosaicing.h"#include <iostream>#include <vector>#include <algorithm>#include "gdal_priv.h"using namespace std;...
2020-01-17 18:25:20
2591
5
转载 GDAL:shp文件创建
创建一个只有点要素的shp文件#include "gdal_priv.h"#include "ogrsf_frmts.h"#include <iostream>using namespace std;int main(int argc, char* argv[]){ OGRRegisterAll(); const char *pszDriverName = "ESRI ...
2020-01-17 17:38:59
1279
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅