自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(307)
  • 资源 (4)
  • 收藏
  • 关注

原创 Qt Designer的父子部件样式表设置学习

在Qt Designer中新建图像界面,放置两个QWidget,命名为widget_1和widget_2;单独改变了widget_2,但是隶属于widget_2的pushButton_1和pushButton_2并没有改变。需要注意的是,采用这种办法,如果被改变的小部件还有它的子部件,子部件并不跟随被改变的小部件的改变而改变。这里,将隶属于widget_1的类型为QPushButton的所有部件全部定义了新的显示特性。这个样式表的含义为:widget_1中,所有的QWidget都按照指定的样式表显示。

2024-07-27 00:13:29 1383

原创 使用OpenCV与PySide(PyQt)的视觉检测小项目练习

OpenCV与PyQt(或PySide)的联合使用,各取所长

2024-07-07 22:43:09 1254 4

原创 opencv的模板匹配(Template Matching)学习笔记

BRIEF 的缺陷是像素对随机选取,旋转后相对位置变化;ORB 则预先生成一组 “固定的像素对模板”,并根据特征点的主方向 θ,将所有像素对围绕特征点旋转 θ 角,得到 “旋转后的像素对”。(优化:ORB 通过统计学习筛选出 128 对 “相关性低、区分度高” 的像素对,最终生成 128 位二进制描述子,平衡匹配精度与速度)。

2025-11-24 16:05:10 496

原创 YOLO v11的学习记录(七) 阶段小结

这份配置是YOLOv8s 分割模型的标准训练配置,核心逻辑是:使用预训练权重迁移学习,10 轮训练,批次 4,输入尺寸 640,启用混合精度和常用数据增强,训练过程中验证并保存最优模型。可根据实际需求调整(如增大batch、增加epochs、开启等),重点关注data(数据集配置)、epochs(轮数)、batch(批次)、device(设备)这几个关键参数。

2025-11-21 20:50:32 751

原创 YOLO v11的学习记录(六) 把标注好的大图切割成小图

有一个工程,从相机获取到训练图的尺寸是4096*3072像素,图上有很多密集的小目标,用anylabeling进行标注后,送进YOLO训练时出了问题,由于电脑显存不大,如果用原图尺寸训练,即使很小的batch_size,也会显存溢出,如果用YOLO默认的imgsz=640,则由于缩小倍数过大,小目标被过度压缩,造成学习效果不佳。解决问题的办法是将大图裁切成小图(640*640)后再训练,下面的脚本实现了这个目的,并且在裁切图片的同时将已经标注好的数据随图片裁切。

2025-11-19 23:02:13 337

原创 YOLO v11的学习记录(五) 使用自定义数据从头训练一个实例分割的模型

AnyLabeling导出coco格式还有个问题,就是图片比较多,分多次标注和导出时,它的分类标签的顺序可能是不固定的,某一个分类,比如“长颈鹿”,第一次导出时在annotations.json中的序号可能是2,下一次可能就是3,这就给后面的训练带来了隐患,有可能使模型认错种类。上一篇,使用AnyLabeling对图片进行了标注,当标注完成后,在图片所在的文件夹内会生成与每个图片同名的json文件,当再次使用AnyLabeling导入图片文件夹时,json文件会一同被导入,方便再次编辑和导出。

2025-11-15 18:45:11 1036

原创 使matplot显示支持中文和负号

去掉#号将其修改为font.family: SimHei。Ubuntu系统可能没有雅黑字体,使用。中文和负号都显示不出来。

2025-11-15 18:37:03 205

原创 ​使用AnyLabeling标注图片

是一款开源、跨平台(Windows/macOS/Linux)的智能图像标注工具,支持目标检测、实例分割、关键点标注等多种任务,并集成了等 AI 模型,可实现半自动/全自动标注,极大提升效率。

2025-11-13 11:34:39 396

原创 DEIMv2部署和训练笔记

按照要求,创建目录并将前面步骤训练集的100张图片复制到E:\DEIM-main/dataset/images/train/,验证集的100张图片复制到E:\DEIM-main/dataset/images/val/。Windows系统下,直接安装requirements.txt,会安装一个CPU版的pytorch,无法使用GPU。所以需要把requirements.txt中的pytorch和torvision去掉,手动安装这两个(CUDA版的),然后再自动安装requirements.txt中的其余包。

2025-11-09 14:00:57 1392 3

原创 pdf转图片:pdf2image

