自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 opencascade 计算点到图形的最近距离

opencascade 使用过程中经常要计算某个点到某个 Edge 或者 Face 的最短距离,在opencascade 中有些算法可便捷地实现该功能。

2024-07-03 10:51:17 91

原创 opencascade 判断两个TopoDS-Shape 是否相同

如果我们想去掉重复的边,可以通过判断两条边是否相等实现(实际上不需要通过此方法),但是通过 == 运算符进行判断通常是无效的,即两条重合的边在运算符 == 下会被判定为否,那么我们想判断两条边是否相等如何实现?我们使用opencascade提取实体时,经常会出现实体重复,例如从正方体实体中提取Edge,我们会发现能提取出24个Edge,但正方体只有12条边,这是因为每条边有两个面,进行了重复提取。以上代码即可判断两条边是否相等,其它形状类似。TopTools_ShapeMapHasher 实现。

2024-06-21 20:35:34 212

原创 PythonOCC 安装方法

如题

2024-06-21 20:26:21 235

原创 STEP 格式三维模型读取

STEP是常用的三维模型存储格式,使用Express语言描述几何图形,文件存储方式为BRep,分为STEP203和STEP214,后者多了颜色信息,opencascade中提供了相应算法读取STEP文件。

2024-03-27 19:03:32 635 1

原创 TopoDS_Face的面积及TopoDS_Edge的长度

TopoDS_Face 和 TopoDS_Edge 是 opencascade 中常用的几何体表示方式,为面和边提供了统一的表达,其面积和长度计算应该也很常用。

2024-03-27 18:56:39 318

原创 Python使用其它文件夹中的.py文件

在python构建的工程中,A.py 可能要使用 B.py 文件中的函数、或者类、或者变量,如果这两个文件在同一个目录下,只需要在 A.py 中使用 import B 即可,但如果不在同一目录下,则这种方法不可用,将工程下的所有文件放在一个目录下又会显得混乱,那么如何解决这个问题?如下图所示,需要在 func_exam.py 中调用 models 文件夹下的 test_module.py 文件中的类。

2023-12-11 11:12:45 736

原创 深度学习常用指令(Anaconda、Python)

深度学习常用指令,便于查阅。

2023-11-28 16:51:45 682

原创 torch.nn.functional.log_softmax 函数解析

softmax 计算公式:log_softmax 计算公式:可见仅仅是将 softmax 最外层套上 log 函数。

2023-11-18 11:50:12 1630 1

原创 torch.tensor.max 函数解析

pytorch 中的函数 torch.tensor.max(dim, keepdim = False)用于求某一维的最大值。可见对第dim维度进行max操作,就是把其它维度固定,对dim维度所有值进行取最大值。返回值索引0为其数值,索引1为其最大值的索引。

2023-11-17 16:49:15 687

原创 李沐pytorch学习-DropOut

DropOut 即丢弃法,一般用于全连接层的隐含层,卷积层一般不用。在训练时随机把一些神经元丢弃,不参与运算,防止过度依赖某个神经元。被丢弃的神经元相关权重此次不参与更新。

2023-09-04 11:40:31 124

原创 torch.bmm功能解读

bmm 是 batch matrix multiple 的简写,即批量矩阵乘法,矩阵是二维的,加上batch一个维度,因此该函数的输入必须是两个三维的tensor,三个维度代表的含义分别是:(批量,行,列)。的第 i 个矩阵作乘法,i = 1, 2, 3, ..., a。因此为了矩阵乘法能够进行,c 和 e 必须相同。计算过程如图1所示。要求 a = d, c = e,即批量数相同,在计算时。的 shape 为 (a, b, c)的 shape 为 (d, e, f),与图1中绿色矩阵对应。

2023-09-03 15:01:32 729

原创 pytorch中nn.Conv1d功能介绍

output_channel=4,即由四个卷积核,每个卷积核的通道数和输入的通道数相同,这里是3,如图2所示,第一个元素'abc'的三个通道'a', 'b', 'c'输入第一个卷积核,得到红色数字,第二个单词经过卷积核得到黄色数字,排成一列得到第一个通道,四个卷积核得到输出的四个通道。在使用Conv1d函数时,pytorch默认你的数据是一维的,比如一句话“深度学习”可以用一个一维数组 ['深', '度', '学', '习'] 表示,这个数据就是一维的。卷积核大小为1,卷积核通道数和输入数据的通道数一致。

2023-09-02 22:01:48 1133 3

原创 李沐pytorch学习-BatchNormalization

计算主要涉及如下公式:为可学习的参数,对应新的方差和均值。其中:是一个很小的数,用于防止分母为零# 最好不要与DropOut组合使用# 可以加速收敛,一般不会增加正确率O_0R_0w_1w_0w_0%5Cbeta%5Cepsilon%5Cepsilon。

2023-08-27 20:29:02 187

原创 PointNet论文解读及代码详解

PointNet在结构设计时考虑了点云的上述特点,因此在输入点云中点的顺序发生改变时,其输出一定不会改变。此外在少量点缺失或者错误时,也能保证结果的稳定性。PointNet 有两个网络,一是分类,二是分割,分类即输入点云,输出其表达的物体类别。分割即输入点云,将其表达的物体的不同部件分开。

2023-08-26 19:33:09 739 4

原创 李沐pytorch学习-经典CNN的原理及代码实现

