- 博客(98)
- 资源 (15)
- 收藏
- 关注
原创 DIY相机(一)libcamera库
本篇主要说明了我们使用树莓派diy一个相机时,涉及到的相机选型和底层库libcamera的相关基础使用。libcamera提供的功能远不止此,我们使用单反/微单的M档拍摄时,可以设置的全部参数,都可以通过libcamera库去设置。但是libcamera只是在终端中使用的指令,我们制作一个相机,需要有自己的相机app和图库app等,这就需要我们在上层语言上进行调用。下一节我们会介绍对libcamera进行封装的picamera2库。
2023-10-29 21:40:01 1044 3
原创 树莓派系统文件解析
分析树莓派的系统文件及其各文件作用,基于树莓派的开发会有很多更改系统文件的需求,了解各系统文件的作用对于后续的开发事半功倍
2023-10-26 08:55:38 301 1
原创 PyTorch JIT和TorchScript,一个API提升推理性能50%
PyTorch的TorchScript,相比PyTorch的eager模式,可将模型的推理性能提升50%左右
2023-10-23 00:09:42 762
原创 torch.jit.trace与torch.jit.script
torch.jit.trace与torch.jit.script是将PyTorch eager model转为script model的API,可显著提高推理的性能
2023-10-23 00:07:15 429
原创 一文搞懂pytorch hook机制
pytorch hook可以方便我们对模型中的激活、梯度等进行查看并修改,可以在不修改model 代码的情况下,对模型做一些额外的操作,掌握hook机制可以更游刃有余的掌握pytorch相关的编程技巧。
2023-10-07 22:14:29 245
原创 容易被忽视的CNN模型的感受野及其计算
感受野是我们设计CNN模型时特别重要的一个指标,本文详细介绍了感受野的概念以及计算方法,并提供了一个通用的代码方便计算每层的感受野大小
2023-10-07 22:11:37 126
原创 加速attention计算的工业标准:flash attention 1和2算法的原理及实现
transformer模型大火,flash attention技术同时也被提出用于加速attention的计算,目前已经被pytorch、huggingface、paddlepaddle等集成到其框架中。
2023-10-07 21:55:23 2043 3
原创 vismod:像查看图片一样简单的查看URDF、SDF机器人模型文件
vismod可直接用来查看urdf、sdf等模型,不需要通过ROS,也不需要额外的软件。下载地址:目前仅支持Windows,后续会继续开发其他平台。开发不易,动动手指头,支持作者一杯咖啡~
2021-09-30 14:01:18 665 2
原创 自动驾驶决策控制与行为预测运动规划综述文章
有两篇博文,对自动驾驶的综述写的不错,自动驾驶决策控制及运动规划史上最详细最接地气综述,自动驾驶路径规划与行为预测最接地气详细综述美中不足的是,如果想要获取参考文献的话,需要付一些(不菲的)费用给作者,如果不想付费买paper的话,可以参考这两篇paper,paper中详细讲了自动驾驶决策相关的综述,以及它的参考文献,上面博文的参考文献也是差不多的,而且博文中也有很大一部分是借鉴的这两篇paper当中的内容。这两篇paper是:Planning and Decision-Making for A
2021-08-13 23:09:16 828 2
原创 使用tune.run怎么获取model summary的信息
使用rllib的时候,如果使用PPOTrainer或者某一个其他的trainer,在执行trainer.train()的时候,会打印model summary,也可以显式调用获取model summary的API,就像下面这样>>> from ray.rllib.agents.ppo import PPOTrainer>>> trainer = PPOTrainer(env="CartPole-v0", config={"eager": True, "num_work
2021-05-06 18:19:24 596 4
原创 解决rllib使用custom model没有日志输出的问题
在rllib的example中,有一个custom model的例子,链接,但是运行这个就会发现一个问题,没有训练的日志输出,只有这个状态信息,训练过程中的training iter, episode reward mean等信息都不输出。== Status ==Memory usage on this node: 1.2/9.3 GiBUsing FIFO scheduling algorithm.Resources requested: 0/1 CPUs, 0/0 GPUs, 0.0/5.22
2021-05-06 17:50:44 425
原创 colab使用conda
%%bashMINICONDA_INSTALLER_SCRIPT=Miniconda3-4.5.4-Linux-x86_64.shMINICONDA_PREFIX=/usr/localwget https://repo.continuum.io/miniconda/$MINICONDA_INSTALLER_SCRIPTchmod +x $MINICONDA_INSTALLER_SCRIPT./$MINICONDA_INSTALLER_SCRIPT -b -f -p $MINICONDA_PREFI
2021-04-04 21:50:18 1891
原创 vscode给python添加头部注释模板
FIle -> Preference -> User Snippets -> 选择python文件把内容替换成{ // Place your snippets for python here. Each snippet is defined under a snippet name and has a prefix, body and // description. The prefix is what is used to trigger the snippet and th
2021-03-20 14:30:28 1157
原创 高斯分布中为什么喜欢用对数似然函数而不是似然函数
https://math.stackexchange.com/questions/892832/why-we-consider-log-likelihood-instead-of-likelihood-in-gaussian-distribution
2021-03-19 22:19:37 1124 1
原创 @functools.lru_cache(maxsize=128, typed=False)缓存到底有什么用
今天来谈一谈@functools.lru_cache(maxsize=128, typed=False)缓存装饰器,这是在Python3.2版本中新添加的功能,意在将重复耗时的计算的中间结果保存下来,如无缓存的递归运算。lru 是(least recently used)的缩写,即最近最少使用原则。表明缓存不会无限制增长,一段时间不用的缓存条目会被扔掉。maxsize 是保存最近多少个调用的结果,最好设置为 2 的倍数,默认为 128。如果设置为 None 的话就相当于是 maxsize 为正无穷了。还有
2021-02-26 20:50:44 991 1
原创 pybullet实现SlideBar的封装,任何机械臂可直接调用API完成SlideBars控制
我将文章发表在了古月居,一起来看看吧!戳这里 -> 古月居猜你想看:pybullet杂谈 :使用深度学习拟合相机坐标系与世界坐标系坐标变换关系(一)pybullet杂谈 :使用深度学习拟合相机坐标系与世界坐标系坐标变换关系(二)pybullet电机控制总结Part 1 - 自定义gym环境Part 1.1 - 注册自定义Gym环境Part 1.2 - 实现一个井字棋游戏的gym环境Part 1.3 - 熟悉PyBulletPart 1.4 - 为PyBullet创建Gym环境.
2021-02-25 22:50:36 293
原创 深度强化学习专栏 —— 6. 使用RLLib和ray进行强化学习训练
我将文章发表在了古月居,一起来看看吧!戳这里 -> 古月居猜你想看:Ubuntu助手 — 一键自动安装软件,一键进行系统配置深度强化学习专栏 —— 1.研究现状深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制深度强化学习专栏 —— 3.实现一阶倒立摆深度强化学习专栏 —— 4. 使用ray做分布式计算深度强化学习专栏 —— 5. 使用ray的tune组件优化强化学习算法的超参数...
2021-02-20 17:17:16 1173
原创 深度强化学习专栏 —— 5. 使用ray的tune组件优化强化学习算法的超参数
我将文章发表在了古月居,一起来看看吧!-> 戳这里猜你想看:Ubuntu助手 — 一键自动安装软件,一键进行系统配置深度强化学习专栏 —— 1.研究现状深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制深度强化学习专栏 —— 3.实现一阶倒立摆深度强化学习专栏 —— 4. 使用ray做分布式计算深度强化学习专栏 —— 5. 使用ray的tune组件优化强化学习算法的超参数...
2021-02-19 16:40:44 328
原创 深度强化学习专栏 —— 3.实现一阶倒立摆
我将文章发表在了古月居,一起来看看吧!戳这里猜你想看:深度强化学习专栏 —— 1.研究现状深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制深度强化学习专栏 —— 3.实现一阶倒立摆pybullet杂谈 :使用深度学习拟合相机坐标系与世界坐标系坐标变换关系(一)Ubuntu助手 — 一键自动安装软件,一键进行系统配置...
2021-01-27 09:24:21 798
原创 深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制
我将文章发表在了古月居,一起来看看吧!戳这里猜你想看:深度强化学习专栏 —— 1.研究现状深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制深度强化学习专栏 —— 3.实现一阶倒立摆pybullet杂谈 :使用深度学习拟合相机坐标系与世界坐标系坐标变换关系(一)Ubuntu助手 — 一键自动安装软件,一键进行系统配置...
2021-01-27 09:22:52 303
原创 深度强化学习专栏 —— 1.研究现状
我将文章发表在了古月居,一起来看看吧!戳这里猜你想看:深度强化学习专栏 —— 1.研究现状深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制深度强化学习专栏 —— 3.实现一阶倒立摆pybullet杂谈 :使用深度学习拟合相机坐标系与世界坐标系坐标变换关系(一)Ubuntu助手 — 一键自动安装软件,一键进行系统配置...
2021-01-27 09:20:12 998
原创 Ubuntu助手 — 一键自动安装软件,一键进行系统配置
我将文章发表在了古月居,一起来看看吧!戳这里猜你想看:深度强化学习专栏 —— 1.研究现状深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制深度强化学习专栏 —— 3.实现一阶倒立摆pybullet杂谈 :使用深度学习拟合相机坐标系与世界坐标系坐标变换关系(一)...
2021-01-27 09:15:28 629 2
原创 SSH显示服务器端的GUI界面
1.两台电脑都安装openssh-server和openssh-client。sudo apt install openssh-server openssh-client2.查看ssh服务是否启动。ps -e | grep ssh如果显示有sshd的选项,即代表启动成功。如果没有,可通过如下命令启动sudo /etc/init.d/ssh start 3.1 如果只是在纯终端方式下开发,直接通过ssh username@ip, 例如 ssh dell@192.168.3.11命令
2020-12-25 11:24:57 4771
原创 分别使用常规控制和强化学习方法解决cartpole swing-up问题
分别使用常规控制和强化学习方法解决cartpole swing-up问题使用常规方法控制使用强化学习来控制(重点说明)参考对于做强化学习的小伙伴,常见的是cartpole的平衡问题。可阅读论文Stephenson, 1908; Donaldson, 1960; Widrow, 1964; Michie & Chambers, 1968.比平衡问题更加具有挑战性的是cartpole的swing-up问题,就是上图gif显示的控制策略,从pole垂下自然状态,通过控制cart使pole竖直平衡(具
2020-11-03 22:56:39 1358
原创 CSDN页面完美格式打印
如果直接在CSDN页面上Ctrl + P打印,肯定会是这样的预览页面页面显示不全,格式不正确,等等。这是因为页面的CSS等元素干扰了打印。只要把那些干扰元素删除,再打印就OK了复制以下代码,打开要打印的页面。 (function(){ $("#side").remove(); $("#comment_title, #comment_list, #comment_bar, #comment_form, .announce, #ad_cen, #ad_bot").remove()
2020-11-03 20:20:54 7977 11
原创 解决Ubuntu启动时卡在logo页面
尤其对于刚装的Ubuntu系统,开机的时候有时候会卡在logo页面这个是因为开源显卡驱动导致的,具体的原因以及解决方法呢,请阅读下面这篇文章,这篇文章不仅讲了怎么修复这个问题,还把这个问题的原因也讲解的很明白。Fixing Ubuntu Freezing at Boot Time...
2020-10-25 17:23:29 5811 1
原创 WSL1和WSL2安装界面显示
缺点:使用Xming,xfce和windows的显示是在一起的。优点:使用WSL,相比虚拟机,可以充分使用所有的CPU,并且在win10 20145之后的build版本中,将支持GPU。可以开启Windows预览体验计划,安装Dev渠道的版本,便可以提前享受新的版本,但是注意,20211版本把WSL干死了(2020-9-16)安装方法1. 安装WSL Ubuntu子系统2....
2020-09-17 11:05:27 5419
原创 强化学习(第二版) - 第三章公式总结及习题答案
期望回报Gt=Rt+1+Rt+2+Rt+3+⋯+RTGt=Rt+1+γRt+2+γ2Rt+3+⋯=∑k=0∞γkRt+k+1,0≤γ≤1Gt=Rt+1+γRt+2+γ2Rt+3+⋯=Rt+1+γ(Rt+2+γRt+3+⋯ )=Rt+1+γGt+1\begin{aligned}G_t&=R_{t+1}+R_{t+2}+R_{t+3}+\cdots+R_T \\G_t&=R_{t+1}+\gamma R_{t+2}+\gamma^{2} R_{t+3}+\cdots=\sum_{k=0
2020-09-05 22:50:25 3156 3
原创 强化学习(第二版)Sutton - 第二章习题答案和解析
强化学习(第二版)Sutton - 习题答案和解析第二章2.1 在$\第二章2.1 在$\
2020-09-04 11:20:13 9653 15
原创 Part 1.2 - 实现一个井字棋游戏的gym环境
上文已经描述了怎么创建和注册一个自定义的gym环境。但是环境类中的4个函数都是空的,本文将描述怎么实现那4个函数,实现一个完整的井字棋游戏的环境。游戏规则:两个玩家在3x3的棋盘上,一方执X,一方执O。哪方先下的连续3个子(不管在对角,竖直还是水平方向)为胜。(类似五子棋)。赢得一方将会获得+100的奖励。完整的环境代码访问GitHub。其中,step函数已经指定了双方下棋的规则,也就是说这个程序不是依靠某个强化学习算法来下棋,而是靠固定规则。因为本系列文章的目的就是要说明如何自定义环境,而不是应用.
2020-08-25 11:38:13 1206
原创 pybullet电机控制总结
恒定速度要让电机保持恒速运动,需要指定施加在电机的最大外力。如maxForce = 500p.setJointMotorControl2(bodyUniqueId=objUid, jointIndex=0, controlMode=p.VELOCITY_CONTROL, targetVelocity=targetVel, force=maxForce)一段完整的代码import pybullet as pimport timeimport
2020-08-23 21:18:06 1412
原创 ros网页控制机械臂
网卡设置固定IP和机械臂通过网线连接。请参考这篇文章中的步骤:ROS - 使用UR机械臂最新的 ur_robot_driver网页控制机械臂主要通过 robot web toolsrobot web tools包含roslibjs, ros2djs, ros3djs, roslibpy, rosgraph web visualizer等工具,它们提供了本地ROS和网页交互的接口。同时,PC通过ROS控制机械臂,还需要UR机械臂的驱动程序,目前最新的驱动是ur robot driver,考虑到生态..
2020-08-13 16:51:56 2291 2
原创 不通过ROS直接查看URDF文件
在GitHub发现一个不错的仓库,可不通过ROS直接查看.urdf文件的模型:urdf-viz。支持win、linux和mac。在linux和mac上应该好操作,简单说一下在win上的操作。按照说明【On Windows】,下载压缩包,然后将解压后的包放到任意一个位置,把这个文件夹的地址添加到环境变量Path中即可。然后启动cmd,定位到urdf文件地址,执行urdf-viz xx.urdf即可。参考:https://github.com/OTL/urdf-viz...
2020-08-02 19:47:53 2612 3
原创 ur机械臂 + robotiq gripper + robotiq ft sensor + gazebo + 连接真实机械臂 + 网页控制
ur机械臂 + robotiq gripper + robotiq ft sensor + gazebo + 连接真实机械臂 + 网页控制仓库地址:[ur_ws](https://github.com/borninfreedom/ur_ws),欢迎debug和develop。xacro制作连接真实机械臂gazebo、moveit网页控制note:网页控制目前因为某些原因还不能放出,后期会发布。仓库地址:ur_ws,欢迎debug和develop。xacro制作xacro主要负责将ur机械臂、
2020-07-23 09:59:28 4867 8
原创 网页显示ROS的相机内容
1.安装async-web-serversudo apt-get install ros-kinetic-async-web-server-cpp2.安装web_video_server(假设已经有catkin_ws工作空间)cd ~/catkin_ws/srcgit clone https://github.com/RobotWebTools/web_video_server3.安装usb cam packagecd ~/catkin_ws/srcgit clone https://g.
2020-07-17 14:30:03 942 1
原创 控制终端输出字体的颜色
examples#include <stdio.h>int main(void){ int i, j, n; for (i = 0; i < 11; i++) { for (j = 0; j < 10; j++) { n = 10*i + j; if (n > 108) break; printf("\033[%dm %3d\033[m", n, n); } printf("\n"); } re.
2020-07-15 14:32:08 419
原创 Ubuntu18安装gym完整版(gym all)
安装的过程比较曲折,虽然安装成功了,现在也没明白到底是什么起了作用让执行不过去的指令突然执行成功了。说说我的过程: 需要用到gym all。git clone https://github.com/openai/gym.git#git clone https://github.com/tianheyu927/gym.git #确切的说,我使用的是这个,这个有个mil分支 #如果只是使用gym,请clone上面的链接cd gympip install
2020-07-14 17:14:24 4936 2
cudart64_100.zip
2020-01-08
Deep Learning and Robotics(pieter abbeel).zip
2020-01-05
Hybrid PositionForce Control of Manipulators.zip
2020-01-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人