- 博客(69)
- 资源 (11)
- 收藏
- 关注
原创 UR5机器人的旋转向量转换到四元数,再从四元数转换到旋转向量python代码
UR5机器人的旋转向量转换到四元数,再从四元数转换到旋转向量python代码
2024-01-03 22:11:02 584
原创 视觉伺服算是智能控制吗?
视觉伺服是在执行任务之前需要人为调整机器人的末端位置以获得期望目标位置下特征点的图像坐标。在机器人执行任务的时候根据当前期望位置和期望图像位置之间的偏差获得控制信号。在看相关论文的时候,我想出一个问题,每次让机器人完成一次对准抓取的工作都需要人工提前完成一次期望位置调整,这算是机器智能吗?当然这里面会涉及到多个坐标系之间的转换,将图像坐标变化量转换到世界坐标系下,然后利用机器人末端位置增量获得控制信号。能不能让机器人只是从图像上获取的特征点就能完成两种物体的对准呢?
2022-10-24 21:04:25 105
原创 物体6D位姿估计方法总结
在抓取中,6D物体位姿常常是被需要的,能够帮助机器人获得目标物体的位置和方位。方法分类:①. 基于对应的方法找到输入数据与存在的完整3D物体模型之间的对应关系。有两种实现手段,一种是基于2D图像,找到2D点与3D点的对应关系,利用PnP方法估计物体6D位姿。另一种是基于3D点云方法,找到3D点与3D点的对应关系。基于2D图像往往需要物体必须具有丰富的纹理。利用3D模型从各个角度获得渲染的2D图像,这里面就将2D点与3D点之间对应起来了。
2022-10-21 10:54:03 2209 1
原创 Torch.Distributions.Normal正态分布函数sample出来的为什么有负数
最后自己恍然大悟,这个sample不是sample正态分布的函数值,正态分布的函数值表示的是什么?取概率干什么,我们要的是常数值,就是按照正态分布的概率在坐标轴上取值,均值处被取的概率大一些,其他地方离均值越远取的值被取到的概率越小。在跑SAC网络的时候发现选择动作时用到的Normal函数在sample时出现负数就感觉很奇怪。真的是傻傻分不清啊!
2022-10-20 21:34:18 1139
原创 ubuntu开机卡在/dev/nvme0n1p2: clean 进入不了图形界面
1、如果刚装完系统出现的这个问题,可能是内核与显卡不适配,可以参考下面这个博文。2、对于ubuntu内核版本冲突,通过删除内核的办法。将有用的链接放在这希望给需要的人提供帮助,也为自己留个备份。修改grub 引导项,如果是问题1这种情况是能够解决的。我出现这个问题一次在刚装完系统,一次在更新了内核之后。
2022-09-16 08:55:35 8799
原创 python的类继承与重构示例讲解
python的类继承与重构为了避免重写一些功能函数,新类只需要继承基类就能够实现对基类函数的调用而不需要在新类上进行重复定义。并且也可以实现在新类上对基类的函数进行功能改写,即重构。class A(): def __init__(self, a, b): self.a = a self.b = b def sum(self,a,b): c= a+b e= self.multiply(a,b) r
2022-04-21 09:36:45 1421
原创 双足机器人ZMP预观控制算法通俗解释
双足机器人ZMP预观控制算法通俗解释如果看完相关博文的推导过程,感觉还是不太明白其原理,故自己将思路重新梳理整理了一下,因此本文不涉及推导过程,力求以一种简单的方式说明其工作原理。将双足机器人模型简化为一个倒立摆模型或小车-桌子模型,后者在推导ZMP点的位置更加直观些,推导出来的运动方程将ZMP的位置与质心的位置和加速度联系在一起。所以在身体运动过程中,实际的zmp位置是会根据机器人实际的运动变化而变化的,我们整体控制的目的是使实际的zmp位置与参考的zmp位置之间的误差尽可能小一些,这样机器人在运动过
2022-04-15 15:23:20 3457
原创 python找不到包的总结: ImportError: No module named **
python找不到包的总结: ImportError: No module named **经常在调用自己写的文件时出现这种情况。首先需要搞清楚,文件搜索路径import sysprint(sys.path)这样会输出搜索的路径们,一般第一个为此文件所在的绝对路径。一般我们需要调用其他文件夹下的文件,但是经常找不到模块,比较头疼,这里举一个例子。project-age-class1.py-class2.py-name-all.py想在all.py文件里面调用age/class2.
2022-03-23 17:20:28 1056
原创 VS code C++程序中调用python函数,出现Fatal Python error: Py_Initialize: Unable to get the locale encoding
VS code C++程序中调用python函数,出现Fatal Python error: Py_Initialize: Unable to get the locale encoding具体问题描述:当我按照VS Code实现在C++程序里面调用python代码步骤配置好,并且成功生成exe文件,并且能够成功输出结果,但是回到cpp文件进行debug的时候出现Fatal Python error: Py_Initialize: Unable to get the locale encoding
2022-03-22 22:04:55 1899
原创 VS code C++程序中调用python函数,出现找不到Python.h头文件
VS code C++程序中调用python函数,出现找不到Python.h头文件#include <Python.h>出现fatal error: Python.h: No such file or directory的问题这时需要我们手动添加包含Python.h文件目录ctrl+shift+P选择编译配置JSON,在生成的.json文件中的"includePath"加上包含Python.h文件的绝对路径,还需要添加链接文件路径,具体方法请参考详细的配置方法https://b
2022-03-22 21:58:09 5263 4
原创 VS Code实现在C++程序里面调用python代码
VS Code实现在C++程序里面调用python代码小白第一次尝试终于用了一天的时间解决了,喜极而泣!记录下来,希望能够帮助需要的人。1、创建一个文件夹,在文件夹里面新建两个文件一个是C++文件test.cpp,一个是python 文件forcpp.py。test.cpp在这里插入代码片...
2022-03-22 21:35:12 3952 3
原创 机械臂正向运动学原理通俗解释
机械臂和四足机器人中正向运动学理解正向运动学可以理解为关节运动量的传递。定性理解:关节的运动量都是以在前面一个关节上建立的坐标系为参考旋转多少角度,一个关节运动会带动后面的关节运动,会导致固定在关节上的坐标系的位姿(位置和姿态)发生变化,所以每个关节绕各关节坐标系旋转一定角度最后会在末端产生一个累积的影响。定量理解:想知道各关节运动一个角度会使末端位姿发生什么变化呢?首先需要选定一个基坐标系,一般选择一端连着固定连杆,另一端连着活动连杆的关节坐标系作为基坐标系,比如机械臂一般选择基座为基坐标系,四足机
2022-03-09 14:29:51 1697
原创 深度强化学习-SAC的网络结构和功能的通俗解释
深度强化学习-SAC的通俗解释本blog不涉及具体理论解析,只希望从应用角度对算法进行解读。如果想详细了解详细理论推导,可以参考博文:最前沿:深度解读Soft Actor-Critic算法1、算法优点:SAC采用一种off-policy的随机策略。离线:探索策略和学习策略不是同一个网络,随机:...
2022-02-22 16:07:16 3095
原创 google官方efficientdet网络训练自己数据集步骤以及问题解决
google官方efficientdet网络训练自己数据集步骤以及问题解决1、谷歌官方代码网址,github上有各种版本的,建议使用官方的不会出现什么问题。https://github.com/google/automl/tree/master/efficientdet本人采坑记录,一开始使用github上pytorch版本star比较高的用来训练测试,发现精度还不错,但是infer的速度始终无法达到参考指标,后来一查确实有一些人也遇到这样的问题也都没有解决,经过1天的努力,最后决定跳坑,最终证明还
2021-12-04 11:06:56 3089
原创 mmdetection生成测试集的测试结果并保存在.json
mmdetection生成测试集的测试结果并保存在.json原代码测试验证时没有输出检测结果的文件,只能自己手动改一个了。本来想自己写一个后来发现原来有,方法如下:在mmdet/apis/test.py文件中第68行处,增加以下两句: coco=CocoDataset('data/coco/annotations/instances_val2017.json',pipeline=[]) #验证集路径 json_results=coco._det2json(results=resul
2021-11-25 12:16:14 8652 21
原创 成功在RTX3080上训练centernet
成功在RTX3080上训练centernet1、源码下载地址Centernetor https://github.com/xingyizhou/CenterNet2、环境配置教程地址【需要做些改动】centernet installmenthttps://github.com/xingyizhou/CenterNet/blob/master/readme/INSTALL.md1)步骤1中在官网下载和RTX3080符合的pytorch,亲测下面的版本可行。pip install torch
2021-11-23 11:04:39 883
转载 ubuntu18.04安装matlab2018b详细步骤
ubuntu18.04安装matlab2018b详细步骤参考一下网址,亲测此方法可靠。https://www.cnblogs.com/jsdy/p/11434334.html#_label0_0如果安装时出现 "archive is not a ZIP archive"的错误,可能是因为ios1下载的时候损坏,建议重新下载ios1,可以解决。...
2021-11-21 14:48:20 788
原创 ubuntu18.04,pytorch1.8.0,cuda111安装mmdetection步骤
ubuntu18.04,pytorch1.8.0,cuda111安装mmdetection步骤1、创建虚拟环境conda create -n openmmlab python=3.7 -yconda activate openmmlab2、安装pytorch,需要安装与显卡相适应的版本这里以3080为例conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c
2021-10-26 09:45:25 1204
原创 <强化学习篇>强化学习基础路线baseline
<强化学习篇>强化学习基础路线baseline1、动作概率函数功能:输入:observation,action输出:if action=None,输出动作概率分布;if action为制定动作,输出制动动作概率。对于离散空间,返回的是probability mass,连续空间,返回的是probability density.(连续空间中probability mass为0)。2、获得当前环境函数功能:输入:无输出:当前环境3、获得参数列表:功能:输入:无输出:模型的参数4、获
2021-10-18 09:21:35 507
原创 ubuntu18.04安装cmake3.18.0
ubuntu18.04安装cmake3.18.01、本方法可适用安装任何版本的cmake,可以在官网中找到需要的版本,本文以3.18.0为例https://cmake.org/files/2、wget https://cmake.org/files/v3.18/cmake-3.18.0-Linux-x86_64.tar.gz下载文件3、文件解压tar zxvf cmake-3.18.0-Linux-x86_64.tar.gz4、安装sudo mv cmake-3.18.0-Linux-x8
2021-09-24 15:57:48 3000
原创 ubuntu 18.04 安装python_pcl教程(亲测有效)
ubuntu 18.04 安装python_pcl教程(亲测有效)按照网上的教程一致不能安装成功,之后终于找到一个可以解决的方法链接: https://pan.baidu.com/s/1kAgRZMeGezts9EG7Z_v96w 提取码: 37vq 从网址中下载下来,用下面的指令安装(这里面要求python版本为3.7的)pip install python_pcl-0.3.0rc1-cp37-cp37m-linux_x86_64.whl结果图这样显示安装成功。2、验证pythoni
2021-09-18 18:48:53 686 5
原创 安装gazebo并与ROS之间通讯
安装gazebo并与ROS之间通讯1、打开下列网址,在右上角选择对应的版本,目前发现ubuntu18.04只能安装9.http://gazebosim.org/tutorials?tut=ros_installing2、按照 step by step 的安装方式,即可安装成功。3、ROS与gazebo通讯http://gazebosim.org/tutorials?tut=ros_installing按照指示安装即可成功。...
2021-09-18 08:48:12 241
原创 四足机器人(一)--------ubuntu18.04下MIT的cheetah开源代码环境配置(视频演示)
ubuntu18.04下MIT的cheetah开源代码环境配置1、下载环境代码并且解压https://github.com/mit-biomimetics/Cheetah-Software2、安装依赖项sudo apt install mesa-common-dev freeglut3-dev coinor-libipopt-dev libblas-dev liblapack-dev gfortran liblapack-dev coinor-libipopt-dev cmake gcc buil
2021-09-15 15:28:35 1972 4
原创 虚拟环境中cuda版本与系统cuda版本不同有什么影响
虚拟环境中cuda版本与系统cuda版本不同有什么影响1、虚拟环境中的cuda和系统安装的cuda是互不影响的,所以在虚拟环境中放心安装你需要的cuda版本。安装之后为了验证时候安装成功,在终端运行了nvcc -V(V大写),很奇怪的发现和系统安装的cuda是一个版本,然后自己傻傻以为没有安装成功,一直在找解决办法。其实这个命令执行之后就是获得系统安装的版本,如果想要看虚拟环境中安装的版本应该运行,conda list | grep cuda,然后就会获得虚拟环境下安装的版本。2、但是!!cuda版本不
2021-07-10 20:40:42 9712 9
原创 ubuntu18.04安装NVIDIA显卡驱动(简单方便有效)
ubuntu18.04安装NVIDIA显卡驱动(简单方便有效)1、检查是否安装显卡:nvidia-smi提示不存在,需要安装,证明需要安装驱动2、查看本机显卡类型和驱动:ubuntu-drivers devices能看见有model,driver的信息3、一条语句安装:sudo ubuntu-drivers autoinstall这个时候会自动帮你安装推荐的驱动。只要等着就行。(由于本人使用sudo apt install nvidia-340这样的语句安装特定版本一直没成功,所以干
2021-07-09 15:46:41 3408 4
原创 自编码器原理和实现
自编码器一、原理:将图像进行压缩,压缩的特征图能够保存原图像的主要特征,即根据特征图能够再次恢复原始图像。二、具体实现方法:自编码器分为两部分:编码和解码。编码可以使用任一卷积网络,可以根据训练数据选择,像MNIST手写数字可以选用简单的神经网络,比如LeNet。解码部分就是反向的神经网络,这样输入和输出图像大小相同,可以直接利用误差平方作为损失函数进行训练。三、实验结果:(1)生成20幅图像:当然这里肯定是要输入20幅原始图像,然后才能查看生成的图像,否则自己设定的隐空间变量生成的图像可能没有
2021-06-30 09:09:51 1502
原创 鸢尾花分类代码实现
鸢尾花分类代码实现import pandas as pdimport numpy as npfrom matplotlib import pyplot as plt#sigmoid functiondef sigmoid(x): return 1.0/(1+np.exp(-x))#dsigmoid functiondef dsigmoid(x): return sigmoid(x)*(1-sigmoid(x))#code flowers speciesdef codeN
2021-04-24 15:18:02 1348 1
原创 二维样本数据和标签回归及LDA代码实现
二维样本数据和标签回归及LDA代码实现1、先上效果图:纠正一下横纵坐标,横坐标为x1,纵坐标为x2,这是样本与标签回归的二维结果图。2、LDA结果图:图中的是投影直线和分类面3、上代码:样本通过高斯分布生成的随机数,标签为+1,-1.import numpy as npimport matplotlib.pyplot as pltfrom matplotlib.pyplot import MultipleLocatorfrom sklearn import model_select
2021-04-13 16:14:28 607
原创 YOLOv5训练目标检测步骤
YOLOv5训练目标检测步骤一、数据的准备使用精灵标注助手对图像进行标注,注意标签要用英文,导出PASCAL VOC数据格式;二、数据的规范化将数据导出的xml文件转成yolo需要的txt文件,转换的程序可以用下面网站的转换程序。https://github.com/Ryo-Kawanami/xml2yolo新建两个文件夹train,valid:每个文件夹内包含:这两个文件夹,images文夹放图片,lables文件夹放转换后的txt文件。三、数据配置文件和train,valid文件
2021-04-06 14:35:30 4915 1
原创 python利用不同按键执行不同程序——图像操作
python利用不同按键执行不同程序——图像操作有些重复性的枯燥操作为什么不同脚本来快乐实现呢?此程序功能:用于图片筛选,按下a键,保存图片,按下l键跳过图片。import globimport cv2import osfiles = glob.glob('cal/happy/*.jpg')for f in files: img = cv2.imread(f) cv2.imshow(os.path.basename(f),img) //图片窗口以图片名称命名; k =
2021-03-19 17:23:23 917
EndNote的7362种参考论文格式
2022-10-08
改进hough变换检测椭圆.zip
2020-03-05
电子密码锁verilog语言程序代码.zip
2019-11-15
自动售卖机verilog语言程序代码.docx
2019-11-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人