- 博客(37)
- 收藏
- 关注
原创 循环神经网络:揭秘RNN的核心与应用
循环神经网络()是一类专为设计的神经网络,通过保留历史信息,实现对时序依赖关系的建模。:同一套权重参数在每一步重复使用。:隐藏状态传递历史信息,适合处理变长序列。:当前时间步的输入x_t和上一步的隐藏状态h_{t-1}。:当前状态h_t和预测值y_t。:通常用tanh或ReLU约束数值范围。时间步1: x₁ → h₁ → y₁时间步2: x₂ → h₂ → y₂...时间步T: x_T → h_T → y_T隐藏状态h_t像“记忆”一样传递信息。:预测下一个词(如:股票价格、天气数据。
2025-05-19 10:56:14
442
原创 稠密连接网络(DensoNet)
稠密连接网络(DenseNet)是由康奈尔大学的 Gao Huang 等人在 2017 年提出的深度卷积神经网络架构。它在 ResNet 的残差连接思想基础上进一步创新,通过显著提升了特征复用效率,减少了参数量。每一层的输入不仅来自前一层的输出,还来自前面所有层的输出。与ResNet的主要区别在于,DenseNet里模块的输出不是像ResNet那样和模块的输出相加,而是在通道维上连结。这样模块的输出可以直接传入模块后面的层。在这个设计里,模块直接跟模块后面的所有层连接在了一起。
2025-05-12 20:18:16
440
原创 残差网络(ResNet)
残差网络(ResNet)是由微软研究院的何恺明(Kai Ming He)等人于2015年提出的深度卷积神经网络架构,其核心思想是通过。
2025-05-12 20:08:37
399
原创 ModuleNotFoundError 错误
问题的关键是确保 ROS 2 使用与您的虚拟环境一致的 Python 环境。通过设置PYTHONPATH或确保 ROS 2 使用正确的 Python 环境,您应该能够解决错误。如果问题依然存在,检查 ROS 2 的安装和依赖配置是否完整,或者尝试重新编译工作空间。
2025-05-06 16:08:34
487
原创 ros2中,创建虚拟环境后,安装了python模块,运行代码提示:ModuleNotFoundError 解决方案
包并没有安装到虚拟环境中。如果发现路径没有包含虚拟环境路径,可以手动设置。4. 确保你在正确的虚拟环境中。确保它包含虚拟环境的。
2025-01-04 19:21:42
419
原创 Python 中函数内部可以嵌套函数
嵌套函数可以帮助组织代码,不仅提高代码的可读性,还能实现封装。外部函数可以定义一个清晰的接口,内部函数可以使用外部函数的上下文,但对外部不可见。注:在 Python 中,外部函数无法直接调用其内部嵌套函数。内部嵌套函数的作用域是限定在外部函数内部的,其生命周期和可见性仅限于外部函数。在 Python 中,缺省情况下,嵌套函数只读外部函数的变量。如果你希望内部函数不仅读取,而且修改外部函数的变量,你需要使用。这是因为内部函数可以访问其所在作用域(即外部函数)的变量。
2024-12-07 15:36:39
364
原创 Python如何创建一个自己的包,并在其他工程里面调用
如果你在虚拟环境中使用pip来安装你自定义的包,那么这个包将会被安装在虚拟环境中,而不会影响全局环境。这是虚拟环境的主要功能之一,它允许你隔离项目的依赖,从而避免与全局环境中的其他包发生冲突。
2024-12-07 12:34:11
843
原创 控制障碍函数
控制障碍函数是用于描述系统状态在某些约束条件下的行为的函数。通常,一个控制障碍函数 b:Rn→Rb:Rn→R 通过以下形式定义约束:这里,xx 是系统的状态。控制障碍函数的核心思想是通过合适的设计确保系统的运行状态始终保持在约束集内,也就是满足 b(x)≥0b(x)≥0。
2024-12-03 13:19:50
1021
原创 C++之线程剖析
1.基于进程的多任务处理:即程序的并发执行2.基于线程的多任务处理:程序片段的并发执行在C++11标准后,通过<thread>库提供了高效,安全的多线程编程方式。
2024-11-26 16:56:24
526
原创 C++ 信号处理剖析
在 C++ 中,信号处理是指对异步事件的响应,这些事件通常是操作系统或程序内部产生的。例如,用户按下 Ctrl+C,终端会发送一个中断信号(SIGINT),或者程序可能由于非法内存访问而崩溃并发送一个段错误信号(SIGSEGV)。信号处理通常通过signal函数或更高级的sigaction函数来实现。步骤:1.调用头文件2.定义信号处理函数3.注册信号处理函数。
2024-11-26 09:57:00
337
原创 C++中stringstream的用法剖析
是 C++ 标准库中的一个类,属于头文件。它提供了一个用于处理字符串的输入输出流,可以方便地将字符串转换为其他数据类型,或将其他数据类型转换为字符串。以下是的一些常见用法示例。
2024-11-22 16:54:49
385
原创 C++关于异常处理剖析
noexcept是C++11引入的一个非常重要的关键字,它可以帮助我们编写更高效、更可靠的代码。通过合理地使用noexcept,我们可以提高代码的性能,并更好地利用C++11的新特性。声明一个函数为noexcept,意味着你对函数的行为有很强的保证。如果函数确实抛出了异常,程序的行为是未定义的。在使用noexcept时,需要仔细考虑函数的实现细节,确保函数不会在任何情况下抛出异常。
2024-11-22 16:00:45
1869
原创 对同一件事多次占卜是否是对神明的亵渎
许多人对与周易的“初筮告,三再渎”认为,对于同一件事再三的占卜,属于亵渎神明。教浅学者凡遇卦之恍惚,心若未明,多占无碍,倘若卦中已明现矣,不可再渎。事之缓者,迟迟再占,事之急者,歇歇又占。不拘早晚,不必焚香,深更半夜亦可占之。只要单为此事而占,不可又占他事“。又如,同一件事可以由多个占卜师占卜,那么说明同一件事可以占卜多次,那么为什么又会不能多次占卜呢,只要卦象不明,显示是可以多次占卜。又有人说,“妻财子禄一挂能包,寿夭穷通六爻兼尽”。所以野鹤老人说:“必兼而断者,即先贤犹在,执此问之,知亦无从置喙“。
2024-11-21 15:01:44
378
2
原创 C++的虚基类表
虚基类表是C++中对虚继承机制的重要支持结构,它确保在复杂的继承层次中保持基类的唯一性,从而避免数据冗余与内存浪费,并提供了运行时多态性的功能。
2024-11-18 13:20:30
224
原创 C++的继承和python的继承的区别
C++和Python都支持面向对象编程(OOP),其中继承是一个重要的特性。C++和Python的继承机制在基本概念上相似,但在细节和实现上有明显的区别。
2024-11-18 11:07:12
207
原创 等号运算符重载实现链式编程
当一个类重载了等号运算符,使用它的用户可以在赋值时获得与内置类型相同的直观体验,确保代码的一致性和可读性。:可以在赋值过程中封装更复杂的逻辑,如自动管理资源(如动态内存、文件句柄等),提高代码的健壮性。:可以定义自定义类型赋值时的具体行为,例如,深拷贝或浅拷贝,确保对象的内部状态按预期更新。:可以减少不必要的拷贝,避免在对象赋值时出现性能问题,特别是在容器类或大型数据结构中。:通过重载等号运算符,可以使用直观的赋值操作,使代码更易于理解和维护。
2024-11-18 10:55:36
184
原创 基于维诺图的A*搜索算法实现路径规划
A*搜索算法是一种在图形搜索问题中非常有效的路径查找算法,它综合了Dijkstra算法和贪心算法的优点,在保证找到最优路径的同时,提高了搜索效率。
2024-11-16 12:31:49
827
1
原创 如何在ros2中实现wait_for_message()
ros2中没有名为wait_for_message()的API, 所以如果要实现和ros1中wait_for_message()相同的功能需要自己写一个wait_for_message()函数。topic_type:你需要等待的话题数据类型。node:你需要使用这个函数的所在节点。topic:话题名字。
2024-11-15 12:53:55
230
原创 从launch文件里面加载.yaml参数配置文件
1.获取.yaml文件路径:config = os.path.join(2.将其加载到节点:node=Node(
2024-11-14 10:59:09
237
原创 ROS 2 中的动态配置参数
在 ROS 2 中实现类似的动态参数调整功能,使用参数服务器是一种常见的做法。声明参数:使用来声明节点的参数。处理参数更新:通过注册回调函数,处理参数的更新。更新参数:通过参数客户端(例如rclpy中的)或命令行工具(如)来动态修改参数。这种方式非常灵活,可以让您在节点运行时动态地调整控制参数、阈值等,而无需重新启动节点,非常适合机器人应用中的实时调节。
2024-11-13 16:03:34
931
原创 常用linux命令集合
意义不同:单个.表示当前目录,两个..表示上一级目录。:相当于WINDOW中的软件的快捷方式。:用于取得上下历史命令。查询当前所处目录位置。
2024-10-18 20:06:05
151
原创 关于ros1/ros2中source命令的一些理解
为了确保每次打开新的终端时这些设置依然生效,通常会将source /opt/ros/noetic/setup.bash命令添加到用户的~/.bashrc文件中。这样,每次启动新的终端时,相关的环境变量和路径都会被自动设置好,避免了每次手动执行source命令的麻烦。:对于自定义的ROS工作空间,通过source相应的setup.bash脚本,可以激活工作空间,使其中的环境变量生效,这样编译和运行工作空间中的代码时就不会出现问题。:该脚本会设置一些关键的环境变量,如。等命令能够正确找到所需的包。
2024-10-17 19:08:10
456
转载 简洁安装ros/ros2
第六步选择ros版本 :根据自己的ubuntu版本选择合适的ros或ros2,选好后输入数字即可,假设选一。第八步,等待安装,如果弹出以下东西,输入yes,按下回车。(最后可能需要你输入系统密码)第十一步:然后执行rosdepc update。第七步,选择版本,建议选1。第九步:初始化rosdep。第十步:输入3,回车。
2024-10-17 11:08:48
405
原创 如何用Dockerfile创建一个镜像
Dockerfile 是一个简单的文本文件,包含了一个命令集合,Docker 可以利用这个命令集合自动构建出一个 Docker 镜像。ARG:指定一个变量,在运行时可以通过--build-arg传递。ONBUILD:配置当基于当前镜像构建新的镜像时执行的操作。ENTRYPOINT:配置容器启动后运行的命令。USER:指定运行容器时的用户名或UID。EXPOSE:声明运行时容器监听的端口。CMD:容器启动时默认执行的命令。COPY:复制文件到容器中。ADD:添加文件到容器中。FROM:指定基础镜像。
2024-10-16 16:34:33
166
2
原创 蓝桥杯嵌入式第十三届省赛题目及详细编程解答
这是第一次发关于嵌入式的题目解答,后续会将其他届的题目和解答一并发出,详见我的博客,总体来说嵌入式的题目不会特别难,现在官方提供了CUBEMX,用这个软件生成一些底层代码,相当好用,但是目前一个明显缺点是用一次软件生成代码后重新编译会比较慢,可能会用两分钟左右,所以为了编译速度快一点,我们可以将代码合理排列在main.c里面,这样不用怕编译后自己的.c和.h文件丢失(当然也可以不用这样,让代码更直观)。废话不多说直接给代码。
2023-01-18 10:27:19
2640
转载 【利用51单片机的定时器功能产生PWM信号来实现流水呼吸灯。(蓝桥杯常考PWM)】
【利用51单片机的定时器功能产生PWM信号来实现流水呼吸灯。(蓝桥杯常考PWM)】
2022-07-17 09:50:36
3550
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人