自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 点云处理:在数据洪流中探寻三维世界的真相

点云处理技术是连接虚拟与现实的关键桥梁,广泛应用于自动驾驶、工业机器人和数字孪生等领域。该技术面临四大核心挑战:1)点云数据的无序性和非结构化特征;2)密度分布不均导致的不规则性;3)多视角配准和动态跟踪的困难;4)语义理解对大量标注数据的依赖及实时处理的算力需求。随着传感器技术、算法创新和硬件发展,这些难题正逐步被攻克,推动点云处理技术在三维视觉领域发挥更大作用。

2026-02-03 18:26:37 418

原创 如何让AI看懂三维世界?

在三维点云处理领域,PointNet与PointNet++堪称里程碑式的算法组合,解决了AI“读不懂”三维点云的难题。

2026-02-03 18:20:53 260

原创 【LINUX打不开vscode】linux上打不开vscode显示:Code的另一个实例正在运行但没有响应

Linux下VSCode无法打开时,通常是由于残留进程未正常关闭导致。解决方法:首先通过ps aux | grep code查找并终止相关进程(使用kill [PID]或kill -9 [PID])。更高效的方法是直接使用pkill code或killall -9 code批量终止所有VSCode进程,最后确认无残留后重启即可。该方法适用于大多数因进程残留导致的VSCode启动问题。

2026-01-05 14:10:36 453

原创 信令和信号在通信领域的区别

信令是控制指令→ 决定信号如何传信号是物理载体→ 实现数据实际传所有通信系统信令控制层(大脑) +信号传输层(肢体) = 完整通信行为理解这对概念,就掌握了通信系统最底层的协作逻辑!

2025-07-31 19:38:17 781

原创 关于通信中的物理链路的解释

物理链路(Physical Link)是网络通信中最基础的连接层概念,指。它是数据从发送端到接收端所依赖的真实物理路径,如同城市间的高速公路,承载着所有数据信号的传输。

2025-07-31 15:47:32 883

原创 多线程编程指南:解锁程序性能的并发艺术

类比: 想象一个厨房(进程)里有多个厨师(线程)。进程 = 整个厨房:拥有独立的空间和资源(灶台/冰箱)线程 = 厨师:共享厨房资源,各自处理不同任务多线程的本质是在单个进程内创建多个独立的执行流✅ 共享进程的内存空间和资源✅ 拥有独立的程序计数器和栈空间✅ 由操作系统调度执行(单核交替/多核并行)关键优势:相比多进程,线程创建/切换开销降低10-100倍多线程如同双刃剑:用得好可让程序飞檐走壁,用不好则导致诡异崩溃。优先线程安全设计:80%的并发问题源于糟糕的设计善用高层抽象。

2025-07-31 11:21:42 651

原创 YOLO架构模型推理阶段置信度阈值和NMS阈值推荐设置

在 YOLOFast(或类似 YOLO 架构)模型的推理阶段,和。

2025-07-23 09:34:47 819

原创 【C++】OpenCV常用对比度增强方法

方法适用场景特点αβ 调整通用简单、快速直方图均衡化低对比度全局增强,可能过曝CLAHE局部对比度增强避免过曝,细节清晰Gamma 校正亮度非线性调整适合偏亮/偏暗图像归一化动态范围拉伸简单,适合低动态范围图像根据图像特性和需求选择合适方法即可。

2025-07-23 09:32:15 722

原创 【通信人必备】全网最全通信技术英文缩写速查手册

【通信人必备】全网最全通信技术英文缩写速查手册。

2025-07-22 13:39:57 1145

原创 Opencv中图像深度(Depth)和通道数(Channels)区别

在OpenCV中,图像深度(Depth)和通道数(Channels)是两个完全不同的概念,需严格区分。

2025-04-29 09:58:34 958

原创 以太网为什么取名叫以太网?

以太网(Ethernet)的名字听起来很抽象,但其实它的来源和早期科学史上的一个“假想物质”——**以太(Ether)**有关。

2025-04-15 12:06:51 970

原创 bit、byte、KB、B、字节、位、字符之间关系详解

bBA中A1!总结Bb。

2025-03-31 11:11:46 2773

原创 OpenCV_contrib扩展库功能

OpenCV_contrib 是一个扩展库,提供了许多额外的模块,用于增强 OpenCV 的功能。

2025-03-28 16:45:08 956

原创 C++异常处理时的异常类型抛出选择

选择抛出哪种异常类型,主要依据错误的性质和希望传达的语义信息。用于运行时错误,用于逻辑错误,用于越界错误,用于内存分配错误。通过合理选择异常类型,可以使代码更具可读性和可维护性。

2025-03-20 15:56:04 590

原创 检查目录是否存在,如果不存在则创建

