- 博客(50)
- 资源 (1)
- 收藏
- 关注
原创 指针和引用
/是错误的!!!//是正确的!!!//是错误的!!!//是错误的!!!//在二级指针甚至多级指针中,两边都要有const 才算正确;//是错误的!!!//前面说到,const只负责其右边的类型构造,上面可以简化为//判断错误//是正确的!!!//简化为 int const *<<<=== int *;引用是一种更安全的指针。int a=10;int *p=&a;int &p=a;//如果不会定义引用,可以先写出指针形式,然后用等号右边的&符号覆盖等号左边的*,代码如上。
2025-03-29 22:18:55
352
原创 回溯算法总结
这里对nums是已经排过序了,这里i > startIndex是确定这是同一树层,而不是同一树枝的逻辑,如果是同一树枝,那么i一定等于startIndex的。可以这么理解,全排列是要将所有的值重新排列,如果是树枝回溯,那么i-1一定为ture,则说明这个不是树枝回溯,不是树枝回溯,那么一定就是树层了。如果把 子集问题、组合问题、分割问题都抽象为一棵树的话,那么组合问题和分割问题都是收集树的叶子节点,而子集问题是找树的所有节点!主要不同的是,子集问题是回溯时就开始记录了,达到叶子节点返回;
2025-01-16 14:56:35
614
原创 xv6前置知识
如果我们提高父子进程的代码量,使其执行的时间大于一个时间片,应该就可以看到理想的效果,我将i设置为100,并且为了便于观察,我将遍历次数也打印下来了;一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。根据fork函数返回的参数判断,如果返回0则说明是子进程,而在主进程中fork函数会返回主进程的pid(大于0),就可以根据if语句来执行不同的代码。
2024-11-30 21:25:30
997
10
原创 数组总结篇
循环1遍历了之后,循环3还要遍历一次;采用这种遍历方式可以处理n。n的方形矩阵,也可以处理m。如果不判断,最终输出结果。如果不判断,最终输出结果。
2024-11-26 14:59:16
160
原创 Timesformer的代码实现
经过block之后的x的维度大小为x【1,1569,768】,最后返回为x[:,0]为【1,768】根据注意力类型判断是否需要加时间编码,这个时间编码主要是为了后续进行Time Attention;就像加入位置编码后,用以Space Attention一样。,求得每一个类别的概率,取一个最大值,即实现了分类。最后返回的x[1,768为]经过分类头。下面就是一个block所执行的代码。代码主要由两部分组成,特征提取(这一部分就是下图框起来的部分。
2024-04-09 20:03:43
790
1
原创 深度学习中不同学习率调整策略
LinearLR是线性学习率,给定起始factor和最终的factor,LinearLR会在中间阶段做线性插值,比如学习率为0.1,起始factor为1,最终的factor为0.1。那么刚开始迭代时,学习率将为0.1,最终轮学习率为0.01。下面设置的总轮数total_iters为80,所以超过80时,学习率恒为0.01。这里的T_max是以epoch为单位的,T_max对于余弦函数学习率的半周期(下降的半周期)start_factor:起始factor。gamma:调整系数。gamma:调整系数。
2024-03-28 11:22:48
785
原创 深度学习技巧总结
lcd是进入你自己的文件夹,我理解是local cd 命令,如果要操作对方服务器直接用常用的linux命令即可,如果需要对本机服务器操作,一般是。username指的是你要远程连接对方服务器的用户名,remote_ip是要远程连接对方服务器的IP地址。参考:https://www.cnblogs.com/lsr-mark/p/15672002.html。远程连接服务器后不是手动退出ide环境,而是远程连接被中断。这里port感觉可以随便填,我一般都填22。
2024-03-10 10:30:20
642
原创 pvrcnn在openpcdet框架下的实现流程
功能:执行Set Abstration模块以聚合特征通过FPS获得关键点(kitti数据集中设置是2048个)首先对关键点通过SA模块聚合特征,拼接到第一处对BEV视图通过SA模块聚合特征,拼接到第二处对经过不同比例稀疏卷积下采样的voxel分别进行VSA聚合,拼接到后面的位置"""Args:Returns:"""'''通过最远点采样,获取每一帧点云的关键点''''''Extended VSA中对BEV插值SA操作'''
2023-10-24 22:22:06
545
原创 关于PointHeadBox类的理解
(self.assign_targets--------->self.assign_stack_targets-----> self.box_coder.encode_torch调用了PointResidualCoder类中的encode_torch函数)(self.generate_predicted_boxes--------->self.box_coder.decode_torch调用了PointResidualCoder类中的decode_torch函数)得到了从G_hat到G的1*8维参数。
2023-10-05 10:00:07
1297
原创 安装OpenPCDet跑通PointRCNN
刚开始接触OpenPCDet这个库,配置环境好久都不成功,后面看到这篇博文给我提供了思路,本文主要记录一下安装过程中出现的错误。
2023-10-03 15:09:14
2844
5
原创 dm-vio-ros的安装(详细)
在原来的那个终端,进入dm-vio/caktin_ws/devel/lib文件下,输入。在安装过程中,有些地方提示的不是很清楚,故写一篇记录避免再次犯错。在dm-vio的一个子目录下创建ros工作空间,如图所示。并在src下克隆dm-vio-ros。再新开一个终端,运行下好的数据包。在src下初始化工作空间。返回上一级目录,编译。
2023-04-04 19:57:31
783
原创 JavaScript和TypeScript入门
JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言,使用JavaScript可以轻松的实现与HTML的互操作,并且完成丰富的页面交互效果,它是通过嵌入或调入在标准的HTML语言中实现的,它的出现弥补了HTML的缺陷,是java与HTML折衷的选择。.................................
2022-07-09 21:37:17
651
原创 《通信软件开发与应用》课程结业报告
本文是基于Bootstrap框架,使用Html和CSS为基本工具所实现的静态网页,主要参考了BootStrap的代码框架,基本实现了导航澜、滑动窗口、卡片样式、图片轮播、列表组、折叠框、按钮组,使用了容器和栅格布局系统;使用了绝对定位与相对定位的方式;同时也定义了一些自己需要使用到的CSS样式。...........................
2022-07-04 10:17:38
613
原创 css入门学习
学过前端的人,对HTML语言一定不会感到陌生,因为它是前端设计最基本的工具。然而,随着网站越来越复杂,网站的维护变得越来越重要,对设计师的要求也越来越高。
2022-06-25 16:19:22
4143
原创 Html入门
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、HTML是什么?二、使用步骤1.html文档基本结构2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、HTML是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.ht.
2022-06-09 20:13:20
1408
原创 基于stm32片内Flash数据的DAC输出
stm32片内Flash的提示音播放前言一、DAC简介二、使用DAC输出单周期的正弦波前言使用用Adobe audition音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz采样、8bit量化编码的单声道wav格式),确保音频数据尽量小(最大不超64KB),然后编程将其分批次写入Stm32f103芯片内部flash区域。然后将数字音频还原播放,编程读取此段音频,我们这里通过stm32f103自带的DAC通道,转换为模拟音频进行播放,并用示波器观察波形,用耳机/喇叭收听,评判音乐还原效果;.
2021-12-31 04:00:00
667
原创 STM32之Flash读写操作
本例是以读写C8T6最小系统板的Flash,了解其Flash地址空间的数据读取。stm32f103c8t6只有20KB 内存(RAM)供程序代码和数组变量存放,因此,针对内部Flash的总计64KB存储空间(地址从0x08000000开始),运行一次写入8KB数据,总计复位运行代码4次,将32KB数据写入Flash。并验证写入数据的正确性和读写速率。
2021-12-27 21:58:25
6218
原创 基于C8T6核心板的ucOS文件移植
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码
2021-12-04 19:30:00
647
原创 玩转oled屏(基于SPI协议)
玩转OLED屏一、简介(一)SPI协议简介(二)OLED简介二、OLED滚动显示长字符(一)常用OLED滚屏命令1.水平左/右移2.垂直和水平移动(二)取字模(三)OLED屏滑动演示三、OLED显示温湿度总结一、简介(一)SPI协议简介通讯开始/停止标号①处,NSS信号线由高变低,是SPI通讯的起始信号。NSS是每个从机各自独占的信号线,当从机检在自己的NSS线检测到起始信号后,就知道自己被主机选中了,开始准备与主机通讯。在图中⑥的标号处,NSS信号由低变高,是SPI通讯的停止信号.
2021-11-22 15:09:59
14539
1
原创 【平衡小车】之PWM驱动电机
STM32产生PWM波控制电机前言一、L298N驱动模块二、STM32生成PWM波(一)初始化代码(二)PWM代码分析(三)预装载器的功能?三、控制电机速度(一)PWM调速原理总结前言我们直到,使用单片机内部处理的是0,1这样的数字信号,而如果我们仅仅使用0,1来控制小车的速度,这肯定是不现实的,工程师们想到了对高电平与整个周期的比例来输出电压的平均值,这样几个单一的电压就变成了多种不同的模拟输出电压,真是无处不AD/DA转换啊!一、L298N驱动模块接线准备这是我使用到的电机的接线原
2021-11-22 00:00:00
12390
1
原创 AHT20温湿度采集(I2C协议)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码
2021-11-20 18:30:00
8411
3
原创 【平衡小车】前言
一直以来,都想自己DIY一个平衡小车,但是由于种种原因,担心自己无法做好、没有时间去做等等,这件事也就一拖再拖。今天恰好看到B站up主天下行走ㅍ_ㅍ手把手交如何制作平衡小车的视频,于是自己也想跟着动手做一个,也算是做个学习总结吧!视频地址1.器件准备2.新建工程模板3.移植所需文件...
2021-11-15 00:00:00
1554
1
原创 串口之双机通信
USB转TTL实现双机通信一、串口通信电平简介(一)TTL标准电平(二)Rs232标准(三)Rs232标准与TTL标准的区别二、USB转TTL实现双机通信1.引入库2.读入数据总结一、串口通信电平简介(一)TTL标准电平TTL指双极型三极管逻辑电路,市面上很多“USB转TTL”模块,实际上是“USB转TTL电平的串口”模块。这种信号0对应0V,1对应3.3V或者5V,与单片机、SOC的IO电平兼容。我们进行串口通信的时候从单片机直接出来的基本上都是TTL电平。因为单片机通信接口的电平逻辑和PC
2021-11-14 13:25:10
5133
原创 汉字编码之美
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.代码分析2.代码实现3.编译运行总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1
2021-11-13 15:34:10
1748
原创 stm32移植工程文件出错
程序出现莫名其妙的错误?有些时候,在移植代码的时候,总是一个一个模块的测试是否成功,本来这个思想也很好的,这样如果出现问题可以更方便快捷地找出问题来;但是这种分而治之的思想有些时候可能会狠狠坑我们一把!有些时候,单独在一个模块上测试能够成功,但是移植成一个大点的项目可能就会出错;将所有模块初始化完成,然后在while(1)循环里测试各个模块的功能,慢慢搭建框架;但是,这时候发现单独测试的时候能够成功的代码,在这里总会出现莫名其妙的bug,仔细检查函数配置成功了且正确,逻辑明确,反复检查也没发现错误,这个
2021-11-06 00:00:00
532
原创 串口DMA传输模式
DMA传输模式前言一、DMA简介(一)DMA系统框图(二)DMA传输通道(三)DMA传输模式1.外设与存储器之间2.存储器与存储器之间3.小结二、使用DMA配置1.打开USART1及DMA模式2.读入数据总结前言DMA(Direct Memory Access)—直接存储器存取,是单片机的一个外设,它的主要功能是用来搬移数据,但是不需要占用 CPU,即在传输数据的时候, CPU 可以干其他的事情,好像是多线程一样。一、DMA简介(一)DMA系统框图上方的框图,我们可以看到STM32内核.
2021-11-01 15:20:21
6393
原创 stm32之中断模式
stm32之中断模式前言一、外部中断简介二、外部中断(一)配置外部中断1.配置外部中断2.配置中断优先级3.生成并查看代码(二)编写中断函数(三)实例演示三、串口通信中断总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、外部中断简介示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、.
2021-10-31 13:32:53
3657
原创 STM32CubeMX环境搭建及使用
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、CubeMX环境的搭建二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、CubeMX环境的搭建STMCubeMX是一个图形化的配置STM32代码的工具,它将硬件抽象层、中间层、示例代码等封装起来,用户可以通过
2021-10-21 18:20:21
3573
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人