自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 ubuntu20.04安装opencv4.10

在你的 C++ 项目中,如果需要编译 OpenCV 程序,添加以下内容到。

2025-05-31 18:44:53 102

原创 Windows上用FFmpeg采集摄像头推流 → MediaMTX服务器转发流 → WSL2上拉流播放

设备名称可用查询,假设为这里推到MediaMTX默认监听的RTMP端口1935,路径,可根据MediaMTX配置调整。

2025-05-31 18:35:10 552

原创 Windows上用FFmpeg推流及拉流的流程概览

Windows上的摄像头,比如“Integrated Camera”。:FFmpeg通过dshow设备接口读取摄像头。:你可以选择推到 RTMP 或 RTSP 服务器。推RTMP流:bash复制编辑推RTSP流(前提服务器支持接收RTSP推流):bash复制编辑。

2025-05-31 18:28:07 500

原创 VcXsrv 下载与安装

可以勾选 “Save configuration”,保存为。“Windows 防火墙阻止了此应用的一些功能”点击绿色的 “Download” 按钮,下载。VcXsrv 通信(勾选私有和公有网络)安装完成后,点击 “Finish”防止 OpenGL 图形程序崩溃。(关闭访问控制,允许外部连接)安装完后,在开始菜单搜索。文件(方便下次双击启动)如果弹出窗口说明配置成功!全程默认即可,一路点击。启动 X Server。

2025-05-29 10:00:36 410

原创 镜像停止、删除、拉取、配置

定义变量: 停止并删除旧容器: 拉取新镜像: 启动新的容器,并绑定挂载路径 + 环境变量配置:

2025-04-21 15:20:26 198

原创 安装docker

然后注销或重启,让用户组生效。

2025-04-18 14:21:10 179

原创 Google C++ Style Guide

全大写 + 下划线分隔public:// 构造函数 / 析构函数Example();~Example();// 公有方法protected:// 受保护方法/变量private:// 私有方法/变量。

2025-04-17 16:38:59 445

原创 SLAM构图与定位

即,是机器人/设备在完成“我在哪”和“世界长什么样”两个任务的核心技术。

2025-04-17 13:48:11 385

原创 移动机器人的路径规划

📌 目的:在已知地图中,从起点到终点规划一条可行的最短/最优路径(通常不考虑动态障碍)

2025-04-17 13:42:59 283

原创 B样条曲线对指定点进行曲线拟合

【代码】B样条曲线对指定点进行曲线拟合。

2025-03-12 11:16:24 362

原创 python解析xls文件

在 Python 中,解析.xls文件通常使用xlrd库。xlrd是一个强大的库,可以读Excel 文件(.xls格式)的内容。

2025-01-10 08:55:45 234

原创 python线程与C++线程之间的区别

Python 线程适合 I/O 密集型任务,使用简单,但受到 GIL 的限制,性能在 CPU 密集型任务中较差。C++ 线程适合 CPU 密集型任务,性能更高,灵活性更强,但需要开发者更仔细地管理线程安全和资源。

2025-01-04 16:36:53 457

原创 python的线程与异步函数

在 Python 中,线程和异步函数都是实现并发的方式,但它们的工作方式和适用场景有所不同。

2025-01-04 08:37:11 574

原创 C++ lambda表达式回调使用

在 C++ 中,Lambda 表达式是一种简洁的方式来定义匿名函数。它们可以用作回调函数,允许在需要的地方传递代码块。下面是一些使用 Lambda 表达式作为回调的示例。

2024-12-31 15:23:54 593

原创 C++线程池的使用

public:private:// 工作线程// 任务队列// 保护任务队列的互斥锁// 条件变量bool stop;// 停止标志// 构造函数++i) {for (;;) {});return;// 如果停止并且任务队列为空,退出线程task();// 执行任务});// 析构函数// 设置停止标志// 唤醒所有线程// 等待所有线程结束// 向线程池添加任务// 不允许在停止状态下添加任务});// 将任务添加到队列。

2024-12-31 15:09:06 443

原创 回调机制实现观察者模式

在回调机制中,可以注册多个回调函数,以便在特定事件发生时依次调用它们。下面是一个示例,展示如何在 C++ 中实现一个简单的事件管理器,支持注册多个回调函数。在实现观察者模式时,主题对象(Subject)可以注册多个观察者(Observer),当状态变化时,主题会调用所有观察者的回调函数。观察者设计模式,允许对象在状态变化时通知其他依赖对象,通常通过回调函数实现。

2024-12-31 14:47:03 250

