- 博客(17)
- 收藏
- 关注
原创 face_recognition人脸识别
欧几里得距离(Euclidean distance)是一种测量两个点之间直线距离的方式,常用于数学、物理学和计算机科学中的各种应用,包括机器学习中的数据点距离计算。如果计算出的距离小于这个阈值,则认为两张图片中的人脸是相同的;face_recognition 和 OpenCV 是两个独立的计算机视觉库,但它们在功能上有一些重叠,并且经常一起使用来完成复杂的视觉任务。- 相同身份的概率大 :在许多人脸识别系统中,如果计算出的距离小于某个设定的阈值,则系统会认为这两个面孔属于同一个人。
2024-11-05 19:03:43
817
原创 图像预处理2
因此,将图像噪声看成是多维随机过程是合适的,描述噪声的方法可以借用随机过程的描述,即用其概率分布函数和概率密度分布函数。高斯滤波的原理是利用高斯函数对图像进行加权平均。为了减少图像中的噪声,可以采取一些专业的图像处理技术,如图像降噪(Image Denoising),通过减少数字图像中的噪声来提高图像的质量。- 大 sigmaSpace 值 :当 sigmaSpace 较大时,空间上距离较远的像素也会被赋予较大的权重,这意味着滤波器会在更大的空间范围内进行平滑处理,导致图像的局部细节被进一步平滑。
2024-11-04 17:55:01
572
原创 图像预处理知识点总结
1. 方便图像处理:在不同的颜色空间中,对应的通道代表了不同的属性,例如在RGB空间中,红、绿、蓝三个通道分别代表了颜色的强度,而在HSV空间中,H(色相)代表了颜色的种类,S(饱和度)代表了颜色的深浅,V(亮度)代表了颜色的明暗。旋转矩阵是一个 2x3 的矩阵,可以用来将图像围绕指定的中心点旋转指定的角度,并且可以选择是否进行缩放。cv2.threshold 将灰度图像转换为二值图像,根据指定的阈值将像素值分为两类:高于阈值的像素设为一个值(通常是255),低于阈值的像素设为另一个值(通常是0)
2024-11-01 16:09:21
928
原创 OpenCV图像基础
获取帧宽width=cap.get(cv2.CAP_PROP_FRAME_WIDTH)#获取帧高height=cap.get(cv2.CAP_PROP_FRAME_HEIGHT)#获取帧率fps=cap.get(cv2.CAP_PROP_FPS)#设置帧宽cap.set(cv2.CAP_PROP_FRAME_WIDTH,640)#设置帧高cap.set(cv2.CAP_PROP_FRAME_HEIGHT,480)cv2.line() 是 OpenCV 库中的一个函数,用于在图像上绘制直线。
2024-10-31 19:24:55
446
原创 Python包和模块知识点总结1
*主模块 (`__name__` == `'__main__'`)**: 当一个模块是直接运行的,即不是通过 `import` 语句导入的,那么它的 `__name__` 属性会被赋值为 `'__main__'`。**被导入的模块 (`__name__` == 模块名)**: 当一个模块被导入到另一个模块中时,它的 `__name__` 属性会被赋值为它的模块名。1. 当一个模块是最先运行的模块,则这个模块是主模块, 主模块的`__name__` 属性绑定`'__main__'` 字符串。
2024-10-29 16:58:58
871
原创 Pandas库知识点总结(全)
data = { 'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8], 'C': [9, 10, 11, 12] } df = pd.DataFrame(data, index=['a', 'b', 'c', 'd']) # 添加新行 'e' df.loc['e'] = [17, 18, 19, 20]重置索引(reindex)可以更改原 DataFrame 的行标签或列标签,并使更改后的行、列标签与 DataFrame 中的数据逐一匹配。
2024-10-28 17:16:47
983
原创 数据结构知识点总结
import queue q = queue.PriorityQueue() # 向队列中添加元素,元素是一个元组 (priority, item),其中 priority 是优先级,item 是实际的数据 q.put((1,'item1')) q.put((3,'item3')) q.put((2,'item2')) print(q.get()) print(q.get()) print(q.get())数据结构是计算机科学中的一个核心概念,它是指数据的组织、管理和存储方式,以及数据元素之间的关系。
2024-10-28 17:13:41
1036
原创 Pandas库知识点总结2
importpandasaspd#创建一个示例Seriesseries=pd.Series([1,2,3],index=['a','b','c'])#遍历索引forindexinseries.index:print(f"Index:{index},Value:{series[index]}")重置索引(reindex)可以更改原 DataFrame 的行标签或列标签,并使更改后的行、列标签与 DataFrame 中的数据逐一匹配。如果为False,则返回一个新的排序后的对象。
2024-10-25 16:57:54
461
原创 Pandas知识点总结1
data={'A':[1,2,3,4],'B':[5,6,7,8],'C':[9,10,11,12]}df=pd.DataFrame(data,index=['a','b','c','d'])#添加新行'e'df.loc['e']=[17,18,19,20]data=[['小米',18],['小红',19],['小紫',20]]result=pd.DataFrame(data=data,columns=['name','age'])axis=1,删除列。所谓缺失值,顾名思义就是值不存在、丢失、缺少。
2024-10-24 17:16:44
464
原创 Matplotlib 库 知识点
常见的工具包如下: - Basemap:这是一个地图绘制工具包,其中包含多个地图投影,海岸线和国界线 - Cartopy:这是一个映射库,包含面向对象的映射投影定义,以及任意点、线、面的图像转换能力 - Excel tools: 这是 Matplotlib 为了实现与 Microsoft Excel 交换数据而提供的工具 - Mplot3d:它用于 3D 绘图 - Natgrid:这是 Natgrid 库的接口,用于对间隔数据进行不规则的网格化处理。
2024-10-23 17:12:04
924
原创 NumPy知识点总结(全)
这要求维数相同,且各维度的长度相同,如果不相同,可以通过广播机制,这种机制的核心是对形状较小的数组,在横向或纵向上进行一定次数的重复,使其与形状较大的数组拥有相同的维度。ndarray 对象采用了数组的索引机制,将数组中的每个元素映射到内存块上,并且按照一定的布局对内存块进行排列,常用的布局方式有两种,即按行或者按列。因此,对返回的数组进行修改会影响原数组。在NumPy中,计算方差时使用的是统计学中的方差公式,而不是概率论中的方差公式,主要是因为NumPy的设计目标是处理实际数据集,而不是概率分布。
2024-10-22 16:16:40
1177
原创 NumPy-1
一个一系列相同类型元素组成的数组集合数组中的每个元素都占有大小相同的内存块,可以使用索引或切片的方式获取数组中的每个元素。ndarray 对象采用了数组的索引机制,将数组中的每个元素映射到内存块上,并且按照一定的布局对内存块进行排列,常用的布局方式有两种,即按行或者按列。行:c语言,列:Forth语言。
2024-10-21 17:11:07
820
原创 10.18
迭代器是访问可迭代对象的工具迭代器是指用 iter(obj) 函数返回的对象(实例)迭代器可以用next(it)函数获取可迭代对象的数据生成器是在程序运行时生成数据,与容器不同,它通常不会在内存中保留大量的数据,而是现用现生成。yield 是一个关键字,用于定义生成器函数,生成器函数是一种特殊的函数,可以在迭代过程中逐步产生值,而不是一次性返回所有结果。跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。
2024-10-18 18:39:00
898
原创 Python类和对象1
类是创建对象的 ”模板”- 数据成员:表明事物的特征。相当于变量 - 方法成员:表明事物的功能。相当于函数通过`class`关键字定义类。class 类名 (继承列表): 实例属性(类内的变量) 定义 实例方法(类内的函数method) 定义 类变量(class variable) 定义 类方法(@classmethod) 定义 静态方法(@staticmethod) 定义类名必须为标识符(与变量的命名相同,建议首字母大写) 类名实质上就是变量,它绑定一个类。
2024-10-17 17:14:54
703
原创 Python函数相关知识
函数是可以重复执行的语句块,可以重复调用用于封装语句块, 提高代码的重用性。函数是面向过程编程的最小单位def 函数名(形参名1=默认实参1, 形参名2=默认实参2, ... ): 语句块缺省参数即默认实参,必须自右向左依次存在(即,如果一个参数有缺省参数,则其右侧的所有参数都必须有缺省参数)def 函数名(形参名1, 形参名2, ...): pass一个变量声明以后,在哪里能够被访问使用,就是这个变量"起作用"的区域:也就是这个变量的作用域。
2024-10-16 17:23:26
623
原创 python基础复习
元组推导式和列表推导式的用法也完全相同,只是元组推导式是用 () 圆括号将各部分括起来,而列表推导式用的是中括号 [],另外元组推导式返回的结果是一个生成器对象。元组推导式可以利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的元组。Python 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。list04 = copy.deepcopy(list01) # 深拷贝。外层循环控制行,内层控制列。列表(list)推导式。集合(set)推导式。
2024-10-15 18:12:47
304
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人