- 博客(150)
- 收藏
- 关注
原创 RTK定位
GNSS定位误差一般有几米,不适合对定位有高精度要求的场景。RTK基站端->数传地面端->数传移动端->RTK移动端。双天线RTK可以支持定向功能,两根天线距离越远效果越好。通过差分计算出基准站和移动站的相对位置。4G基站(4G网络)->RTK移动端。基准站有明确位置,纠偏数据。SIM卡获取基准RTK数据。单天线RTK只支持定位功能。常规RTK 数据传输框架。网络RTK 数据传输框架。
2025-01-21 17:49:05
254
原创 入门嵌入式(九)——舵机 & 电机
伺服操作系统伺服:servo,来自于拉丁语奴隶Servus一词,意味着依照我们下达的指令进行动作。对 电位器输出电压的角度 和 PWM占空比的角度 进行比较,来控制旋转。很像是我们告诉舵机转多少度,他就转多少度。
2025-01-09 10:21:18
216
原创 入门嵌入式(七)——PWM
脉冲宽度调制PWM(Pulse-Width Modulation)一组方波周期 1ms频率 = 1s / 周期占空比 = 高电平/周期数字信号:0/1高低电平 串口 IIC PWM都属于数字信号模拟信号:电压值, 会受到电磁影响ADC 模数转换 用于读取模拟信号的电压值DAC 数模转换 输出一个模拟信号PWM 使用数字信号尽可能模拟模拟信号的技术通过调节占空比,可以模拟不同电压值。
2025-01-08 16:45:37
143
原创 C++就业方向
桌面应用开发工业软件开发传统嵌入式行业AI嵌入式行业自动驾驶的端侧嵌入式驱动Linux应用开发C++后台开发游戏后台开发数字图像处理音视频开发逆向与安全
2025-01-08 10:36:50
164
原创 嵌入式入门(五)——时钟树
逻辑门内部涉及MOS管充放电过程,会产生电平延迟,导致信号混乱为了解决这一情况,需要添加边沿触发器,根据控制端接收时钟信号来赋值时钟信号由时钟源产生,由时钟树传播串口:波特率定时器:计时IIC/SPI:时钟线ADC:采样间隔以上都离不开时钟统一信号处理时间。
2025-01-08 10:34:35
133
原创 入门嵌入式(四)——IIC&OLED
一条SDA Serial Data 半双工通信一条SCL Serial Clock主从模式支持多设备通信 所以称为总线协议异步模式 基于双方各自的时钟 需要保证时钟系统精确同步通信 由主机通过时钟线发送时钟信号时钟低电平时,主机设置信号 时钟高电平时,从机读取信号一应一答。
2025-01-07 17:32:59
173
原创 入门嵌入式(一)—— GPIO八大模式
xxx寄存器是程序和硬件间的桥梁控制单片就实际上就是控制寄存器HAL库,提供了一种更方便的控制寄存器的方式。
2024-12-26 17:32:02
295
原创 深入浅出工厂模式
抽象模板工厂类、具体模板工厂类、抽象产品A类、产品A类、抽象产品B类、产品B类。同工厂方法模式一样,新增产品时,都需要增加一个对应的产品的具体工厂类。抽象工厂类、工厂类、抽象产品A类、产品A类、抽象产品B类、产品B类。新增一个产品就需要新增一个工厂,代码量很大,写起来麻烦。新增产品只需要新增一个工厂,不需要修改抽象工厂的代码。产品注册模板接口类、工厂模板类、产品注册模板类。如果新增产品,要修改工厂类中的判断代码。抽象工厂类、工厂类、抽象产品类、产品类。工厂类、抽象产品类、产品类。将注册产品和生产产品分离。
2024-12-13 10:29:15
142
原创 Linux下执行Shell脚本出现$‘\r‘: command not found解决方法
出现这样的错误,是因为Shell脚本在Windows系统编写时,每行结尾是\r\n,而在Linux系统中行每行结尾是\n,所以在Linux系统中运行脚本时,会认为\r是一个字符,导致运行错误。
2024-12-13 10:28:33
382
原创 C++ fstream文件流
从file中读取了size个字节的数据并存储到了 buffer 中。用于获取指针在输入流中的位置。用于设置指针在输入流中的位置。
2024-12-13 10:27:01
180
原创 理解协程切换
程序执行的背景环境,包含了在特定时刻程序所需的所有信息。包括变量的值,函数的调用情况,执行的位置等。就像一场戏剧中,演员需要了解剧本,舞台布景和其他演员的动作一样,程序也需要通过上下文理解自身是什么角色(变量的值),自身在何处(执行的位置),在做什么(函数的调用情况)。
2024-12-13 10:26:29
211
原创 linux CentOS/OpenEuler MobaXterm 通过X11 Forwarding 在本地开启图形可视化窗口
修改参数X11Forwarding yes和X11UseLocalhost no。x11 forwoading 从×变成√, 就是成功了。我执行的时候卡住了,感觉不执行这个也可以。本地出现这个就是可视化成功了。
2024-12-13 10:23:38
400
原创 音视频基础-从采集到播放的常见概念
视频暂留:人眼在某个视像消失后,仍可使该物像在视网膜滞留0.1-0.4秒左右。电影胶片以每秒24格画面匀速转动,
2024-12-13 10:07:31
816
原创 音视频基础-I帧、P帧、B帧、PTS、DTS
如果在网络状况不好的情况下,终端的接收远端或者发送给远程的画面就会有丢包而出现图像花屏、图像卡顿的现象,在这种情况下如果没有I帧机制来让远端重新发一幅新的完整的图像到本地(或者本地重新发一幅新的完整的图像给远端),终端的输出图像的花屏、卡顿现象会越来越严重,从而造成会议无法正常进行。在实时互动直播系统中,很少使用B帧。在没有B帧的情况下,存放帧的顺序和显示帧的顺序就是一样的,PTS和DTS的值也是一样的。I 帧是内部编码帧(也称为关键帧),P帧是前向预测帧(前向参考帧),B 帧是双向内插帧(双向参考帧)。
2024-12-13 10:06:35
337
原创 H264码流介绍 及 FFmpeg解封装得到H264码流方法
H.264从1999年开始,到2003年形成草案,最后在2007年定稿有待核实。在ITU的标准⾥称为H.264,在MPEG的标准⾥是MPEG-4的⼀个组成部分–MPEG-4 Part 10,⼜叫Advanced Video Codec,因此常常称为MPEG-4 AVC或直接叫AVC。H.264原始码流(裸流)由⼀个接⼀个NALU组成.SPS:序列参数集,包含解码配置,如profile level分辨率和帧率等。编码后的第一帧。PPS:图像参数集,包含有关熵编码模式、分片组、运动预测和去块滤波器等信息。
2024-12-13 10:06:05
1155
原创 音视频基础 -(编码、封装、推拉流)格式/协议 与 ffmpeg处理流程
一次完整的转码过程一般是按照 解封装 -> 解码 -> 编码 -> 封装 这样的流水线运行。
2024-12-13 10:05:33
1372
原创 Fine Tuning——Prompt-Learning && Delta Tuning
预训练大模型只能提供较好的初始化,面对纷繁复杂的NLP任务场景,需要进一步的微调训练。
2024-12-12 14:47:42
334
原创 NLP大模型学习总结
搜索引擎、知识图谱、机器阅读、人类助手、机器翻译、情感分类和意见挖掘、计算社会科学。Chinese-Llama-2-7b-ggml-q4 3.8G模型大小。发展:GPT2->Gopher/Chinchilla->LLaMA。数据并行、模型并行、流水线并行、混合精度训练等。Encoder-Decoder T5派。Decoder-Only GPT派。知识蒸馏、模型剪支、模型量化。信息检索、机器问答、文本生成。自回归训练、搜索空间小。参数 130G模型大小。生物医学、法律、脑科学。让计算机理解人所说的。
2024-12-12 14:47:00
1124
原创 Transformer学习记录
注意力机制其实就是提供了一种编码方式,让生成的词向量具有更丰富的结构信息。词向量(嵌入层)语义信息 + 位置信息 + Self-Attention的句法、语义信息 = 输出更优秀的词向量Transformer是应用了注意力机制的一种网络结构,具体结构为Encoder-Decoder,属于序列到序列模型。
2024-12-12 14:45:03
865
原创 大模型实践——初识huggingface transformers
ChatGLM-6B 在CPU运行,三分钟才输出两个字“你好”,完全没法玩起来。LLaMA2-GGML 中文模型,效果并不理想,胡言乱语。想运行Llama的ggml模型,必须下载。
2024-12-12 14:44:15
222
原创 ROS2之QoS 服务质量管理
对于每个不是持续时间的策略,还有"系统默认"选项,它使用底层中间件的默认设置。对于每个持续时间的策略,还存在一个"默认"选项,表示持续时间未指定,底层中间件通常会将其解释为一个无限长的持续时间。在ROS 1中,具有相同消息类型和相同主题的任何发布者和订阅者都将建立连接。在使用ROS 2时,需要注意可能存在不兼容的请求和提供的QoS配置文件的情况。
2024-12-12 14:42:02
346
原创 C++反射机制与动态加载及ROS pluginlib 插件加载原理
动态加载是指在程序运行时动态地加载外部的代码或库,并且可以在程序运行时根据需要决定加载哪些代码或库。动态加载可以让程序具有更大的灵活性,可以根据需要加载不同的模块或插件,而不需要在编译时就确定程序需要的所有依赖。反射机制是指在运行时获取对象的信息,包括类的名称、成员变量、成员函数等,并可以动态调用这些成员函数或操作这些成员变量。反射机制可以与动态加载结合使用,实现在运行时动态加载并使用类、函数、变量等的信息。例如,可以使用反射机制获取动态链接库中的类和函数信息,并在程序运行时动态加载这些类和函数。
2024-12-12 14:41:06
149
原创 概率、似然、最小二乘
在一定条件下,某件事发生的可能性。概率越大,这件事越有可能发生。举例:已知小车运动模型(模型)和当前速度分布(条件),求运动到B点的可能性多大(事件)。某件事已经发生,在不同条件下的可能性。似然越大,这件事越可能在该条件下发生。举例:已知小车运动模型(模型)和运动到了B点(事件),求小车速度分布(条件)最可能是多少?从模型中抽取该n组样本观测值,最合理的参数估计量是让这个事件发生概率最大。从概率角度出发,估计的是概率分布的参数,最大化似然概率函数。
2024-12-12 14:38:16
794
1
原创 Mock打桩介绍
mock 工具的作用是指定函数的行为(模拟函数的行为)。可以对入参进行校验,对出参进行设定,还可 以指定函数的返回值。几个相关概念:(1)mock 规范:每个 MOCKER(function)开始,跟一系列的.stubs、.with、.will 等的内容的整体,称 为一个 mock 规范。(2)核心关键字:指 stubs/defaults/expects/before/with/after/will/then/id 等这些直接跟在点后面 的关键字。
2024-12-12 14:37:50
740
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人