原创 回调监听与多线程监听

回调监听和开一个线程用作监听是两种不同的设计思想,尽管它们在某些方面可能会有相似之处,但它们的实现和用途是不同的。

2024-12-31 14:23:38 466

原创 shell脚本编排python脚本文件

【代码】shell脚本编排python脚本文件。

2024-12-30 14:10:26 214

原创 python脚本并行处理事件

来触发各自的事件,并且主任务会等待这些事件的发生。来触发各自的事件,可以为每个任务创建一个独立的。来并行执行多个任务。每个任务会在执行过程中通过。

2024-12-15 19:42:01 103

原创 python脚本等待事件完成

虽然它们不能直接结合使用,但可以通过一些方式实现类似的功能。如果在异步代码中等待一个事件的完成,可以使用。模块提供的一个异步事件类。下面是一个示例,展示了如何使用。在 Python 中,来实现等待事件完成的功能。是两种不同的并发模型。

2024-12-15 19:07:17 295

原创 python通过连接mqtt服务端

在 Python 中,可以使用paho-mqtt库来连接到 MQTT 服务器(也称为 MQTT broker)。

2024-11-25 10:44:46 578

原创 条件变量进行线程之间的同步

【代码】条件变量进行线程之间的同步。

2024-11-18 20:41:44 153

原创 调度的目的

调度的主要目的就是控制任务的执行。调度是一个关键的管理过程,它通过控制任务的执行顺序和资源分配,确保系统高效、可靠地运行。无论是在操作系统、分布式计算还是数据处理工作流中,调度都是实现高效资源利用和任务管理的重要手段。

2024-11-18 10:16:06 365

原创 调度与DAG之间的关联

DAG中的箭头表示任务的依赖关系。调度器的箭头表示任务的执行顺序和调度策略。通过这种方式,可以清晰地看到调度与DAG之间的关系:调度器根据DAG的结构来安排任务的执行。

2024-11-18 09:57:34 253

原创 go语言对heap方法对同优先级的元素遵循先进先出的顺序

在 Go 语言的包中,heap.Pop()方法并不保证对于同优先级的元素会遵循先进先出(FIFO)的顺序。堆的主要特性是根据优先级来组织元素,而不是根据插入顺序。

2024-11-15 09:44:14 209

原创 C++根据特定字符截取字符串

在 C++ 中,如果根据特定字符进行字符串的截取,可以使用类的成员函数find()来查找字符的位置,然后使用substr()来截取字符串。以下是一个示例,展示了如何根据指定字符截取字符串。

2024-11-12 16:05:07 767

原创 git常用操作指令

【代码】git常用操作指令。

2024-11-06 22:06:05 636

原创 git拉取最新的代码并且不保留本地的未提交更改

其中 feature/taskmanage为分支名称。

2024-11-06 18:18:13 219

原创 使用管道同步和传递多个协程的数据

在Go语言中,管道(Channel)是一种非常强大的机制,用于在协程(Goroutine)之间同步和传递数据。一个管道(通道)并不局限于只在两个协程之间使用。通道可以在任意数量的协程之间进行通信。多个协程可以同时向一个通道发送数据,也可以有多个协程从同一个通道接收数据。

2024-11-05 20:50:02 341

原创 go语言中make函数的功能

在 Go 语言中,make是一个内置函数,主要用于创建切片(slice)、映射(map)和通道(channel)这三种类型的数据结构,并对其进行初始化。make是Go语言中用于初始化复杂数据结构的强大工具,它提供了一种简洁的方式来创建和初始化切片、映射和通道。

2024-11-05 10:22:48 346

原创 go语言连续监控事件并回调处理

go语言中使用回调函数处理事件:事件监测部分(如无限循环中的事件检测逻辑)可以独立于具体的业务处理逻辑。这使得代码的各个部分更加清晰,易于理解和维护。如果需要更改事件处理的方式,只需要修改注册的回调函数,而不需要修改事件监测的核心代码。例如,如果要改变对特定事件的响应行为,只需重新定义一个不同的回调函数并注册即可,不会影响事件监测的机制。// 定义事件处理函数类型// 模拟事件源。

2024-11-04 10:33:58 373

原创 C++中,public、protected和private之间的关系

C++中,publicprotected和private是类的访问修饰符,它们定义了类成员(包括成员变量和成员函数)的访问权限。这些访问修饰符决定了类成员在类内部、继承类以及外部代码中的可见性和可访问性。以下是它们之间的关系和区别。public:最宽松的访问权限,可以在任何地方访问。protected:比private宽松,但比public严格。可以在类内部和继承类中访问,但不能通过对象直接访问。private:最严格的访问权限,只能在类的内部访问。

