自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 安装OpenAI Gym、NumPy和pandas

安装Python和pip首先,确保你的Ubuntu系统中已经安装了Python和pip。安装OpenAI Gym接下来,你可以使用pip来安装OpenAI Gym。pip3 install gym==版本号安装NumPy安装NumPy的步骤相对简单。同样,如果需要特定版本的NumPy,可以指定版本号。如果成功安装,将显示NumPy的版本号。安装pandas如果终端输出了pandas的版本号,则说明pandas已经成功安装。

2024-03-22 20:53:40 434 1

原创 Abaqus汉化教程

第五步:打开locale.txt,在第二行##############上面添加一句 Chinese (Simplified)_China.936 = zh_CN,并将zh_CN = 0改为zh_CN = 1,保存,关闭即可。第一步,在在菜单栏找到Abaqus CAE右键打开文件所在的位置。第四步:进入SMA文件夹下的Configuration文件夹。第二步:继续右键Abaqus CAE右键打开文件所在的位置。第三步:然后进入到这个路径的win_b64文件夹。然后打开软件,汉化完成。

2024-01-14 12:18:20 1200 2

原创 解决右击ISO或IMG文件没有了“装载”菜单,而只有“打开”选项

今天博主在安装Abaqus时发现右击ISO或IMG文件没有了“装载”菜单,而只有“打开”选项,于是博主通过查找资料解决该问题。1、右击ISO文件选择“属性”,点击“更改”,在弹出的列表的“其他选项”下选择“Windows 资源管理器”,点击确定。2、我们再来右击ISO文件就可以看到“装载”菜单了。用钢铁意志,成就不平凡的人生。

2024-01-12 23:55:32 1642

原创 Abaqus2023安装下载教程

9、打开装在后的文件夹“1”,在“1”文件夹内的“setup.exe”上右击以管理员身份运行,打开Abaqus2023的安装程序后,点击“下一步”,选择组件,即安装帮助文件、主程序、Isight模块,如果不知如何选择,按照教程选择即可。7、.在“jdk-17.0.2_windows-x64 bin.exe”上右击以管理员身份运行,在Java的安装程序中点击“下一步”,保持默认,点击“下一步”,安装完成后点击“关闭”17、点击“浏览”,选择自己创建的安装目录下的“Products”文件夹,并点击“下一步”

2024-01-12 19:38:58 1267

原创 ROS自学笔记二十九:如何从SolidWorks导出URDF文件

首先,您需要安装SolidWorks URDF插件,以便能够导出URDF文件。您可以在SolidWorks插件市场或其他资源库中查找并下载适用于您的SolidWorks版本的URDF插件。在导出URDF文件后,建议使用URDF验证工具(如urdf_tutorial中提供的`check_urdf`工具)来验证URDF文件是否符合规范,以确保没有错误或不一致性。插件将根据您的模型生成URDF文件,该文件包含模型的几何信息、关节信息和其他必要的数据。- 在SolidWorks中,找到并运行已安装的URDF插件。

2023-11-05 20:01:15 1490

原创 ROS自学笔记二十八:ERROR: cannot launch node of type [robot_state_publisher/state_publisher]解决方法

解决方法:把launch文件中的 type里面 state_publisher节点的 为“robot_state_publisher”最近学习ros出现这个问题。

2023-11-04 20:02:00 1372

原创 ROS自学笔记二十七:导航中相机消息

深度相机相关消息有:sensor_msgs/Image、sensor_msgs/CompressedImage、sensor_msgs/PointCloud2sensor_msgs/Image 对应的一般的图像数据,sensor_msgs/CompressedImage 对应压缩后的图像数据,sensor_msgs/PointCloud2 对应的是点云数据(带有深度信息的图像数据)。

2023-10-31 22:56:52 566

原创 ROS自学笔记二十六:导航中激光雷达消息