或者,安装pdf panthom,用pdf panthom的虚拟打印机在adobe acrobat pro中将文件打印为图片格式的pdf文件,绕开字体问题。页面下载zip文件并解压,然后在系统的path增加路径:C:\poppler-25.07.0\Library\bin(根据自己的解压位置更改)。下载缺失的两种字体并安装即可。转换后明显字体失真。

2025-09-24 22:00:56 440 1

原创 CnOCR训练特殊字体(三)如何使用训练的结果

我没有深入研究官方文档,只是摸索了一个简便的基本应用方法。

2025-09-20 17:12:57 265

原创 CnOCR训练特殊字体(二)训练

两种训练方式,命令行和代码方式。

2025-09-19 16:04:45 358

原创 CnOCR训练特殊字体(一)安装配置和准备文件

要做一个喷码字符的OCR项目,试了几个OCR库,对稀疏点阵喷码字体的识别率都不高,所以决定用CnOCR来训练自己使用的模型。Ubuntu系统。

2025-09-18 21:57:45 1013

原创 tsv文件简介

在很多 OCR(光学字符识别)项目中,.tsv文件是标准的训练数据标注文件,主要用于存储 “图像路径 - 对应文本标签” 的映射关系,同时可能包含图像尺寸、文本长度等辅助信息,方便模型读取训练数据并建立 “视觉特征→文本内容” 的映射。其核心作用是解决 OCR 训练中 “数据(图像)” 与 “标签(文本)” 的关联问题,兼容大多数深度学习框架(如 PyTorch、TensorFlow)的数据加载逻辑。:若框架要求无表头(如部分自定义数据加载器),可删除第一行表头,但需确保字段顺序固定且与代码读取逻辑一致。

2025-09-12 16:22:38 978

原创 CnSTD+CnOCR的联合使用

复杂背景的OCR,使用CnSTD定位图像中的文本区域,然后CnOCR对每一个区域内的文字进行识别。

2025-08-28 21:49:40 371 3

原创 STM32CubeIDE新建项目过程记录备忘(九) A/D转换并用串口定时上报

本项目,是将一个模拟量A/D转换后用USART输出,用开发板上的芯片转换成RS232电平后定时上传给上位机。同时对最近的学习做一个总结,归纳记录一下从模板项目建立新项目的方法,以及底层代码应用代码分离的框架的建立。复制粘贴新项目更改.ioc文件名称设置GPIO管脚和外设功能设置时钟设置生成成对的.h和.c文件以及生成hex文件设置中断设置调试配置生成代码设置完成后就进入软件编程阶段。新建xxx_app.h和xxx_app.c文件xxx_app.h内声明功能的初始化函数原型和功能函数原型。

2025-08-06 22:35:39 798

原创 STM32CubeIDE新建项目过程记录备忘(八)使用通用定时器中断生成PWM波形

名词解释:PWM本例是一个PWM输出demo。

2025-08-05 17:18:24 430

原创 STM32CubeIDE新建项目过程记录备忘(七)通用定时器中断

基本定时器:只有计数,简单应用。通用定时器:能PWM,能编码,没死区。高级定时器:可用于电机驱动,带刹车,带死区。

2025-08-05 11:52:05 858

原创 STM32CubeIDE新建项目过程记录备忘(六)USART接收不定长数据

上一篇,实验了中断方式的USART接收,其过程是接收缓冲区接收到的的数据长度达到设定字节后调用回调函数进行处理,并开启下一次接收。在实际的工程中很多通信数据的帧长度并不确定,本篇就是要解决这个问题。

2025-08-04 11:42:12 1005

原创 STM32CubeIDE新建项目过程记录备忘(五)中断方式的USART串口通信

在STM32CubeIDE新建项目过程记录备忘(一) 创建一个基础的模板-优快云博客里面,我已经将PA9和PA10配置为USART1的TX和RX,并完成了串口参数的设置。

2025-08-02 10:37:49 1195

原创 STM32CubeIDE新建项目过程记录备忘(四)EXTI外部中断

使用外部中断的方式检测按钮。

2025-08-01 12:05:04 938 1

原创 STM32CubeIDE新建项目过程记录备忘(三)GPIO的输入检测

GPIO的输入检测。我的板子,PC13接了一个按钮,在按钮两端有消抖电容,用以消除机械触点的抖动。PC13接有落地电阻R11,用途是降低输入阻抗,减少干扰。

2025-07-31 10:29:01 173