检查目录是否存在,如果不存在则创建方法二。

2025-03-18 15:59:55 240

原创 常见报段错误(segment fault)原因分析总结

关于程序出现“段错误”或“非法操作”错误信息的分析,以下是对其的总结分析:

2025-03-17 18:21:18 351

原创 0x00007FF635E86B2A 处(位于...中)引发的异常: 0xC0000005: 读取位置 0x0000018D845DE008 时发生访问冲突。

这里一改成128*128就报错。128,且模型训练的入口也是128。此时推理输入设置的是128。128,当改成224。

2025-03-07 17:19:58 398

原创 LNK2038 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MD_DynamicRelease”

原因:是由于ncnn和paddleLite的库同时使用会冲突。后面部署降lite都换成了ncnn就可以了。要么都用ncnn,要么都用lite。vs2019中属性设置为。vs2019中属性设置。

2025-03-06 18:30:20 388

原创 关于vs2019报错:LNK2005 “int * rec“ (?rec@@3PAHA) 已经在 pipeline.obj 中定义

因为在pipeline.h中引用了utils.h导致被包含到pipeline中来了,导致重定义。

2025-03-06 15:03:00 188

原创 降低picodet金字塔层数训练picodet模型,报错:ValueError: (InvalidArgument) Currently

原因是paddlepaddle-gpu==2.1.2版本不对,将其版本升级为2.2.0,问题解决,可成功训练。

2024-11-21 10:25:04 394

原创 SError: (External) CUDA error(719), unspecified launch failure.

多半是网络的输出(分类层)和你的数据标记不对导致的,建议查看网络是否正确或者查看数据标签是否正确。标签的数量要和实际的标签数量一致。原因检测出来是标签的原因。

2024-11-18 17:09:16 518

原创 paddleLite在C++推理部署picodet模型时,推理结果检测框两个点坐标一直一样

在计算机视觉和深度学习领域,特别是在目标检测任务中,FPN(Feature Pyramid Network)是一种常见的网络结构,用于构建一个多尺度的特征金字塔。FPN 过在不同层次上提取特征,使得网络能够同时捕捉到不同尺度的目标。fpn_stride通常指的是在FPN网络中不同层级的输出特征图(feature map)的步长(stride)。步长是指在卷积操作中,输出特征图相对于输入特征图的采样间隔。较小的步长意味着特征图的分辨率更高,能够捕捉到更精细的细节;

2024-11-06 16:21:49 538

原创 严重性 代码 说明 项目 文件 行 禁止显示状态 错误(活动) E0266 “byte“ 不明确

原因是我的新增的代码中使用了using namespace std;,而C++17中引入了类型 std::byte,这样就和原来系统库中的C++定义的unsigned char byte命名产生了冲突。解决方法,就是不要使用using namespace std;,全部直接加上std::,这样就不会再报错了。

2024-10-30 18:34:27 847

原创 cv::findContours()函数报错:将一个无效参数传递给了将无效参数视为严重错误的函数

然而,处理过程中发现,输入进去的mask由二值图,经过cv::findContours处理,mask变成了灰度图,导致cv::findContours能成功处理,但在函数末尾显示cv::findContours接收到无效参数,导致cv::findContours函数能执行但整个函数体报错的情况。解决方法是要确保输入到cv::findContours的mask不能改变。将一个无效参数传递给了将无效参数视为严重错误的函数。

2024-10-16 10:11:35 535

原创 RuntimeError: split_with_sizes expects split_sizes to sum exactly to 35, but got split_sizes=[4, 32]

经搜集查询之后发现时num_class的设置少修改了一处,因为我要增加检测的类别数,配置文件中需要修改两处,但我只修改了一处,就会报上面错误。然后将两处num_class改成一样,就可以正常训练了。需要修改的两处分别为model->head和model->aux_head。

2024-09-04 14:47:11 1480

原创 C26812:枚举类型“OD STATE”未设定范围。相比于“enum“,首选“enum