在ROS导航中,激光雷达(Laser Scanner)通常被用于感知机器人周围的环境,进行障碍物检测和建图,以支持导航。在ROS导航中,常见的激光雷达消息类型是 sensor_msgs/LaserScan。sensor_msgs/LaserScan 用于表示激光雷达的扫描数据,包括距离测量和其他相关信息。以下是一个示例 sensor_msgs/LaserScan 消息,表示激光雷达的扫描数据。ranges:激光测量值的数组,每个元素表示激光束测量的距离。angle_min:激光束的最小测量角度(弧度)。

2023-10-31 22:39:30 289

原创 ROS自学笔记二十五:导航中目标点与路径规划消息

在ROS导航中,目标点与路径规划消息通常使用 geometry_msgs/PoseStamped来描述目标点的位置以及使用 nav_msgs/Path 来描述规划路径。

2023-10-31 22:32:57 294

原创 ROS自学笔记二十四:导航中定位消息

用于表示机器人的位置和方向信息,以及与这些估计相关的不确定性。这个消息通常用于描述机器人在地图中的位姿。来描述机器人的位置和方向信息,以及位置估计的不确定性。假设你有一个机器人,其在地图中的位置估计为 (2.0, 1.5, 0.0),方向估计为绕。轴旋转了约 45 度,并且你有一个用于描述位置估计不确定性的协方差矩阵。在ROS中,定位消息通常使用。

2023-10-31 22:24:16 314

原创 ROS自学笔记二十三:导航中坐标变换消息

消息包含一个名为 "laser_link" 的子坐标系相对于 "base_link" 父坐标系的坐标变换。假设你有一个机器人,它有一个激光雷达传感器(如 Hokuyo URG-04LX)固定在机器人底盘上,你需要描述激光雷达坐标系相对于机器人底盘坐标系的变换。它通常包含多个坐标变换的列表,每个坐标变换包括一个父坐标系、一个子坐标系、以及从父坐标系到子坐标系的变换信息。transforms:这是一个 geometry_msgs/TransformStamped 类型的数组,包含了多个坐标变换信息。

2023-10-31 22:19:21 99

原创 ROS自学笔记二十二:导航中里程计消息

pose.pose.orientation:机器人的方向,通常以四元数表示,包括 `x`、`y`、`z` 和 `w`。- twist.twist.angular:机器人的角速度,通常包括绕 `x`、`y` 和 `z` 轴的旋转速度。- twist.twist.linear:机器人的线速度,通常包括 `x`、`y` 和 `z` 分量。- pose.pose.position:机器人的三维位置,通常包括 `x`、`y` 和 `z`。- twist:机器人的线速度和角速度信息,用于表示机器人的运动状态。

2023-10-31 22:12:11 583

原创 ROS自学笔记二十一:导航中地图消息

地图元数据,包括地图的宽度、高度、分辨率等。地图栅格数据,一般会在rviz中以图形化的方式显示。

2023-10-31 22:05:48 202

原创 ROS自学笔记二十: Gazebo里面仿真环境搭建

点击: 左上角 file ---> Save (保存路径功能包下的: models)然后 file ---> Exit Building Editor。

2023-10-29 13:46:18 768

原创 ROS自学笔记十九:URDF集成Gazebo

首先,你需要创建一个符合 URDF 格式的 XML 文件,描述你的机器人模型的几何形状、连接、关节、传感器等信息。在 Gazebo 中加载你的 URDF 模型,可以使用 Gazebo 的命令行工具或编写一个简单的 launch 文件。你可以通过下载 Gazebo 或使用包管理工具(如`apt`或`brew`)来安装它,具体取决于你的操作系统。一旦你的 URDF 模型加载到 Gazebo 中,你可以运行仿真并测试你的机器人模型的控制算法。这将在 Gazebo 中加载你的机器人模型。

2023-10-29 10:35:38 385

原创 ROS自学笔记十八:ModuleNotFoundError: No module named ‘serial‘