原创 STM32CubeIDE新建项目过程记录备忘(二) GPIO输出demo:LED闪烁

利用前面创建好的基础模板项目文件,创建第一个应用项目,单片机的hello world:LED闪烁。

2025-07-30 22:53:00 522

原创 STM32CubeIDE新建项目过程记录备忘(一) 创建一个基础的模板

• Data Direction:选择 “Transmit and Receive”(收发模式)。复制粘贴这个cfg文件,并重命名为dap.cfg(可自定义名字,是英文的即可)• Over Sampling:选择 “8” 或 “16”(过采样率)。无报错,并且控制台出现以下内容,就成功下载:(不要理会它的字体红颜色)选择固件版本,如果已有下载好的固件,要选择与已有固件相同的版本。• Mode:选择 “Asynchronous”(异步模式)。• Word Length:设置数据位,通常为 8 bits。

2025-07-29 17:36:32 664

原创 通信名词解释:I2C、USART、SPI、RS232、RS485、CAN、TCP/IP、SOCKET、modbus等

协议 / 接口传输方式速率距离典型应用场景I2C串行同步(2 线)低速(≤3.4Mbps)短(板内)芯片间通信SPI串行同步(4 线)高速(≤50Mbps)短(板内)高速外设通信USART串行异步 / 同步中速(≤2Mbps)中(数米)设备间串口通信RS232单端串行低速(≤115200bps)短(≤15 米)传统设备通信RS485差分串行中速(≤10Mbps)长(≤1200 米)工业分布式网络CAN差分串行中高速(≤1Mbps)

2025-07-27 21:37:38 1443

原创 STM32基础知识学习笔记:ICODE、DCODE、DMA等常见名词的解释

STM32 的 DMA 控制器通常包含多个独立通道(如 STM32F1 系列有 DMA1 的 7 个通道和 DMA2 的 5 个通道),每个通道可对应不同的外设请求(如 ADC、SPI、UART、TIM 等),支持同时处理多个外设的数据传输。总之,APB 是 STM32 中负责低速外设连接的 “辅助通道”,与 AHB 总线分工协作,既保证了系统核心的高性能,又兼顾了外设的低成本和低功耗需求,是嵌入式微控制器总线架构的重要组成部分。在 STM32 中,Flash 不仅存储程序指令,还存储常量数据。

2025-07-25 15:45:15 1158

原创 C 语言的指针复习笔记

指针是 C 语言的灵魂,其核心是 "通过地址间接操作内存"。指针的声明与初始化(指向有效内存);解引用()和取地址()的操作;指针与数组、函数的结合使用;动态内存分配中指针的管理;规避野指针、内存泄漏等常见错误。

2025-07-21 20:51:58 665

原创 pyautogui库的一些鼠标操作

pyautogui是一个跨平台的自动化库,提供了很多方便的功能,包括获取鼠标位置和对鼠标进行一些操作。

2025-07-07 23:20:50 583

原创 优象光流模块,基于python的数据读取demo

优象光流模块,型号UP-FLOW-LC-302-3C,准备将其应用于设备的运行速度测量,物美价廉。与官方的给定略有出入,不过主要字节的顺序是对的。

2025-07-04 22:20:21 254

原创 二维标记系统ArUco

ArUco是计算机视觉中广泛使用的二维 fiducial 标记系统,专为高精度定位和姿态估计设计。ArUco 是 OpenCV 库中的一个模块,基于 ARTag 开发。

2025-06-26 17:14:17 702

原创 海康威视工业相机,获取图像的两种方法:MV_CC_GetImageBuffer与MV_CC_RegisterImageCallBackEx 的区别

在海康威视的 Python SDK 里,和这两个函数都是用于获取图像数据的。主动获取图像:通过调用该函数,应用程序直接从 SDK 的内部缓冲区中获取图像数据。1. 调用MV_CC_StartGrabbing() 启动图像采集。2. 在应用层循环调用MV_CC_GetImageBuffer() ,取图的线程阻塞等待相机返回图像数据,如果有设置超时,超时后返回无图像ret并启动下一个调用循环。3. 处理完图像数据后,调用MV_CC_FreeImageBuffer()释放缓冲区。

2025-06-24 22:47:29 1174

原创 海康威视GidE工业相机的Bayer格式图像数据处理

接上篇。

2025-06-23 12:03:23 806

原创 海康威视GigE工业相机的python调用demo