(也称为强类型枚举)提供了更好的类型安全性,因为它不会允许隐式转换到其他类型,除非明确地进行转换。在编程中,当看到错误信息 “C26812: 枚举类型 ‘OD_STATE’ 未设定范围”,这通常意味着你定义了一个枚举类型。如果使用的是C语言,可以通过在枚举定义后显式地转换枚举值来指定底层类型,但这种做法在C++中不推荐,因为它破坏了类型安全性。,但没有指定其底层类型(即存储枚举值的数据类型)。类型,但注意,这可能会降低代码的类型安全性。类型,但如果想要指定一个不同的类型(比如。的枚举,可以简单地使用。

2024-09-02 11:32:59 706

原创 vs2019 C++ 无法定位程序输入点于动态链接库

由于我电脑上安装了两个openvino,分别是2021.1.110和2021.2.185,这里要使用的是2021.1.110,而在环境变量中我是将2021.2.185放在2021.1.110版本前面了,导致程序进入了2021.2.185中寻找动态链接库文件,导致错误。$allocator@D@2@ @std@@HO@Z 于动态链接库F: 单件分离 代码danjian x64 Release danjian.exe 上.改变环境变量后,重启电脑就可以了。

2024-08-27 16:37:15 1284

原创 代码中特殊注释——TODO、FIXME、XXX、HACK

可以拆成短语,fix me ,意为修理我。如果代码中有该标识,说明标识处代码需要修正,甚至代码是错误的,不能工作,需要修复,如何修正会在说明中简略说明。:如果代码中有该标识,说明标识处代码虽然实现了功能,但是实现的方法有待商榷,希望将来能改进,要改进的地方会在说明中简略说明。:英语翻译为待办事项,备忘录。如果代码中有该标识,说明在标识处有功能代码待编写,待实现的功能在说明中会简略说明。如果代码中有该标识,说明标识处代码我们需要根据自己的需求去调整程序代码。实例:加上todo,后面的注释会变亮。

2024-08-27 16:29:26 750

原创 onnx转NCNN模型遇到Unknown data type 0 + NonMaxSuppression not supported yet + Unsupported squeeze axes

训练模型转推理模型时,需要将这个参数设置为True,这个开关时关闭后处理和NMS,这两个操作会在部署代码里自己单独弄,不放在模型中。然后再准成onnx,再转ncnn时就可以了,不再报上面那种错误了。参考网上的解决方法:https://blog.csdn.net/weixin_42068948/article/details/114584935。解决方法:pt转换的onnx有很多冗余需要简化,可以借助onnx-simplifier。将上面转换的onnx文件放入这个文件夹中来,然后利用cmd命令进行转换。

2024-08-23 09:27:47 594

原创 桌面图标间距过大恢复正常间距的方法

有时候会因为显示器来回的切换导致图标间距很大。

2024-08-21 08:53:43 1995

原创 使用TensorRT报错Segmentation fault (core dumped)+CUDA error(4) driver shutting down.

使用fastdeploy在nano上部署,代码每次将任务全部执行完之后报错错误。

2024-08-19 18:59:40 854

原创 CMakeLists基础教程手把手教会使用Cmake代码编写

CMake是一个跨平台的编译(Build)工具,可以用简单的语句来描述所有平台的编译过程。能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。

2024-08-17 16:36:49 1253

原创 vs在release调试时报:变量已被优化掉,因而不可用

在vs顶部工具栏上,选择工具->属性,打开属性页,然后依次选择配置属性->C/C+±>优化,将优化栏的值选为。,然后确定保存设置就可以了。

2024-08-17 16:31:00 1264

原创 深度学习环境配置windows10+Anaconda3+Cuda11+Cudnn11+Vscode保姆级教程

Anaconda下载完整版是自带的Python,我们只需要将VScode中的python路径切换到Anaconda自带的Python路径就行了,Anaconda自带的Python是可以调用Anaconda中自带的类库的。

2024-08-15 15:39:37 1522

原创 python实现读取指定文件下的图片到指定目录文件夹

该代码会遍历指定文件夹及其子文件夹,找到所有.jpg格式的图像文件,并将它们复制到新的文件夹中,并且按顺序编号重命名保存的文件。

2024-08-15 15:30:45 553

原创 Doxygen程序注释文档制作教程

最初专为 C++ 创建,现在也支持 C、Objective-C、C#、PHP、Java、Python、IDL、Fortran、VHDL、Tcl 和 D。

2024-08-15 15:27:43 883

原创 vs2019中opencv与pcl属性表的顺序放置关系

在vs2019中加载属性表的时候,opencv要比pcl库先加载,如图所示,顺序如果放错了会导致程序运行报错。

2023-11-06 09:08:00 91

原创 C++ 异常处理方法总结及实例

异常是程序在执行期间产生的问题。C++ 异常是指在程序运行时发生的特殊情况,比如尝试除以零的操作。异常提供了一种转移程序控制权的方式。C++ 异常处理涉及到三个关键字:try、catch、throw。如果 try 块在不同的情境下会抛出不同的异常,这个时候可以尝试罗列多个 catch 语句,用于捕获不同类型的异常。

2023-07-18 09:27:12 142

原创 C++求最大值和最小值方法

C++求最大值和最小值方法。

2023-06-15 17:21:34 259

原创 C++创建的异步处理任务方法

在需要多个重复进行要处理时,使用异步进程可以降低耗时,让重复的过程同时完成。

2023-06-05 15:32:50 145

空空如也

空空如也

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

TA关注的人

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