- 博客(253)
- 资源 (1)
- 收藏
- 关注
原创 树莓派5,如何用shell命令通断USB电源
以下是树莓派上uhubctl的用法,如果没权限就添加 sudo。树莓派5其实4个ports是绑定的,要一起通断电。apt是只有2.5的,如果需要的话要自己编译了。但是树莓派5需要最新的2.6。
2025-04-29 10:45:40
206
原创 注意力机制中的QKV形象解释
注意力机制(Attention Mechanism)是深度学习中的一种技术,用于让模型能够聚焦于输入数据中最重要的部分,从而提高模型的性能。它在自然语言处理(NLP)、计算机视觉、语音识别等领域得到了广泛应用。
2025-02-18 16:41:34
408
原创 ultralytics yolo框架的推理过程代码
YOLOv8确实取消了置信度,因此每个像素点需要预测的参数总数为类别数加上边界框的参数。具体来说:假如有:9个类别,需要9个参数来表示每个目标属于每个类别的概率。:4个参数来表示目标的边界框(x, y, w, h)。因此,每个像素点需要预测的参数总数为9(类别)+ 4(位置)= 13个参数。假设输入图像的大小为640x640像素,那么输出的三个特征图的大小分别为80x80、40x40和20x20。因此,这些输出特征图包含了模型对输入图像中目标的检测结果,包括目标的类别和位置等信息.
2025-02-14 14:22:07
733
原创 s1:Simple tets-time scaling略微解析
它展示了如何仅用1,000个样本和预算强制(budget forcing)技术,就能让模型在推理任务上达到与大型闭源模型相当的性能。的主要作用是通过增加推理的次数,让模型有更多机会进行深入思考,生成更完整、更准确的答案。这种机制并不是直接延长每次推理的时间,而是通过多次调用模型来实现的。通过这些步骤和核心思想,论文证明了小模型在高效微调下可以匹敌顶级闭源模型,为轻量化高精度推理模型提供了新的范式。通过合理设置这些参数,可以优化模型的生成行为,使其更适合特定的任务需求。的设置会影响模型的行为。
2025-02-07 11:17:03
1697
1
原创 我有一个开发机器,需要更新后能同步到其他的树莓派上,怎么做比较便捷?
基于公钥的哈希:由于设备ID是基于设备的公钥证书生成的,而公钥证书是随机生成的,因此每个设备的公钥几乎不可能相同。在Web界面上,点击右上角的设备名称,找到“Show ID”按钮,获取当前设备的ID。SHA-256的特性:SHA-256哈希算法具有极低的冲突概率(即两个不同的输入产生相同哈希值的概率极低),这进一步确保了设备ID的唯一性。Base32编码和校验码:Base32编码和校验码的使用不仅便于设备ID的读取和传输,还能在一定程度上防止错误输入导致的设备ID冲突。证书中包含公钥以及其他一些基本信息。
2025-02-06 09:59:46
764
原创 canny边缘检测
Canny边缘检测算法通过一系列步骤(高斯滤波、梯度计算、非极大值抑制和双阈值检测)实现鲁棒的边缘检测。它被认为是边缘检测的“黄金标准”,因为它在检测边缘的同时能够很好地抑制噪声,并且能够精确地定位边缘。参数选择:Canny算法需要选择高阈值和低阈值,这些参数的选择对最终的边缘检测结果有很大影响。边缘连接:最后,通过检查弱边缘像素的邻域,如果弱边缘像素与强边缘像素相连,则将其保留为边缘的一部分。最小响应:Canny算法通过非极大值抑制和双阈值检测,确保每个边缘只被检测一次,从而减少了边缘的重复检测。
2025-02-06 09:06:31
1126
2
原创 module_init宏是什么?
这个宏的作用是将一个函数注册为模块的初始化函数,当内核加载该模块时,该初始化函数将被调用,从而完成模块的初始化工作。模块的初始化函数中可以包含各种初始化代码,例如分配内存、注册设备等,通过。文件,是一种特殊的文件格式,不是 ELF 也不是 lib 文件,但它可以理解为是一个特殊的 lib 文件,它是由内核解析并加载的,通常是由。这个宏在模块的目标代码中添加了一个特殊的部分,说明模块的初始化函数在哪里。在编写设备驱动程序时,使用这个宏可以注册一个初始化函数,当模块被加载的时候,内核负责执行这个初始化函数。
2025-02-04 22:34:54
243
原创 linux内核源代码中__init的作用?
是一个特殊的宏,用于标记在内核初始化阶段使用的变量或函数。这个宏的作用是告诉内核编译器和链接器,被标记的变量或函数只在内核的初始化阶段使用,在系统启动完成后就不再需要了。通过标记初始化函数和变量,内核可以在系统启动后回收这些资源,从而提高内存利用率和系统性能。标记的变量或函数在内核初始化完成后可以被回收,这有助于减少内核的内存占用。宏进行编译优化,例如,可以删除未使用的初始化代码,以减小内核的大小。• 标记初始化函数:在内核模块或内核初始化代码中,可以使用。等宏来标记初始化函数,这些宏内部会使用。
2025-02-04 22:33:24
312
原创 内核初始化中的调用顺序
Linux 内核初始化过程中,子系统初始化调用的顺序是经过精心设计的,以确保内核的各个部分能够按正确的依赖关系进行初始化。实现,该机制允许内核在启动时按顺序调用不同的初始化函数。每个宏对应内核初始化的一个特定阶段,确保了初始化函数按照正确的顺序执行。在内核初始化过程中,会使用不同的宏来指定初始化函数的执行顺序,例如。用于子系统的初始化,它在核心初始化之后,在文件系统初始化之前。辅助内核子系统设置:内核设置辅助子系统,如网络和文件系统等。设备发现:内核发现系统中的设备,并初始化设备驱动程序。
2025-02-04 20:09:28
455
原创 三次握手过程中的半连接队列和全连接队列
分配全连接队列和半连接队列资源分配并初始化全连接队列和半连接队列,确保有足够的资源来管理连接请求。客户端发起 SYN 请求:发送SYN包。服务器接收并处理 SYN:创建并将其加入半连接队列,发送SYN-ACK。客户端发送 ACK:确认连接,发送ACK包。服务器处理 ACK:查找,创建sock对象,将连接移到全连接队列。连接建立完成:双方进入状态,可以进行数据传输。通过这种方式,TCP 协议确保了可靠的连接建立过程,并且有效地管理了连接请求,防止资源浪费和潜在的安全威胁(如 SYN Flood 攻击)。
2025-01-26 13:55:35
637
原创 CPU中断机制
中断:是一种异步事件,它会打断当前正在执行的程序或指令流,使CPU转而去处理特定的中断服务程序(Interrupt Service Routine, ISR),处理完毕后再返回原来的任务。硬中断:由外部硬件设备触发的中断,通常通过专用的硬件线路(如IRQ线)发送到CPU。特点异步性:可以在任何时间点发生,不受当前CPU执行的指令影响。随机性和突发性:例如键盘按键、网络数据包到达、磁盘读写完成等。软中断:由软件或程序通过特定指令(如int指令)发出的中断信号,通常用于请求操作系统服务或处理异常情况。
2025-01-23 17:22:34
1571
原创 64位系统哪些地址是给内核用的呢?
Linux:从到。Windows:从到。macOS:从到。这些地址范围用于存储内核代码、数据、设备映射、页面表、内核堆栈和动态加载模块等。通过这种划分,操作系统可以在保护内核的同时,为用户提供一个独立且安全的用户空间环境。此外,地址空间布局随机化(ASLR)进一步增强了系统的安全性。在64位系统中,进程空间被划分为用户空间和内核空间,用户空间进一步细分为多个区域,包括代码段、数据段、堆、栈、映射区、环境变量和命令行参数等。栈从高地址向低地址增长,而堆从低地址向高地址增长。
2025-01-23 17:14:58
1377
原创 esp32-cam无线图传
arduino平台:添加链接描述添加链接描述ESP32-CAM制作监控器教程(platformio版) - 故知学IT - 博客园注意几个按钮:
2025-01-23 10:38:59
190
原创 RS-485和modubus
RS-485:告诉你如何连接设备并传输信号。Modbus:告诉你如何在传输信号的基础上进行有效的数据交换。所以,RS-485 是物理传输标准,Modbus 是数据交换协议。它们可以一起使用,RS-485 提供物理连接,Modbus 协议则定义了设备间数据如何传输和解释。
2025-01-23 10:12:59
965
原创 pyserial和pymodbus
pyserial:提供与串行设备(如 RS-485 转 USB)进行通讯的基础支持,适合做低层的串行通讯。pymodbus:提供实现 Modbus 协议的支持,适用于与工业设备和传感器之间的通讯,支持 RTU 和 TCP 两种模式。你可以根据需求结合这两个库,首先用 pyserial 打开串行端口,然后用 pymodbus 实现与 Modbus 设备的高层通讯。
2025-01-23 10:08:20
617
原创 Python 实现的多路复用
内核使用多种高效的机制来监视文件描述符的状态变化,以避免不必要的 CPU 使用。内核可以优化事件处理机制,例如减少事件处理的开销,使用更高效的事件处理方式,从而加快文件描述符的状态变化和处理速度。应用程序需要处理该错误。内核可以使用并发处理技术,例如多线程或多进程,同时处理多个文件描述符的状态变化,提高处理效率。使用更高效的数据结构:内核可以使用更高效的数据结构来管理文件描述符的状态,例如使用哈希表或。这些状态可以用于描述文件描述符在不同时刻的状态,以便应用程序能够根据状态进行相应的处理。
2025-01-22 15:24:38
704
原创 Python的进程和线程
也就是说,如果我是多核的,一个进程是可以同时允许多个线程一起执行的.别的园区[进程],一般不能和自己的园区共享人员资源,除非…进程**[园区]**内公共资源对于进程来说,可以共享.进程是一家almost密不透风的公司,缅甸KK园区。那线程之间如何协同共同的资源?5.使用事件的线程同步。6.使用屏障的线程同步。7.使用队列的线程同步。但是python呢?
2025-01-22 15:01:58
1226
原创 同步 异步 阻塞 非阻塞 是什么
同步是实时处理,比如打电话,通信双方需要不断交互,才能传递信息。同步操作是在发出一个调用时,如果没有得到结果之前,该调用就不返回。一旦调用返回,就得到返回值。因此,同步操作是由调用者主动等待这个调用的结果。异步操作在发出之后会直接返回,没有返回结果。非阻塞操作则是指在该调用不能立刻得到结果之前,不会阻塞当前线程,可以继续处理后续的操作。阻塞操作是指调用结果返回之前,当前线程会被挂起,只有得到结果之后才会返回。调用方是否等返回,等返回时候是什么状态?阻塞和非阻塞关注的是程序在等待调用结果时的状态。
2025-01-22 15:01:26
132
原创 树莓派串口AMA0
sudo nano /boot/firmware/config.txt文件。如果是树莓派5,只需要打开serial port配置。然后再ls /dev |grep ttyA*,就行了。如果是树莓派4,还需要禁用蓝牙。,本文将使用用AMA0串口。
2025-01-22 14:21:07
281
原创 树莓派 +pi M.2 hat+ SSD固态
https://shumeipai.nxez.com/2024/06/06/installation-of-m2-hat-plus.html
2025-01-22 14:10:48
78
原创 2024-简单点-如何给类对象排序
了解相关机制的细节)。为避免意外,PEP8建议实现所有的六个比较方法。total_ordering()不过,请注意
2024-06-04 10:07:39
254
1
原创 2024-简单点-opencv图像处理实时可视化桌面程序
图片预处理的时候想用常用的图像处理函数处理看看效果,但是每次都要写可视化程序,很麻烦。于是自己写了一个可视化程序,可以调整滑块然后实时可视化加功能也很好加,只要写个处理函数就可以。
2024-05-30 16:38:51
396
原创 2024-简单点-ultralytics库解析-data模块
在这个特定的例子中,__init__.py 文件是 ultralytics 库(假设是 ultralytics 包)的一部分,它导出了 base.py、build.py 和 dataset.py 中的一些关键类和函数。这种组织方式提高了代码的可读性和可维护性,因为用户只需要记住在包级别上可用的接口,而不是每个单独模块的细节。这个文件的目的是告诉 Python 解释器,目录内的内容是一个可导入的模块集合,也就是一个包。文件在 Python 中扮演着重要的角色,它是 Python 包结构的一部分。
2024-05-11 17:34:49
2055
原创 2024-简单点-优雅地用pathlib处理路径
在这个例子中,如果 base_path 是当前的工作目录,而 other_path 是一个要转换为相对路径的文件,relative_to() 将计算出从 base_path 到 other_path 的相对路径。请注意,如果 other_path 不是 base_path 的子路径,relative_to() 会抛出一个 ValueError。在 pathlib 中,你可以通过 relative_to() 方法来获取一个路径相对于另一个路径的相对路径。
2024-05-11 10:31:47
240
原创 2024-简单点-torch积累
是 PyTorch 中的一个重要类,它提供了一个可迭代的数据加载器,可以方便地批量加载数据,并自动进行多进程数据加载、批处理、打乱数据(shuffling)等操作。在训练循环中,你需要进行前向传播以计算预测值和损失,然后执行反向传播以计算梯度,并使用优化器的。是 PyTorch 中的一个功能模块,它包含了一系列用于定义神经网络操作的函数。是 PyTorch 中的一个功能模块,它包含了一系列用于定义神经网络操作的函数。是 PyTorch 中用于构建神经网络模型的两个重要组件,它们各自具有不同的特点和用途。
2024-04-30 14:56:18
758
原创 2024-简单点-假设我要让一个py功能文件变成服务,在网络启动后进行,并且开机自动启动。
这个服务单元文件定义了一个服务,该服务将启动一个 Python 脚本(app.py),该脚本可能是一个 Web 服务器或其他长时间运行的服务。它依赖于网络,并且在系统进入多用户模式时自动启动。如果服务意外退出,它将自动重启。这里假设你的服务单元文件名为,并且它位于或其他systemd搜索的路径中。
2024-04-17 16:12:10
673
1
原创 2024-简单点-python单例模式-__call__和__new__-线程安全版本
先看一个版本,这版本虽然能控制成一个单实例,但是实例的值却可以变。。
2024-04-07 13:46:11
462
佛罗里达大学,cs必须课数据结构之B+树
2020-08-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人