默认路径安装完成后,在路径C:\Program Files (x86)\MVS\Development\Samples\Python\BasicDemo下的BasicDemo.py中,海康威视官方提供了基本的调用方法,本文也是基于这个修改的。BasicDemo.py提供了通过枚举选择相机的方法,在官方的另一个DEMO:ConnectSpecCamera.py中提供了另一种不通过枚举,直接访问特定IP相机的方法,也可以参考。另外,如果每台相机都定义了唯一的用户定义名,也可以通过用户定义名来区分相机。

2025-06-17 22:36:45 1616 5

原创 python的海象运算符 :=

海象运算符(Walrus Operator)是 Python 3.8 版本引入的一个新特性,其符号为:=。海象运算符”这个名字源于其外观,:=这一符号组合看起来和海象的眼睛与长牙有几分相似。它的主要作用是在表达式内部进行赋值操作,这样可以减少代码的重复,使代码更加简洁和高效。

2025-03-28 23:07:01 426

原创 pyside6的QGraphicsView体系,当鼠标位于不同的物体,显示不同的右键菜单

【代码】pyside6的QGraphicsView体系,当鼠标位于不同的物体,显示不同的右键菜单。

2025-03-24 22:42:50 481

原创 PySide(PyQt),QGraphicsView 类的橡皮筋选择框的 rubberBandChanged 信号与拖动模式QGraphicsView.DragMode

当用户开始拖动鼠标创建橡皮筋选择框、拖动过程中橡皮筋选择框的大小和位置发生变化,或者释放鼠标结束橡皮筋选择框的创建时,从运行结果看得出,当松开鼠标时,发送了一个全0信号,用以复位矩形区域,可以将其作为选择结束的标志,来进行下一步的操作。信号在橡皮筋选择框的状态发生变化时被发射。橡皮筋选择框是用户通过鼠标拖动在视图中创建的一个矩形框,常用于选择。函数用于设定视图的拖动模式,此模式决定了用户在视图里进行鼠标拖动操作时的行为表现。在 PySide6 中,在 PySide6 里,,这个参数定义了不同的拖动模式。

2025-03-21 22:49:03 458

原创 python的MRO学习笔记

在Python中,MRO(Method Resolution Order)即方法解析顺序,它定义了在多重继承的情况下,Python 解释器查找方法和属性的顺序。

2025-03-21 09:23:48 554

原创 用于AI-CV项目标注的文本项模型

功能:文本图形项,使用了QGraphicsObject的。重新定义了右键菜单。

2025-03-18 23:15:59 299

原创 用于AI-CV项目标注的星标模型

功能:生成星标图形项,并在目标点上将底图颜色反色显示,当定位和拖动后输出底图在标记点的像素值。输入和输出使用信号槽机制。

2025-03-17 18:07:27 806

原创 PySide(PyQt),QGraphicsItem的坐标映射转换函数

类提供了多个映射函数,用于在不同坐标系(例如:项目坐标系、父坐标系和场景坐标系)之间转换坐标和矩形。这些函数非常有用,尤其是在处理复杂的图形场景和需要精确位置信息的情况下。这些函数对于处理和转换不同图形元素之间的相对位置和尺寸非常有用。通过使用这些函数,你可以确保所有项目在同一个参考框架下正确渲染和计算,这对于构建复杂界面或进行精细化的图形操作非常重要。在PySide6中,

2025-03-17 12:04:14 493

pyside6自定义部件库和软件框架进度记录v2

pyside6自定义部件库和软件框架进度记录v2

2024-04-16

pyside6自定义部件库和软件框架进度记录v1

pyside6自定义部件库和软件框架进度记录v1

2024-04-11

pyqt5的组合式部件制作(四)的资源

pyqt5的组合式部件制作(四)的资源

2023-11-22

pyqt5的组合式部件制作(四)资源

pyqt5的组合式部件制作(四)资源

2023-11-22

pyqt5的组合式部件制作(二)

pyqt5的组合式部件制作(二)

2023-11-08

pyqt5的组合式部件制作(一)阶段资源

pyqt5的组合式部件制作(一)阶段资源

2023-11-07

我用PYQT5做的第一个实用的上位机项目(五)

我用PYQT5做的第一个实用的上位机项目(五)

2023-10-09

我用PYQT5做的第一个实用的上位机项目(四)配套资源

我用PYQT5做的第一个实用的上位机项目(四)配套资源

2023-10-04

我用PYQT5做的第一个实用的上位机项目(三)

