- 博客(66)
- 资源 (10)
- 收藏
- 关注
原创 with contextlib.suppress(ValueError)临时抑制指定的异常
上下文管理器会捕获这个异常并阻止它传播,从而允许代码执行继续。这种方式在清理资源或执行不确定的操作时非常有用,你想要程序即便出现了已知的、可以忽略的异常也能继续运行。是 Python 的一个上下文管理器,用于临时抑制指定的异常。如果你有一些代码,你知道可能会抛出某种异常,但你想安全地忽略它,那么可以使用。再看一个实际的例子,假设你正在处理文件,并希望在文件不存在的情况下静默地忽略。将捕捉并“忽略”这个异常,程序将继续执行打印语句。块更为清晰,它明确表示了你的意图是忽略特定的异常。在上面的代码中,即使。
2023-11-10 16:30:30
325
原创 float(‘inf‘)与float(‘-inf‘)
在做比较和数学运算时,无穷大在许多方面的行为就像是一个非常大或非常小的数字,但它仍然有一些特殊的行为规则。是无穷大(infinity)的缩写。在数学中,无穷大是比任何实数都大的数。在Python中,它是。在使用无穷大进行数学运算时需要小心,因为某些运算可能会产生不是真正数字的结果,例如。类型,可以用于比较操作或作为数学运算中的一个边界值。Python同样支持负无穷大,表示方法是。是一种表示正无穷大的方法。
2023-11-08 17:44:41
2195
原创 property() 函数及@property装饰器
在Python中,函数和装饰器通常用于创建和管理类的属性。它们提供了一种控制类属性访问的机制,允许你在不改变类外部接口的情况下,在获取、设置或删除属性时添加自定义逻辑。函数函数可以在不使用装饰器的情况下创建属性。它通常用于老式的代码或者在需要动态创建属性的时候。函数最多可以接受四个参数:使用函数的一个例子:装饰器装饰器是一个更加现代和优雅的方式来创建属性。它使你能够轻松地将一个方法转变为一个看似只读的属性,并且可以选择性地为这个属性添加setter和deleter。在Python中,装饰器是一个内置装
2023-11-07 09:57:32
181
原创 `from pathlib import Path`模块,文件系统路径处理
是一个 Python 标准库,它提供了一种面向对象的方法来处理文件系统路径。它提供了许多类,但是最核心的是。类,这是所有文件系统路径都应使用的类。虽然输出的是字符串,但实际上是一个。显示内容由 Path 类的。如果你只想得到字符串表示,不想要。操作符可以方便地构建子路径。对象表示文件系统上的路径。: 返回当前工作目录。
2023-11-06 18:01:21
1311
原创 IoU、GIoU、CIoU、DIoU(附加代码)
IoU有两个个弊端,第一个就跟下面这张图一样,预测框和真实框之间的IoU都为0,但是上面的预测的预测框明显要比下面的好一点,那这样IoU_loss就没有了对比性。第二个弊端就是下面的图片,它们的IoU其实都是一样的,但是两个矩形框的重合的明显有差别,那IoU_loss此时也失去了对比性。好像是为了加快GIoU的收敛速度,DIOU在IOU损失的基础上加一个惩罚项,用来最小化两个检测框中心点之间的标准化距离。IoU的值表示预测框A和真实框B之间交并比的差值,反映预测检测框的检测效果。所以GIoU就来了。
2022-10-25 12:18:50
565
1
原创 C++ Primer笔记(3.3.3)——其他vector操作
C++ Primer笔记(3.3.3)——其他vector操作#include<iostream>#include<string>#include<vector>using std::string;using std::vector;/*************************************************************************************************//*
2022-04-12 15:33:59
157
原创 C++ Primer笔记(3.3.2)—— 向vector对象中添加元素
C++ Primer笔记(3.3.2)—— 向vector对象中添加元素/************************************************************************************************//* 举个例子,如果像创建一个vector对象令其包含从0到9共10个元素,使用列表初始化的方法很容易做到, *//* 但如果vector对象包含的元素是从0到99或者从0到999呢?这时通过列表初始化把所有元素都一一罗列就 *//*
2022-04-09 16:12:55
1454
原创 C++ Primer笔记(3.3.1 )—— 定义和初始化vector对象
C++ Primer笔记(3.3.1 )—— 定义和初始化vector对象/********************************************************************//* 标准库类型vector表示对象的集合,其中所有对象的类型都相同。 *//* 想要使用vector,必须包含适当的头文件。在后续的例子中,都将假定做 *//* 了如下:using声明:
2022-04-05 14:44:21
651
原创 C++ Primer笔记(3.2.3 )—— 处理string对象中的字符
C++ Primer笔记(3.2.3 )—— 处理string对象中的字符#include<iostream>#include<string>#include<cctype>/********************************************************************************************//* string的操作
2022-04-01 15:38:28
862
原创 C++ Primer笔记(3.2.2 )—— string对象上的操作
C++ Primer笔记(3.2.2 )—— string对象上的操作#include<iostream>#include<string>/***********************************************************************************//* string的操作 *//*
2022-03-31 19:59:27
933
原创 C++ Primer笔记(3.2.1)—— 定义和初始化string对象
C++ Primer笔记(3.2.1)—— 定义和初始化string对象/********************************************************************************************//* 标准库类型string表示可变长的字符序列,使用string类型必须首先包含string头文件。作为标准库 *//* 的一部分,string定义在命名空间std中。
2022-03-29 14:06:51
553
原创 C++ Primer笔记(3.1)—— 命名空间的using声明
C++ Primer笔记(3.1)—— 命名空间的using声明/*****************************************************************************************//* 目前为止,我们用到的库函数基本上都属于命名空间std,而程序也显示地将这一点标示了出来。 *//* 例如, std::cin 表示从标准输入中读取内容。 作用域操作符(::)的含义是:编译器从操作符左 *//* 侧名字所示的作用域中寻找右侧那个名字。
2022-03-25 10:55:08
1099
原创 C++ Primer笔记(2.6.2)—— 使用Sales_data类
C++ Primer笔记(2.6.2)—— 使用Sales_data类Sales_data.h头文件#pragma once/********************************************************************************************************//* 头文件通常包含那些只能被定义的实体,如类、const、constexpr变量等。头文件也经常用到其他头文件的功能。 *//* 例如,我们的Sales_data
2022-03-24 13:38:16
1058
原创 C++ Primer笔记(2.6.1)—— 自定义数据结构(定义Sales_data类型)
C++ Primer笔记(2.6.1)—— 自定义数据结构(定义Sales_data类型)#include<iostream>/**********************************************************************//* 从最基本的层面理解,数据结构是把一组相关的数据元素组织起来然后使 *//* 用它们的策略和方法。举一个例子,Sales_item类把书本的ISBN编号、 *//* 售出量及销售收入等数据组织在了一起
2022-03-19 11:36:07
1074
原创 C++ Primer笔记(2.5.3)—— decltype类型指示符
C++ Primer笔记(2.5.3)—— decltype类型指示符#include<iostream>/**********************************************************************//* 有时会遇到这种情况:希望从表达式的类型推断出要定义的变量类型,但是 *//* 不想用该表达式的值初始化变量。 *//* 说明符decltype,的作用是选择并
2022-03-05 13:55:49
139
原创 C++ Primer笔记(2.5.2)—— auto类型说明符
C++ Primer笔记(2.5.2)—— auto类型说明符#include<iostream>/******************************************************************//* 编程时常常需要把表达式的值赋给变量,这就要求在声明变量的时候 *//* 清楚地知道表达式的类型。为了解决这个问题,C++11引入了auto类型 *//* 说明符,auto让编译器通过初始值来推算变量的类型。显然,auto定 *//*
2022-03-02 11:12:04
149
原创 C++ Primer笔记(2.5.1)—— 类型别名
C++ Primer笔记(2.5.1)—— 类型别名#include<iostream>/************************************************************************************//* 类型别名(type alias)是一个名字,它是某种类型的同义词。使用类型别名有很多好处,*//* 它让复杂的类型名字变得简单明了、易于理解,还有助于程序员理解。 *//******
2022-03-01 12:22:28
256
原创 C++ Primer笔记(2.4.4)——constexpr和常量表达式
C++ Primer笔记(2.4.4)——constexpr和常量表达式#include<iostream>/******************************************************************************************//* 常量表达式(const expression)是指值不会改变而且在编译过程中就能得到计算结果的表达式 *//* 显然,字面值属于常量表达式,用常量表达式初始化的const对象也是常量表
2022-02-28 15:12:09
382
原创 C++ Primer笔记(2.4.3)——顶层const和底层const
C++ Primer笔记(2.4.3)——顶层const和底层const#include<iostream>/******************************************************************************************//* 指针本身是一个对象,它又可以指向另外一个对象。因此,指针本身是不是常量以及指针所值的 *//* 是不是一个常量就是两个相互独立的问题。
2022-02-27 13:01:59
615
原创 C++ Primer笔记(2.4.2)——指针和const
C++ Primer笔记(2.4.2)——指针和const#include<iostream>/******************************************************************************//* 指向常量的指针 与引用一样,也可以令指针指向常量或非常量。类似于常量引用, *//* 指向常量的指针不能用于改变其所指向对象的值。 *//* 要像存放常量对象的地址
2022-02-26 14:24:50
281
原创 C++ Primer笔记(2.4.1)——const限定符
C++ Primer笔记(2.4.1)——const限定符#include<iostream>/******************************************************************************************//* 有时我们希望定义这样一种变量,它的值不能被改变。例如,用一个变量来表示缓冲区的大小。 *//* 使用变量的好处是当我们觉得缓冲区大小不再合适时,很容易对其进行调整。另一方面,也应随 *//* 时
2022-02-25 11:48:28
109
原创 C++ Primer笔记(2.3.3)——指向指针的指针
C++ Primer笔记(2.3.3)——指向指针的指针#include<iostream>/*****************************************************************************//* 一般来说,声明符中修饰符的个数并没有限制。当有多个修饰符连写在一起时, *//* 按照其逻辑关系详加解释即可。以指针为例,指针是内存中的对象,像其他对象 *//* 一样也有自己的地址,因此允许把指针的地址再存放到另一个
2022-02-24 11:19:12
252
原创 C++ Primer笔记(2.3.2)——指针
C++ Primer笔记(2.3.2)——指针#include<iostream>#include<cstdlib>/*****************************************************************************//* 与引用类似,指针也是实现了对其他对象的间接访问。然而与引用不同的是: *//* 1. 指针本身就是一个对象,允许对指针赋值和拷贝
2022-02-23 15:23:06
467
原创 C++ Primer笔记(2.3.1)—— 引用
C++ Primer笔记(2.3.1)—— 引用#include<iostream>/**********************************************************************//* 引用(reference)是为对象起的另外一个名字,引用类型引用另外一种类型。 *//* 通过将声明符写成 &d 的形式来定义引用类型 *//*********************
2022-02-22 16:52:40
323
原创 tensor.contiguous()
tensor.contiguous 的作用 之前看一些大佬的代码,在对一些feature map进行维度转换处理的时候,在使用tensor.transpose() 等一些维度变换函数后,会先使用 tensor.contiguous() 然后再用tensor.view() 这种维度变形函数。 pytorch官方给的函数解释为: Returns a contiguous in memory tensor containing the same data as self tensor. If s
2021-12-22 20:51:32
2862
原创 VGG16 结构图 + pytorch代码
VGG16 结构图 + pytorch代码VGG16 结构图pytorch 网络代码VGG16 结构图需要清晰一点的可以下PDF文件:链接: https://pan.baidu.com/s/1RaEeupUKzEQPnfy02Idp3g.密码是:cn0t pytorch 网络代码import torchimport torch.nn as nnimport torch.nn.functional as Fclass conv_pool_block(nn.Module): de
2021-12-06 14:44:44
1594
原创 论文笔记(1)——Benchmark Analysis of Representative Deep Neural Network Architectures
论文笔记(1)——Benchmark Analysis of Representative Deep Neural Network Architectures论文连接文章解读⚪ 准确率VS计算复杂度VS模型复杂度⚪准确率VS学习能力![在这里插入图片描述](https://img-blog.csdnimg.cn/2ddc38e81fae4a23b152d9bbbb38d5c1.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,sha
2021-11-24 21:34:54
635
原创 C++学习笔记(四)—— 构造函数初始化 const 成员变量
C++学习笔记(四)—— 构造函数初始化 const 成员变量 学习网站:链接: C语言中文网.http://c.biancheng.net/ 初始化 const 成员变量的唯一方法就是使用初始化列表。例如 VS/VC 不支持变长数组(数组长度不能是变量),我们自己定义了一个 VLA 类,用于模拟变长数组,请看下面的代码:class VLA{private: const int m_len; int *m_arr;public: VLA(int len);};//必
2021-10-27 10:16:11
698
2
原创 C++学习笔记(三)—— 构造函数初始化列表顺序关系
C++学习笔记(三)—— 数组所谓数组,就是一个集合,里面存放了相同类型的数据元素特点1: 数组中的每个数据元素都是相同的数据类型特点2: 数组是由连续的内存位置组成的
2021-10-27 10:07:55
181
原创 什么是精确率、召回率、F1?
F1分数是统计学中用来衡量二分类模型精确度的一种指标。它同时兼顾了分类模型的精确率和召回率。F1分数可以看作是模型精确率和召回率的一种加权平均,最大值为1,最小为0。精确率体现的是在所有预测出的样本中,有多少是被正确预测的。召回率是针对原先实际样本而言,有多少样本本准确预测。
2021-10-18 10:02:32
2579
原创 C++ 图像处理——卡尺法拟合两条直线并计算夹角(附代码)
C++ 图像处理——卡尺法拟合两条直线并计算夹角使用语言:C++/Opencv4.3效果图片:代码链接: https://download.csdn.net/download/qq_40374812/21105786拟合直线原理在这:https://blog.csdn.net/qq_40374812/article/details/119614290?spm=1001.2014.3001.5502.代码是可以用的,自己敲的,注释也尽可能打详细了。收个10块钱,混口饭吃。...
2021-08-16 10:06:08
1976
1
卡尺法拟合两条直线并计算夹角.zip
2021-08-16
卡尺标定法拟合直线.zip
2021-08-11
卡尺标定法径向扫描拟合圆V2.0.rar
2021-07-28
卡尺标定法径向扫描拟合圆.rar
2021-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人