AlexNet赢了2012年ImageNet比赛是个更深更大的LeNet∷ ReLu作为激活函数,减缓梯度消失∷ 使用MaxPooling∷ 全连接层后加入了丢弃层(DropOut∷ 进行了数据增强(Data argumentation,截取图片一部分作为新增数据、或者调色温)DropOut:随机使某个神经元失效,以免训练后网络输出过度依赖某个神经元导致过拟合【深度学习】丢弃法(dropout)_苦逼的虾的博客-CSDN博客。

2023-08-21 11:24:23 680

原创 李沐pytorch学习-卷积网络及其实现

卷积计算过程如图1所示,即输入矩阵和核函数对应的位置相乘,然后相加得到输出对应位置的数。卷积计算过程该过程可以形象地从图2中展现。二维卷积示意图。

2023-08-19 12:58:04 1688

原创 李沐pytorch学习-深度学习网络构建

基于nn.Module自定义网络结构。通过继承nn.module,仅需实现。

2023-08-17 15:22:50 781

原创 李沐pytorch学习-多层感知机及其实现

介绍多层感知机的定义,原理及pytorch实现。

2023-08-16 00:01:03 1094

原创 李沐pytorch学习-矩阵求导

对于的计算结果,根据y和x的维度,可根据下图得到导数的维度图1. 矩阵求导结果维度图对于函数:此时 y 是标量,自变量为矩阵对自变量求导数求导样例如下:图2. 求导样例。

2023-08-15 19:47:17 178

原创 Qt 编译出的程序无法在其他电脑运行

解决Qt编译的程序无法在其他电脑执行的问题,为防止自己以后遗忘,留作记录。

2023-01-04 20:51:11 1666

原创 OpenCASCADE将图形保存至STEP文件

本文介绍利用opencascade保存三维图形至STEP文件的方法,亲测可用。

2022-12-01 16:35:27 1016

原创 QVariant使用方法,QTreeWidgetItem存放指针

一般类型存储://存储QVariant var;var.setValue(12);//使用int data=var.toInt();自定义类型存储:struct MyClass{ int id; QString name;};Q_DECLARE_METATYPE(MyClass)需要使用宏Q_DECLARE_METATYPE(MyClass),对于有命名空间的,需要在命名空间外使用该宏Q_DECLARE_METATYPE(FT::MyClass)。自定义类型需要有默

2021-06-26 09:19:56 1317

原创 Qt—QSplitter按比例设定窗口初始尺寸

对于一个QWidget窗口进行分割在构造函数内输入如下代码:QSplitter* aSplitter=new QSplitter(Qt::Horizontal, this);//创建水平窗口分割,垂直分割用Qt::VerticalQWidget* LeftWidget=new QWidget(aSplitter);//在aSplitter中添加左侧窗口QWidget* RightWidget=new QWidget(aSplitter);//在aSplitter中添加右侧窗口aSplitt

2021-04-19 16:43:34 4833 1

原创 MATLAB平面曲线按曲率上色&三维曲面颜色栏链接自定义属性(二维曲线第三维用颜色表示,三维曲面第四维用颜色表示)

平面曲线按曲率上色(曲线第三维用颜色表示)先上效果图正弦曲线按曲率上色自由曲线按误差上色自由曲面按误差上色曲线第三维用颜色表示实现方法:x=linspace(-10,10,100);y=sin(x);y(end)=NaN;z=abs(sin(x))./(1+cos(x).^2).^1.5patch(x,y,z,'EdgeColor','interp','linewidth',3);以上为示例代码,正弦曲线按曲率上色,复制到MATLAB可直接运行。x=linspace(-10,

2021-02-01 21:50:29 1772

原创 学习C++第105天

今天是第105天,老刘居然找我让我回去,真是正合我意!!!!!!!!!!!!!!!!!!!!!

2020-12-26 23:24:18 113

原创 学习C++第104天

今天去参观,坐车的时候听了下歌,感觉心情好多了。

2020-12-25 23:09:15 70

原创 学习C++第102天

哎,学了一点,但我不懂

2020-12-23 23:19:09 81

原创 学习C++第101天

aaaaaa

2020-12-22 22:36:39 82

原创 学习C++第100天

今天是第100天了,没想到100天后的我是这个样子。刘老师发了些专利让我看,但我今天把答辩的ppt都做完了

2020-12-21 22:44:27 177

原创 学习C++第99天

今天是第99天,明天就一百天了,哎,这研究生怎么读啊?????

2020-12-20 22:29:59 94

原创 学习C++第98天

。。。

2020-12-20 22:29:12 70

原创 学习C++第97天

又是

2020-12-20 22:28:40 66

原创 学习C++第96天

2020-12-20 22:27:59 69

原创 学习C++第95天

今天去准备先进制造技术期末作业了

2020-12-16 22:45:50 74

原创 学习C++第94天

opencascade好难学啊

2020-12-15 22:53:21 93

原创 学习C++第93天

又没学什么,真怀念以前每天学习的日子

2020-12-14 22:43:53 100

原创 学习C++第92天

今天是第92天,又是瞎忙活

2020-12-13 23:05:38 59

原创 学习C++第91天

1234

2020-12-13 23:05:04 71

原创 学习C++第90天

2020-12-13 23:04:34 101

原创 学习C++第89天

今天又是opencascade,很烦

2020-12-10 22:59:26 89

空空如也

空空如也

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

TA关注的人

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