出现上述错误,则需要安装serial功能包。

2023-10-29 02:39:24 699

原创 ROS自学笔记十七:Arbotix

3. 安装 ArbotiX ROS 驱动程序:ArbotiX ROS 驱动程序是用于与 ArbotiX 控制板通信的 ROS 软件包。3. ROS 驱动程序:ArbotiX 针对 ROS 开发,提供了 ROS 驱动程序和包,以便将其无缝集成到 ROS 中。2. 安装 ROS:如果你还没有安装 ROS,你需要安装 ROS 框架,确保它能够与你的 ArbotiX 控制板通信。7. 机器人应用:一旦 ArbotiX 控制板正常工作,你可以将其用于你的机器人应用程序,如小型机器人的移动、传感和决策控制。

2023-10-29 00:04:04 532

原创 ROS自学笔记十六:URDF优化_xacro文件

在 xacro 中,你可以使用参数来灵活定义机器人模型的各个部分,例如尺寸、关节类型、传感器配置等。

2023-10-27 17:23:37 234

原创 ROS自学笔记十五:URDF工具

在ROS中,你可以使用`.check_urdf`命令行工具来对URDF(Unified Robot Description Format)文件进行语法检查和验证。`urdf_to_graphiz`是一个用于可视化URDF(Unified Robot Description Format)文件结构的工具,它将URDF文件转换为Graphviz格式,然后使用Graphviz工具生成图形表示。`.check_urdf`工具将会分析指定的URDF文件,并在终端中输出关于文件的语法和结构的信息。

2023-10-27 02:14:17 587

原创 ROS自学笔记十四:URDF语法详解

在这个例子中,`` 元素有一个名为 "my_joint" 的名称,表示关节的唯一标识符。`` 元素指定了连接到关节的父链接(`link1`),而 `` 元素指定了连接到关节的子链接(`link2`)。上述例子中,`` 标签包含了两个链接 (``),分别命名为 "base_link" 和 "end_effector"。在 `` 标签内部,通常会包含 `` 和 `` 标签,用于定义机器人的链接和关节。

2023-10-19 00:11:14 349

原创 ROS自学笔记十三:VScode的介绍和安装

它支持多种编程语言,并且具有丰富的扩展系统,使得用户可以根据自己的需求自定义和扩展功能。6. 丰富的扩展系统:支持大量的插件和扩展,用户可以根据自己的需求安装和配置插件,以满足不同语言和框架的开发需求。安装完成后,你可以启动 VS Code,然后通过插件系统安装适合你开发环境的插件。它启动迅速,占用的系统资源较少。安装完成后,你可以打开 VS Code,开始编辑代码,还可以通过设置和插件对编辑器进行进一步的个性化和扩展。VS Code是免费提供的,并且其源代码是开放的,任何人都可以查看、使用和贡献。

2023-10-18 23:45:55 567

原创 ROS自学笔记十二:Command ‘git‘ not found, but can be installed with:

你可以从Git官方网站下载并安装Git for Windows:[Git for Windows](https://gitforwindows.org/)这个错误提示表明在你的系统上未安装Git命令行工具。安装完成后,你应该能够在终端或命令提示符中使用`git`命令。安装Git后,可能需要重新启动终端或命令提示符才能生效。在Linux上安装Git。

2023-10-17 12:09:03 751 1

原创 解决:由于找不到 VCRUNTIME140_.dll,无法继续执行代码。重新安装程序可能会解决此问题

,你也可以尝试从另一台已经安装了相同操作系统和 Visual C++ Redistributable 版本的计算机上复制 VCRUNTIME140_1.dll 文件到你的计算机。在程序的安装文件夹中,可能有一个名为 "redist" 或 "VC_redist" 的文件夹,其中包含了 Visual C++ Redistributable 的安装程序。如果问题仍然存在,你可以考虑使用系统还原将系统还原到之前的一个时间点,该时间点在你遇到问题之前。确保你的 Windows 操作系统是最新的。

2023-10-15 11:19:25 524

原创 深度学习自学笔记十四:图像分割的简单网络介绍

通过上采样操作,FCN将低分辨率的特征图还原到输入图像的分辨率,生成密集的分割结果。简介:U-Net 是一种编码器-解码器结构的网络,具有跳跃连接。编码器捕获图像的语义信息,而解码器通过跳跃连接将底层和高层的特征图结合起来,有助于保留细节信息。在选择网络时,需要考虑任务的复杂性、数据集的特征以及计算资源的可用性。简介: SegNet 也是一种编码器-解码器结构的网络,但与 U-Net 不同,SegNet 使用最大池化层的索引进行上采样,以还原分辨率。- 对于大尺寸的输入图像,可能会消耗更多计算资源。

2023-10-12 00:13:04 340

原创 深度学习自学笔记十三:unet网络详解和环境配置

UNet(全名为 U-Net)是一种深度学习架构,最初由Olaf Ronneberger、Philipp Fischer和Thomas Brox于2015年提出,用于图像分割任务。该网络的名称来源于其U形状的架构,该架构使得网络在编码和解码过程中能够捕捉多尺度的特征信息。UNet主要用于语义分割,医学图像分割等领域,其优点在于可以有效地学习和还原输入图像的细节。

2023-10-11 23:53:08 1852

原创 深度学习自学笔记十二:残差网络

同时,在网络的第一个卷积层之前和最后一个基本模块之后,ResNet还引入了池化层和全连接层,用于特征提取和分类。对于两个卷积层的基本模块,对于三个卷积层的基本模块,其计算公式为 H(x) = F(x) + Wx,其中 Wx 表示对输入进行线性投影,使得维度相适应。1. 允许更深的网络:由于残差连接的存在,梯度可以更容易地传播,使得网络可以更深、更复杂,而不会出现梯度消失或梯度爆炸的问题。3. 参数量更少:由于使用了跳跃连接,ResNet可以有效地减少网络中参数的数量,从而降低过拟合的风险,节省计算资源。

2023-10-06 23:44:50 82

原创 深度学习自学笔记十一:卷积神经网络

卷积神经网络(Convolutional Neural Networks,简称CNN)在计算机视觉领域中被广泛应用。它是一种专门针对图像处理的神经网络结构。在计算机视觉任务中,CNN主要用于图像分类、目标检测、图像分割和图像生成等任务。其核心思想是通过卷积层、池化层和全连接层构成的多层网络来提取图像特征,并进行相应的分类或回归任务。首先,卷积层是CNN的核心组件之一。它通过使用一组可学习的滤波器(也称为卷积核)对输入图像进行卷积操作,从而提取图像的局部特征。

2023-10-06 23:30:04 94

原创 深度学习自学笔记十:超参数调试、正则化

3. 设置合适的超参数:在Batch Normalization层中,有一些重要的超参数需要设置,包括momentum(动量)、epsilon(防止除零错误)、axis(归一化操作的轴)。在Softmax回归中,常使用交叉熵损失函数,可以表示为L = -Σ(y_i * log(p_i)),其中y_i是第i个样本的实际标签,p_i是对应的预测概率。对于第i个样本,其对应的预测概率可以计算为p_i = softmax(z_i),其中z_i是第i个样本的线性变换结果。8. 预测:使用训练好的模型进行预测。

2023-10-06 22:04:43 58

原创 深度学习自学笔记九:优化算法

而在小批量梯度下降中,每次迭代时,我们会选择一个固定大小的小批量样本集合,计算出该集合上的平均梯度,并使用该梯度来更新模型的参数。其中,`m`是动量变量,`v`是梯度累积变量,`beta1`和`beta2`是衰减率(一般取0.9和0.999),`learning_rate`是学习率,`t`是当前迭代次数,`epsilon`是一个小的常数(通常取值为10^-8),用于避免除零错误。学习率的选择通常是一个关键问题,过小的学习率会导致模型收敛缓慢,而过大的学习率可能导致模型发散或无法收敛。

2023-10-06 15:23:15 44

原创 深度学习自学笔记八:深度学习的实践(二)

归一化输入指的是将输入数据进行标准化处理,使其具有零均值和单位方差。这种预处理操作可以有效地改善模型的收敛速度、稳定性和性能。常见的归一化方法包括:1. Z-score标准化:也称为标准化或零均值归一化,将数据按照特征维度进行中心化和缩放,使得数据的均值为0,标准差为1。对于样本x,Z-score标准化的计算公式如下:其中,mean表示特征的均值,std表示特征的标准差。2. Min-Max缩放:将数据线性地映射到指定的范围内,通常是[0, 1]或[-1, 1]。

2023-09-24 20:31:18 60

原创 深度学习自学笔记七:深度学习的实践(一)

在机器学习和深度学习中,我们通常将数据集分为训练集(Training Set)、验证集(Validation Set)和测试集(Test Set)。每个数据集都有不同的用途和目标。1. 训练集:训练集是用于模型参数的学习和训练的数据集。通过在训练集上反复迭代进行前向传播和反向传播,模型可以逐渐调整权重和偏置,从而学习到输入特征与输出之间的关系。训练集应该是最大的数据集,以便模型能够充分学习,并且覆盖任务的各种情况。2. 验证集:验证集用于超参数的选择和模型的调优。

2023-09-24 19:54:30 59

原创 深度学习自学笔记六:深层神经网络

Deep Neural Networks,DNN)是一种机器学习模型,由多个神经网络层组成。与传统的浅层神经网络相比,深层神经网络具有更多的隐藏层,使其能够进行更复杂、更抽象的特征学习和表示。添加图片注释,不超过 140 字(可选)深层神经网络的核心思想是通过反向传播算法来优化网络参数,以最小化预测输出与真实值之间的误差。每个隐藏层接收前一层的输出,并使用非线性激活函数对输入进行变换。这允许网络学习非线性关系,并捕捉输入数据中的高级特征。