2024-11-02 22:19:32 581

原创 C++回调函数监听、处理事件

为了实现无限监听事件并在收到事件时立即通过回调函数处理,我们可以在类中创建一个无限循环,该循环会不断检查事件队列并调用相应的回调函数。以下展示如何在C++中实现这样的系统。

2024-11-02 17:53:36 811

原创 go语言回调函数的使用

在 Go 语言中,回调函数是一种将一个函数作为参数传递给另一个函数,在特定的事件发生时被调用的编程模式。以上定义了一个用于处理任务的结构体,可以通过设置回调函数的方式来灵活地处理不同的情况,同时使用读写锁来保证在并发环境下的安全性。c.Lock()= nil {c.onTask(message) // 调用回调函数处理消息。

2024-10-31 12:22:20 434

原创 C++单例模式

C++中的单例模式(Singleton Pattern)是一种常用的软件设计模式,用于确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。单例模式通常用于管理共享资源,如配置信息、线程池、缓存等。

2024-10-30 13:07:58 347

原创 C++抽象类的继承多态的使用

抽象类是至少包含一个纯虚函数的类。除了纯虚函数外,抽象类可以有普通的成员变量和已具体实现的成员函数。

2024-10-30 09:38:38 338

原创 C++多态的应用

C++中的多态性是一种允许对象以多种形式存在的能力,它使得同一个操作可以作用于不同的对象上,产生不同的结果。多态性是面向对象编程的核心特性之一,它提供了代码的灵活性和可扩展性。C++中的多态性主要有两种形式:编译时多态(静态多态)和运行时多态(动态多态)。

2024-10-29 21:11:41 164

原创 go语言中interface之间嵌入与struct之间的嵌入实现多态

在Go语言中,结构体(struct)之间可以相互包含,这种特性通常称为“嵌入”(embedding)。当你在一个结构体中嵌入另一个结构体时,被嵌入的结构体的字段和方法就像它们直接声明在新结构体中一样。接口可以组合其他接口,一个接口可以包含另一个或多个接口的所有方法。// 基本接口Method1()// 第一个扩展接口Method2()// 第二个扩展接口Method3()

2024-10-28 22:03:27 565

原创 go语言多态性(接口interface)的使用

在Go语言中,接口类型(interface)完全可以作为一个函数的参数。这是Go语言多态性的一个重要体现,允许函数接受任何实现了接口中定义的方法的类型的实例。定义interface接口包含相应的方法。// MyStruct 是一个结构体,它将实现 Reader 接口// Read 方法使得 MyStruct 实现了 Reader 接口MyStruct是一个结构体,Message作为结构体中的字段,MyStruct结构体实现了Read的方法就这样实现了该接口。

2024-10-28 09:54:26 327

原创 qthread创建线程动态更新GUI数据

QThread可以方便地与 Qt 的信号与槽机制结合使用,实现线程间的安全通信。这使得不同线程中的对象可以轻松地进行交互,而无需担心线程安全问题。例如,可以在一个线程中发射信号,在另一个线程中连接到该信号并执行相应的槽函数,确保数据的正确传递和处理。这种机制使得代码更加清晰和易于维护,因为通信逻辑可以通过直观的信号与槽连接来实现,而不是使用复杂的同步原语。

2024-10-07 21:35:23 432

qt通过按键实现对客户端的断开与连接

qt通过按键实现对客户端的断开与连接

2024-10-12

qt动态获取agv的pose,在静态地图上显示

qt动态获取agv的pose,在静态地图上显示

2024-09-30

windows客户端+qt界面:客户端读取qt界面的数据并传输给服务端

windows客户端+qt界面:客户端读取qt界面的数据并传输给服务端

2024-09-25

linux系统cpu、内存等资源监控

linux系统cpu、内存等资源监控

2024-08-18

选择录入不同的指纹进行保存,如已录入测试即会响应

选择录入不同的指纹进行保存,如已录入测试即会响应

2024-08-18

四阶贝塞尔曲线对数据点进行拟合

python

2024-08-13

循迹小车:循迹电磁感线直线、弯道

循迹小车:循迹电磁感线直线、弯道

2024-08-13

视频流拉取、QT上位机界面显示

视频流拉取、QT上位机界面显示

2024-08-07

open62541库文件

open62541在ubuntu20.04已编译好的源码,编译好的库文件、头文件放在install目录中

2024-07-22

空空如也

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

TA关注的人

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