ros2 功能包(pkg)一个功能包可以被认为是ROS2代码的容器。如果希望能够管理代码或与他人共享代码,那么需要将其组织在一个包中。通过包,可以发布ROS2工作,并允许其他人轻松地构建和使用它。 功能包 和 程序 的关系一个功能包里可以包含多个程序。这些程序分成不同职责,共同构成一个功能包的完整功能。通过cmake可控制多个可执行文件: 12345# ...add_executable(program1 2025-06-11
vscode IntelliSense找不到包的解决方法 问题背景在用vscode写ros2项目时,势必会有引用rclcpp库这一步。一般只需在CMakeLists.txt中写好引用rclcpp的相关代码即可顺利编译: 12345...find_package(rclcpp REQUIRED)target_include_directories(main PUBLIC ${rclcpp_INCLUDE_DIRS})target_lin 2025-06-10
rm校赛2025 赛规回顾主办方提供一个usb摄像头、一张视觉识别标签。选手需要将摄像头连接电脑,捕捉视觉标签并加以识别。识别结果决定了同队的机器人往哪边的(左/右)核心区发送弹丸。 视觉标签视觉识别标签主要有以下几个部分构成:定位方块、指示方块、指向三角形。其中指向三角形与指示方块颜色一致代码这一标签指示的方向是正确的,反之为错误的。 视觉标识尺寸为 150*150,材质为 A4 纸彩印,视觉识别标签的 2025-05-28
gmp GMP大数库(https://gmplib.org/) 大整数(mpz_t)储存方式使用“字”(limb)数组来模拟大数。GMP 不使用字符串或高层封装来表示大数,而是模拟 CPU 的“低位字”运算,直接操作无符号整型数组,效率极高。 1234567typedef struct { int _mp_alloc; // 分配了多少个 limb(内存块) int _mp_size 2025-05-27
opencv 通过进行像素算术运算改变图像亮度123456789101112using namespace cv;void main(){ Mat src = imread("..."); Mat dst; add(src, Scalar(50,50,50), dst); // 相当于对每个像素点的bgr各加50 // subtract(src, Scalar( 2025-05-14
虚拟机配置git代理 虚拟机配置代理git把玩我的虚拟机时发现竟然无法用git clone命令 fatal: unable to access ‘https://github.com/P-Chao/QRCode-CV4.git/‘: Failed to connect to github.com port 443 after 10 ms: Connection refused 于是我用了以下步骤解决: 宿主机是w 2025-04-23
代码随想录 哈希表定义:一种利用特殊值直接访问数据的数据结构。 ★ 使用场景:判断某个值是否出现在集合中/ 出现过。 拿空间换时间。时间复杂度:普通暴力寻找:O(n),哈希法:O(1) 哈希函数? 哈希碰撞? hashcode? 字符串 std::reverse()的范围是左开右闭 [first, last),想要翻转第8个字符到第12个字符的话,应写 12std:reverse(str.begin 2025-03-21
apk签名校验 apk签名通过对 Apk 进行签名,开发者可以证明对 Apk 的所有权和控制权,可用于安装和更新其应用。而在 Android 设备上的安装 Apk ,如果是一个没有被签名的 Apk,则会被拒绝安装。在安装 Apk 的时候,软件包管理器也会验证 Apk 是否已经被正确签名,并且通过签名证书和数据摘要验证是否合法没有被篡改。只有确认安全无篡改的情况下,才允许安装在设备上。 简单来说,APK 的签名主要 2025-03-05
android-re Android逆向apk文件结构 文件 解释 assets目录 存放apk的静态资源文件,如视频、音频、图片等。 lib/目录 arm64-v8a只用于64位的Android设备;armeabi-v7a基本通用所有Android设备;x86常见用于安卓模拟器,其目录下的.so文件是c/c++编译的动态链接库。 META-INF目录 保存应用的签名信息,相当于a 2025-02-11