具身智能相关常用工具代码

具身智能相关常用工具代码

1. 在两个 windows 主机之间传递数据

bash 复制代码
$ scp {source_path} {target_username}@{target_ip}:{target_path}

然后输入 target_user 的主机密码。

实例:

bash 复制代码
$ scp "C:/Users/gylbjtl0020/Downloads/remote_data.txt" gylzjtl10262@10.111.34.104:"C:/Users/gylzjtl10262/Download"

2. python 计时器 -- 统计代码运行的时长

python 复制代码
import time
start_time = time.time()
# do something
end_time = time.time()
duration = end_time - start_time

print(f"Duration: {duration:.6f} s")

3. 使用 md5sum 获取文件的哈希值 -- 确保改动后生成物一致

bash 复制代码
$ md5sum data.pkl

4. 打开 .pkl 文件的代码片段

python 复制代码
import pickle

with open(file_path) as f:
	data = pickle.load(f)

5. 利用写入磁盘的方式,在线程(异常)关闭之前调试代码

python 复制代码
import datatime 

now = datetime.datetime.now()

with open('time.log', 'w', encoding='utf-8') as f:
	f.write(str(now))

6. cv2 中的常用方法

6.1. 创建显示用的窗口 -- 具名

python 复制代码
cv2.namedWindow(window_name, cv2.WINDOW_NORMAL)
# 作用:例如创建一个名为"image_6000"的窗口
# WINDOW_NORMAL:窗口可以调整大小
# 如果不创建窗口,imshow可能会自动创建,但控制权差

6.2. 水平方向上拼接图像

python 复制代码
result = cv2.hconcat([image1, image2])
# 作用:将image1和image2水平拼接到一起
# 例如:两个640×480的图像 → 一个1280×480的图像
# 例如:彩色图 | 深度图

6.3. 拟显示图像

python 复制代码
cv2.imshow(window_name, image_data)
# 这里根据窗口的名称将数据渲染到指定的窗口上去
# 作用:在指定窗口显示图像
# 不会立即显示!需要配合waitKey()

6.4. 显示/更新图像

python 复制代码
cv2.waitKey(1)
# 作用:
# 1. 等待1毫秒(非阻塞)
# 2. 刷新所有imshow的显示
# 3. 检查是否有按键按下(返回按键ASCII码)
# 参数0:一直等待直到按键
# 参数1:等待1毫秒后继续

7. 使用 glob 查找文件

glob 可以用通配符查找文件和文件夹,就像在命令行里用 * ? 一样。glob 可以用通配符查找文件和文件夹,就像在命令行里用 *? 一样。简单说:快速找到所有符合规则的文件

python 复制代码
import glob

# 1. 找所有txt文件
txt_files = glob.glob("*.txt")
# 可能返回:['file1.txt', 'file2.txt', 'data.txt']

# 2. 找特定开头的文件
robot_files = glob.glob("robot_*.py")
# 可能返回:['robot_arm.py', 'robot_gripper.py', 'robot_vision.py']

# 3. 在子文件夹里找
all_py_files = glob.glob("**/*.py", recursive=True)
# 找所有文件夹里的.py文件

8. 连续打印多次以示强调

python 复制代码
[print("in elite robot") for _ in range(4)]

9. 角度和弧度互转

python 复制代码
import math

cur_angle = 180
rad = math.radians(cur_angle)
deg = math.degrees(rad)

10. 列表和 np.array 互转

python 复制代码
position = []
robot_joints = np.array(position)
origin_lit = robot_joints.tolist()

11. 手输执行参数并检查

python 复制代码
# test.py
import tyro
from dataclasses import dataclass

@dataclass
class Args:
    # hostname: str = "127.0.0.1" # 这样写给了一个缺省值
    hostname: str
    
if __name__ == "__main__":
    rst = (tyro.cli(Args))
    print(rst)
  • 命令行输入:python test.py 会报错
  • 命令行输入:python test.py --hostname "127.0.0.1" 会正常打印

12. Realsense 相机参数检测及解释

见:Realsense 相机测试及说明

相关推荐
飞睿科技1 分钟前
乐鑫ESP32-S3-BOX-3,面向AIoT与边缘智能的新一代开发套件
人工智能·嵌入式硬件·esp32·智能家居·乐鑫科技
Rabbit_QL3 分钟前
【数学基础】机器学习中的抽样:你的数据是样本,不是世界
人工智能·机器学习
金融RPA机器人丨实在智能9 分钟前
深度拆解 RPA 机器人:定义、应用、价值与未来方向
人工智能·rpa·实在rpa
青主创享阁10 分钟前
技术破局农业利润困局:玄晶引擎AI数字化解决方案的架构设计与落地实践
大数据·人工智能
datamonday13 分钟前
[EAI-037] π0.6* 基于RECAP方法与优势调节的自进化VLA机器人模型
人工智能·深度学习·机器人·具身智能·vla
Toky丶18 分钟前
【文献阅读】Pt2-Llm: Post-Training Ternarization For Large Language Models
人工智能·语言模型·自然语言处理
梵得儿SHI18 分钟前
(第七篇)Spring AI 核心技术攻坚:国内模型深度集成与国产化 AI 应用实战指南
java·人工智能·spring·springai框架·国产化it生态·主流大模型的集成方案·麒麟系统部署调优
longze_719 分钟前
生成式UI与未来AI交互变革
人工智能·python·ai·ai编程·cursor·蓝湖
weixin_4380774922 分钟前
CS336 Assignment 4 (data): Filtering Language Modeling Data 翻译和实现
人工智能·python·语言模型·自然语言处理
合方圆~小文22 分钟前
工业摄像头工作原理与核心特性
数据库·人工智能·模块测试