- 博客(154)
- 资源 (8)
- 收藏
- 关注
原创 模型压缩之剪枝
非结构化剪枝通过剪除个别权重实现模型压缩,但硬件加速效果有限。结构化剪枝在更高层次(如通道、卷积核或神经元)上进行剪枝,能带来实际推理加速效果,适合部署在硬件上。剪枝后的模型通常需要通过再训练或微调恢复性能。剪枝是压缩模型的重要手段之一,它可以大幅减少模型的计算量和参数量,使得复杂的深度学习模型能够在资源有限的设备上高效运行。
2024-09-30 17:10:06 561
原创 大模型压缩方法之知识蒸馏
知识蒸馏的反向传播过程是基于总损失函数,即硬标签损失和软标签损失的加权和。这个损失函数通过反向传播来优化学生模型的参数,使学生模型不仅能学习真实标签,还能从教师模型中吸收更多深层次的知识。
2024-09-30 17:04:04 372
原创 什么是camera sensor的PWL
在ADC中,PWL线性化是一种常用的技术,用于补偿和修正ADC的非线性响应。它通过将输入信号分成多个段,每个段应用不同的线性函数,从而实现更精确的输入到输出转换。这种方法具有易于实现、灵活性强和提高精度的优点,广泛应用于各种需要高精度信号转换的系统中。
2024-09-29 14:15:24 634
原创 图像锐化的算法总结
图像锐化方法的选择取决于应用场景和具体需求。对于简单边缘增强,拉普拉斯和 Sobel 算子是经典的选择;对于更加灵活和精细的细节增强,高提升滤波自适应锐化或拉普拉斯金字塔方法会有更自然的效果。而深度学习方法适合高端应用,如复杂纹理或视频锐化。
2024-09-21 20:43:55 921
原创 常用的图像增强的算法之间的联系和区别
USM:用于锐化图像,增强细节和边缘。拉普拉斯算子:用于边缘检测和轮廓提取。直方图均衡化:调整图像的灰度分布,改善全局对比度。伽马增强:调整图像亮度,增强暗部或亮部细节。每个方法都有其特定的应用场景,通常根据图像处理的需求来选择合适的技术。
2024-09-21 20:39:51 845
原创 如何配置ssh key 到gitlab, 实现git push
现在,你已经完成了在 Ubuntu 系统上配置 GitLab SSH Key 的全过程。一旦配置成功,你就可以使用 SSH 方式克隆、拉取或推送代码了。确保你的 Git 客户端使用正确的 SSH Key。生成密钥对后,查看公钥的内容,稍后需要将它添加到 GitLab。命令生成 SSH 密钥对(公钥和私钥)。你会被提示输入存储密钥的位置,默认保存在。在你的 Ubuntu 系统中,使用。按回车键使用默认路径。
2024-09-20 15:22:57 616
原创 ubuntu如何进行自动mount硬盘(简易法)
6, 填写Mount Point就可以了, 最后输入一次密码,重启设备就搞定了。4. 选择edit mount options。1. 找到你ubuntu的disk工具。2. 选中你要mount的盘。3. 点击那个设置按钮。
2024-09-20 11:40:13 258
原创 代码的静态检查和动态检查
这种检查依赖于运行时数据,可以捕捉到静态检查无法检测到的问题,例如内存泄漏、运行时异常、逻辑错误和并发问题。代码的情况下,对代码进行分析和检查。它通常在编译前或代码开发过程中进行,用于识别语法错误、类型错误、潜在的逻辑缺陷、代码风格问题和安全漏洞。静态检查有助于在早期阶段发现问题,从而降低软件开发中的错误率。还有编译时报错也是一种检查, 这个就是基于编译器的检查,比如gcc, clang/llvm,MSVC等等。通过结合静态和动态检查工具,开发者可以更全面地识别和解决代码中的问题,提升软件质量和可靠性。
2024-08-30 09:58:14 372
原创 理解静态多态和动态多态
多态性是面向对象编程中的核心概念之一,它允许同一个接口通过不同的实现方式来执行不同的操作。静态多态和动态多态各有优缺点,选择合适的多态形式应根据具体的应用场景。在设计高效且灵活的程序时,充分理解这两种多态性及其实现方式,可以帮助开发者编写出更加健壮、可扩展的代码。在动态多态中,基类中的虚函数可以在派生类中进行重写(override)。模板提供了一种编写通用代码的方式,编译器会根据实际使用的类型生成对应的函数或类。模板的优势在于它能根据不同类型自动生成相应的代码,从而实现静态多态。
2024-08-27 15:25:40 496
原创 ROS的tf转为RT矩阵
该函数将对象bt中的旋转和平移信息提取出来,并将其填充到类型的 4x4 矩阵out_mat中。这种矩阵可以用来进行3D空间中的坐标变换。
2024-08-06 10:53:23 507
原创 【C++】 条件变量实现线程同步示例
以下是一个使用 C++ 多线程和条件变量的示例,展示了线程 A 接收一个enable信号并通知线程 B 开始工作。线程 B 在开始工作之前将enable信号设置为false,然后执行其任务。// 共享数据// 模拟接收 enable 信号// 通知线程 B// 等待 enable 信号});// 将 enable 信号设置为 false// 进行工作// 模拟工作tA.join();tB.join();return 0;
2024-07-31 18:07:43 206
原创 [effective C++] 条款36: 绝不重新定义继承而来的non-virtual 函数
non-virtual 函数的定义和行为non-virtual 函数是在基类中定义的普通成员函数,不带有virtual关键字。在子类中定义同名同参数的函数时,实际上是隐藏(隐藏是指基类函数名被隐藏,无法在子类作用域中直接访问,但可以通过作用域解析操作符调用)了基类的函数,而不是覆盖它。这意味着通过基类指针或引用调用该函数时,调用的是基类版本,而不是子类版本。静态绑定:编译时确定函数调用,与对象的实际类型无关,适用于非虚函数。动态绑定:运行时确定函数调用,根据对象的实际类型选择函数版本,适用于虚函数。
2024-07-31 17:20:50 409
原创 【Ubuntu】如何用指令设置静态IP
这里介绍的是利用netplan 的配置文件一般在 /etc/netplan/ 目录下,文件名类似 01-network-manager-all.yaml。
2024-06-29 21:39:24 543
原创 ROS的pointcloud2 格式和PCD格式总结以及转换
因为row_step 对于有序点云来说是指的一行点云的个数, 但是对于无序点云就是整个点云的数量, 也就是整个数据就是一行,height也是1。对于pcd, 有两种类型, 一种是明文形式, 一种是bin的形式,顾名思义明文形式是直接可以打开就能看的。一个点的大小,比如xyz 都是float32 , intensity 是float。那么这个数组PointField的长度就是6, 其中举例intensity。举例将pointcloud2 保存为pcd的文件。在PointField的位置是3。
2024-05-31 18:07:40 690
原创 【C++】 dlopen 和dlsys
dlopen是一款Unix系列操作系统下的动态链接库函数,它的主要功能是在程序运行时动态加载指定的共享库(也可称为动态链接库)dlsym是从库中查找函数或者变量。
2024-04-23 23:48:36 642
原创 python国内的镜像源记录
清华大学(推荐):https://pypi.tuna.tsinghua.edu.cn/simple。中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/阿里云:http://mirrors.aliyun.com/pypi/simple/豆瓣(推荐):http://pypi.douban.com/simple。华中科技大学:http://pypi.hustunique.com/pip install pycuda -i <源地址>
2024-04-21 23:56:30 365 1
原创 vscode 端口转发实现端口映射,实现端口自由
用vscode连接server进行开发, 是非常方便的,但很多时候,server的端口开放的很有限,那么就可以利用vscode进行端口映射。
2023-07-14 10:14:56 5658
原创 控制 NDEBUG 宏的开启和关闭
本文档介绍了如何通过编译选项来控制NDEBUG宏的开启和关闭,以实现在 C++ 编程中控制调试信息输出的功能。这个选项可适用于 Visual Studio 和其他非 Visual Studio 的编程环境。
2023-06-05 17:54:30 1272
原创 docker容器内部配置VNC和novnc,主机或者外部可访问
最近项目刚好要用到,配置了一下,工具主要是三个: 1. tigervnc, 2. xfce4 3 . novnc1. tigervnc apt安装既可以,作用提供vncserver的服务2. xfce4提供桌面服务,比较轻量化3 . novnc直接在github上下载好即可先按照一下步骤配好启动脚本,这个是参考这篇, 防止博客失效, 特此粘贴过来, 侵权删。
2023-06-03 00:40:16 3121
原创 C语言添加宏函数并进行函数名适配
比如现在要实现两种数据类型, 只要进行两次申明就可以了,和模板函数有异曲同工之妙,但由于是C语言, 不能用C++的模板函数, 所以这种宏的方法就实现了类似模板函数的功能。如此定义一个宏函数, 宏函数的名字可以通过b进行编译的初始化。后面只要call对应宏的函数名即可。
2023-03-13 21:07:43 335
how_to_use_simpleperf_for_cachemisses_and_cpucycles.txt
2021-06-10
vscode 利用cmakelist 的demo工程
2020-11-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人