2023-09-24 17:13:36 131

原创 深度学习自学笔记五:浅层神经网络(二)

Leaky ReLU函数是ReLU函数的改进版,对于负数输入,输出不再是0,而是一个小的斜率乘以输入值,公式为f(x) = max(0.01x, x)。需要注意的是,随机初始化只是训练神经网络的第一步,在后续的训练过程中,权重将会根据损失函数进行调整和优化。需要注意的是,这些导数只是针对每个激活函数本身的导数公式,并没有考虑到神经网络中的其他层和损失函数的影响。这些是神经网络中常见的激活函数,每个激活函数都有其独特的特性和适用场景,根据具体的任务和网络结构选择合适的激活函数能够提高神经网络的性能。

2023-09-24 16:47:06 93

原创 深度学习自学笔记四:浅层神经网络(一)

神经网络是一种模仿人脑神经系统结构和功能的计算模型。它由大量相互连接的人工神经元组成,并通过这些神经元之间的信息传递来进行计算和学习。神经网络的基本组成单元是神经元,也称为节点或单元。每个神经元接收来自其他神经元的输入,并根据这些输入产生一个输出。神经元之间的连接权重决定了信息在网络中的传递方式和强度。神经网络通常被组织成层次结构,由输入层、隐藏层和输出层组成。输入层接收外部输入数据,隐藏层负责处理信息并提取特征,输出层生成最终的输出结果。

2023-09-23 18:15:59 145

原创 深度学习自学笔记三:向量化逻辑回归和Python中的广播

