- 博客(152)
- 收藏
- 关注
原创 onnxruntime推理报错
这是因为onnxruntime版本没有和cuda对应,比如cuda12.1需要onnxruntime18以上的版本。
2025-03-17 19:38:54
256
原创 徒步旅行中的补给问题
为了在旅途中保持充足的能量,小R每天必须消耗1份食物。幸运的是,小R在路途中每天都会经过一个补给站,可以先购买完食物后再消耗今天的1份食物。然而,每个补给站的食物每份的价格可能不同,并且小R在购买完食物后最多只能同时携带。现在,小R希望在保证每天食物消耗的前提下,以最小的花费完成这次徒步旅行。你能帮助小R计算出最低的花费是多少吗?小R正在计划一次从地点A到地点B的徒步旅行,总路程需要。
2025-02-10 14:43:30
314
原创 激光雷达和相机早期融合
图像)进行外参和内参标定。这是为了确定激光雷达坐标系和相机坐标系之间的转换关系,包括旋转和平移。通常采用棋盘格等标定工具,通过同时获取激光雷达点云和相机图像中棋盘格的特征点,来计算出两种传感器之间的相对位置和姿态。图像中的每个像素,在投影后的点云中查找与之对应的点(可以通过像素坐标匹配)。一旦找到匹配的点云点,将该点的深度值(通常是点云点到激光雷达中心的距离)赋给。通过外参和内参的标定将激光雷达的点云投影到图像上。图像中的相应像素,这样就得到了深度图像。分别展示了检测和分割的效果。
2025-01-22 17:18:22
1086
原创 [runtime.cpp::parsePlan::314] Error Code 1: Serialization (Serialization assertion plan->header.magi
主要的原因是导出engine的TensorRT版本和推理的TensorRT版本不一致。要求cudnn是8x。
2024-10-16 10:43:44
812
原创 GhostNetv3的Re-parameterization
在GhostNetV3中,重参数化是一种在训练阶段引入的技术,用于提高模型性能,而在推理阶段则通过逆向重参数化过程去除多余的分支,以避免增加额外的计算成本。具体来说,在训练过程中,深度卷积和1×1卷积中引入了线性并行分支,这些分支在训练后可以重新参数化,在推理时不会带来额外的成本。这是因为卷积和BatchNorm运算在推理过程中都是线性的,可以折叠成单个卷积层,其权重矩阵和偏置可以重参数化为所有分支的权重和偏置的总和。在推理时,通过逆向重参数化过程,可以删除重复的分支。
2024-08-06 11:25:55
336
原创 引导Kim生产学习计划
首先,我们定义一个组件接口,所有的文件和文件夹都将实现这个接口。public:首先定义一个组件接口,它是文件系统层次结构中的所有元素的基类。public:// 虚拟析构函数,确保派生类的析构函数被调用// 向文件系统中添加一个元素// 从文件系统中移除一个元素// 获取文件系统中的一个子元素// 显示元素信息,例如用于打印文件系统树。
2024-08-05 15:15:48
929
原创 JNI实现人脸特征提取和比对
dlib通常会自动检测系统上的JPEG、BLAS和LAPACK库。如果你已经安装了这些库,dlib应该能够自动找到并使用它们。确保你已经安装了JPEG库、BLAS和LAPACK库。
2024-07-08 18:02:31
904
原创 JNI 实现人脸检测
dlib通常会自动检测系统上的JPEG、BLAS和LAPACK库。如果你已经安装了这些库,dlib应该能够自动找到并使用它们。确保你已经安装了JPEG库、BLAS和LAPACK库。
2024-07-08 14:31:01
513
原创 OCR text detect
HGNet 作者针对 GPU 设备,对目前 GPU 友好的网络做了分析和归纳,尽可能多的使用 3x3 标准卷积(计算密度最高)。在此将 VOVNet 作为基准模型,将主要的有利于 GPU 推理的改进点进行融合。VoVNet 通过引入 OSA(One-Shot Aggregation)模块来优化特征提取过程,提高了网络的效率和性能。PP-HGNetV2 是 PP-HGNetV1 的改进版本,在多个方面进行了优化和增强,以提高模型的性能和效率。
2024-07-03 17:05:32
1251
原创 Paddleocr数据增强调用逻辑
每一个op是eval(op_name)(**param),eval() 函数将字符串 expression 解析为 Python 表达式,并在指定的命名空间中执行它。get_ext_data通过self.ops[:self.ext_op_transform_idx]获取配置文件中数据增强。通过ppocr/data/imaug/__init__.py,eval()可以调用CopyPaste实现数据增强。然后调用 data = transform(data, load_data_ops)实现数据增强。
2024-06-18 11:40:59
557
原创 paddleocr实验过程
切割后的数据在train_data中,注意切割后的数据前缀默认是当前目录,因此建议切割数据在liunx中进行。或者修改下面--datasetRootPath中的default。如果在Win中切割,放入liunx中训练。1、打开tmux窗口启动,这样断开连接后台可以继续训练。2、根据需求修改配置文件,如输出名称,数据集位置,注意暂时不要改吧epoch,训练容易报错。建议在liunx中指定。
2024-06-11 18:07:33
677
原创 yolov5导出onnx转engine推理
使用上述文章中的代码ONNX转engine速度较慢, engine_file_path需要给出具体名称,如:yolov5_my.engine。pt转engine是先转ONNX,然后再到engine。将TensorRT的的lib加入环境变量中。需要提供配置文件和权重文件,不然导出模型不能正常推理。在win11系统环境path添加。
2024-02-22 10:49:11
1798
原创 yolov5三种TensorRT推理过程
4、把生成的yolov5l_best.wts文件导入\tensorrtx-yolov5-v5.0\yolov5\build\Release文件下,使用指 令yolov5.exe -s yolov5l_best.wts yolov5l_best.engine l 通过yolov5.exe生成yolov5l best.engine,参数l根据训练模型来改,可以是s\m\I\x。
2024-02-20 14:59:04
749
原创 pip安装paddlepaddle报错ERROR: Could not install packages due to an OSError
这个问题是由于Windows系统路径长度限制导致的。在Windows中,单个文件路径的最大长度有限制(默认为260个字符),这可能会在你尝试安装某些Python包时导致问题,特别是当这些包的路径非常深或包含许多子目录时。
2024-02-19 17:20:38
1507
原创 目标检测一般性问题
是衡量二分类模型精度的一种指标,兼顾了分类模型的精确率和召回率。它是精确率和召回率的调和平均数,最大为1,最小为0。但是还要考虑模型的泛化能力,F1-score过高但不能造成过拟合,影响模型的泛化能力。IoU也称作交并比,评价边界框正确性的度量指标,表示detection box(检测框)与ground truth(真实标签)的交集和并集的比值。FP:IoU
2024-02-18 11:20:33
638
原创 人生有感触才能对话苏东波
苏轼诗和词的表面不是他高度的提现,背后折射他对当时处境的态度才是千百年来人们对他的喜爱和追捧。想来我在这个年纪也是什么都说不出来,小时候这个园子还不是免费的,每次路过门口,我最好奇的是门口的两个石狮子嘴里的球是怎么放进去的的。后来园子开放了,来了好几次,想在这个不大的园子里看看有没有新发现,当然,还会背几首苏轼的诗词满足自己爱炫耀的虚荣心。看完纪录片千古风流人物后,这些千古留名的大人物的才华,家室,地位在当时都是普通人望尘莫及的,但是他们的一生中总有各种遗憾,其中那些有着远大抱负的人,大抵都是郁郁不得志。
2024-02-14 21:13:14
404
原创 Failed to build lap ERROR: Could not build wheels for lap, which is required to install pyproject.to
pip安装paddledet,报错。
2024-02-01 14:10:21
1194
原创 关于paddleocr的predict_system按高度顺序画图
关于paddleocr的predict_system按高度顺序画图,(coco格式)
2024-01-30 13:45:52
550
原创 Citrix找不到ICAWebWrapper.msi所在的文件夹的路径
首先解压Citrix Receiver.exe,然后在里面找到。这个东西,将放入上图中找不到的路径下可以解决这个上述问题。在Citrix Workspace启动虚拟机是出现。
2024-01-10 10:43:23
4772
原创 关于json.dumps()写入文件时是utf8
json.dumps()中设置ensure_ascii=False,结合open函数中的encoding='utf-8',json.dumps()默认情况下,该函数会自动处理Unicode编码。不要直接在json.dumps()设置encoding='utf-8',
2024-01-09 13:30:20
2461
原创 paddleocr文字识别变迁
对于标准的 DML 策略,蒸馏的损失函数仅包括最后输出层监督,然而对于 2 个结构完全相同的模型来说,对 于完全相同的输入,它们的中间特征输出期望也完全相同,因此在最后输出层监督的监督上,可以进一步添 加中间输出的特征图的监督信号,作为损失函数,即 PP-OCRv2 中的 U-DML (Unified-Deep Mutual Learning) 知识蒸馏方法。在L2正则化的帮助下, 网络的权重趋向于选择一个较小的值,最终整个网络中的参数趋向于0,从而缓解模型的过拟合问题,提高 了模型的泛化性能。
2023-12-06 10:49:01
1701
原创 paddleocr文本检测改进变迁
知识蒸馏的方法在部署中非常常用,通过使用大模型指导小模型学习的方式,在通常情况下可以使得小模型 在预测耗时不变的情况下,精度得到进一步的提升,从而进一步提升实际部署的体验。标准的蒸馏方法是通过一个大模型作为 Teacher 模型来指导 Student 模型提升效果,而后来又发展出 DML 互 学习蒸馏方法,即通过两个结构相同的模型互相学习,相比于前者,DML 脱离了对大的 Teacher 模型的依赖, 蒸馏训练的流程更加简单,模型产出效率也要更高一些。FPGM与基于范数的裁剪算法的对比如下图所示。
2023-12-04 17:46:36
1595
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人