我用PYQT5做的第一个实用的上位机项目(三)的资源文件

2023-10-03

我用PYQT5做的第一个实用的上位机项目(二)资源

我用PYQT5做的第一个实用的上位机项目(二)资源

2023-09-28

使用PYQT5简单制作动态仪表盘

使用PYQT5简单制作动态仪表盘

2023-09-17

PYQT制作动态时钟,使用了直接读取和旋转图片的方法

PYQT制作动态时钟,使用了直接读取和旋转图片的方法

2023-09-15

用Qlabel制作的自定义带图片的按钮

用Qlabel制作的自定义带图片的按钮

2023-08-22

博途利用MOVE-BLK-VARIANT实现混合数据类型的块移动

MOVE_BLK_VARIANT范例

2023-06-26

python与PLC通信的数据转换

python与PLC通信的数据转换

2023-06-23

数组的创建以及将二维数组转换成为一个连续的一维数组

数组的创建,选择和不选择输入连接的区别。以及将二维数组的两个维连接起来转换成为一个连续的一维数组

2023-04-17

LABVIEW调用C++的dll

编译好的深度学习dll,用labview调用

2023-04-17

西门子STL中文编程手册

西门子PLC的STL中文编程手册,带目录

2023-03-27

试试用pyqt做一个上位机软件,但愿不会烂尾(八)的资源

两个功能简单的测试页面,先不考虑界面的美化,以实现简单功能为目标。美学和人体工程学的最后再说。

2023-03-20

试试用pyqt做一个上位机软件,但愿不会烂尾(七)配套资源

pyqt的进度条显示只能接受整数输入,不能直接显示小数,采用了折中的办法,重新定义了进度条的text()函数。然后将输入的整数除以10的倍数,传递到text()函数中进行显示,比如说想显示一小数就除以10。顺便搞了几种常用的颜色方案,封装入库,以备调用。

2023-03-17

试试用pyqt做一个上位机软件,阶段5的源码

试试用pyqt做一个上位机软件,阶段5的源码

2023-03-11

试试用pyqt做一个上位机软件,但愿不会烂尾(四)的资源

试试用pyqt做一个上位机软件,但愿不会烂尾(四)的资源

2023-03-08

自制PYQT5指示灯资源

自己使用的指示灯资源,用的时候按住CTRL直接拖到新窗口即可

2023-03-08

试试用pyqt做一个上位机软件,但愿不会烂尾(二)资源

试试用pyqt做一个上位机软件,但愿不会烂尾(二)资源

2023-03-08

配套的资源文件,记录一下过程

学习简单SCADA用到的资源

2023-03-08

labview检测并显示移动物体的练习,有参考别人

abview检测并显示移动物体,并算出最大的物体移动速度

2022-07-31

用labview检测移动物体的练习程序

用IMAQ Absolute Difference将连续采集的图像相邻帧的像素差显示出来,可用于运动目标检测

2022-07-30

CnOCR训练特殊字体

CnOCR训练特殊字体

2025-09-21

一个基本的pyside6项目模板demo

一个基本的pyside6项目模板demo

2025-02-23

基于深度学习的视觉检测小项目(十七) 用户管理后台的编程

用户管理阶段的资源

2025-02-03

基于深度学习的视觉检测小项目(十一) 动态样式表的实践

基于深度学习的视觉检测小项目(十一) 动态样式表的实践

2025-01-12

pytorch基础知识和函数的学习:卷积的基本理解

pytorch基础知识和函数的学习:卷积的基本理解

2024-08-25

pytorh基础知识和函数的学习:图像文件的Tensor

pytorh基础知识和函数的学习:图像文件的Tensor

2024-08-24

Qt Designer,仿作一个ui界面的练习(四):编写代码文章的资源

Qt Designer,仿作一个ui界面的练习(四):编写代码文章的资源

2024-07-30

PySide(PyQt)使用QPropertyAnimation制作动态界面

PySide(PyQt)使用QPropertyAnimation制作动态界面

2024-07-25

PySide(PyQt),自定义图标按钮的资源

PySide(PyQt),自定义图标按钮的资源

2024-07-23

Pyside使用Qt Designer和uic工具的基本框架的demo

Pyside使用Qt Designer和uic工具的基本框架的demo

2024-07-17

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

2024-06-20

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

2024-06-19

pyside6自定义部件库和软件框架进度记录

pyside6自定义部件库和软件框架进度记录的资源

2024-04-16

空空如也

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

TA关注的人

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