1. 广播(Broadcasting):当两个形状不同的数组进行运算时,NumPy通过自动复制元素来匹配数组形状,从而避免了显式的循环。广播的原理是通过自动复制数组的值来匹配形状,使得两个数组具有兼容的形状,从而可以进行相应的运算。在Python的NumPy库中,广播(Broadcasting)是一种强大的机制,用于处理不同形状的数组之间的运算。需要注意的是,在广播操作中,数组的形状必须满足一定的条件才能进行广播。在广播过程中,NumPy会自动复制或调整数组的形状,使得它们的形状兼容。

2023-09-23 06:39:57 135

原创 深度学习自学笔记二:逻辑回归和梯度下降法

在预测阶段,给定新的输入特征x,我们可以使用训练好的权重向量w和偏置b,将其代入逻辑回归模型,并通过sigmoid函数计算输出概率g(z)。对于每个样本i,逻辑回归模型的预测值表示为y_hat_i,它是通过将输入特征x_i代入逻辑回归模型中计算得到的。其中,J(w, b)表示代价函数,w和b表示权重向量和偏置,m表示样本数量,y_i表示第i个样本的真实标签,y_hat_i表示对应的预测值。梯度下降法的基本思想是通过迭代更新参数,沿着代价函数的负梯度方向移动,以逐步接近代价函数的最小值。

2023-09-23 06:13:37 486

原创 深度学习自学笔记一:神经网络和深度学习

因此,为了替代一条可能会让价格为负的直线,应把直线弯曲一点,让它最终在零结束。神经网络和深度学习紧密相关,因为深度学习是以神经网络为基础的。与传统机器学习方法相比,深度学习能够自动地从原始数据中学习到更高级别的抽象特征,从而提高了模型的性能和表现能力。这些应用都受益于神经网络的强大表示学习能力和深度学习的非线性建模能力,从而提供了更准确和高效的解决方案。把房屋的面积作为神经网络的输入(称之为x),通过一个节点(一个小圆圈),最终输出价格(用y表示),这个小圆圈就是一个单独的神经元。

2023-09-23 05:10:04 288

原创 OpenCV自学笔记二十二:绘图及交互

创建了一个名为"Brightness"的滚动条,范围为[-100, 100],初始值为100。通过设置回调函数`update_brightness`,当滚动条的值发生变化时,根据滚动条值的变化修改图像的亮度,并在窗口中实时显示调节后的图像。上述示例代码创建了一张空白图像,在鼠标左键按下时,在鼠标位置绘制一个红色的圆形;最后,显示出绘制结果。- fontFace: 字体类型,例如cv2.FONT_HERSHEY_SIMPLEX。- cv2.EVENT_RBUTTONDOWN: 右键按下事件。

2023-09-22 16:32:23 243

原创 OpenCV自学笔记二十六:人脸检测

在上述示例中,我们首先加载训练数据集,并将每个人脸图像和对应的标签存储在`face_images`和`face_labels`列表中。接下来,加载要进行人脸识别的测试图像,并使用`predict()`函数对测试图像进行识别,得到预测的标签和置信度。最后,输出识别结果和置信度。接下来,加载要进行人脸识别的测试图像,并使用`predict()`函数对测试图像进行识别,得到预测的标签和置信度。接下来,加载要进行人脸识别的测试图像,并使用`predict()`函数对测试图像进行识别,得到预测的标签和置信度。

2023-09-22 16:23:59 505

原创 OpenCV自学笔记二十五:K均值聚类

在上述示例中,我们首先加载了一个图像,并将其转换为一维数组形式,也就是将每个像素的RGB值合并到一个数组中。接下来,使用`train()`函数进行聚类,得到每个数据点对应的聚类标签和聚类中心。然后,根据聚类标签,将原始图像中的每个像素的颜色替换为相应聚类中心的颜色。在OpenCV中,K均值聚类的函数为`cv.ml.Kmeans_create()`。运行以上代码,将展示原始图像和经过K均值聚类算法量化后的图像。其中,`setK()`函数设置了16个聚类,即将图像的颜色量化为16种。K均值聚类的原理很简单,

2023-09-22 16:08:30 237

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除