- 博客(14)
- 收藏
- 关注
原创 图像认知与OpenCV | Day5:图像预处理(4)
为解决垂直于 x 轴直线无法映射问题,引入极坐标系,极坐标中的点对应霍夫空间中的线,霍夫空间中的点对应极坐标中的直线。该方法适用于图像的灰度分布不均匀,且灰度分布集中在更窄的范围,图像的细节不够清晰且对比度较低的情况,然而,传统的直方图均衡化方法会引入噪声,并导致图像中出现过度增强的区域。需要先计算模板与目标图像的均值,然后通过每个像素与均值之间的差的乘积再求和来表示其匹配程度,1表示完美的匹配,-1表示最差的匹配,计算过程举例如下。就是那个在原图中不断滑动计算的3*3的小区域,那其实就是一个3*3的核。
2025-07-29 11:04:12
1045
原创 图像认知与OpenCV | Day4:图像预处理(3)
定义:图像梯度 = 图像亮度变化的差分近似(离散导数),用于检测边缘。类比:将图像看作二维函数,梯度大的地方是边缘。
2025-07-25 20:12:01
1006
原创 图像认知与OpenCV | Day3:图像预处理(2)
定义:掩膜是一种在图像处理中常见的操作,用于选择性地遮挡图像的某些部分,以实现特定任务的目标。掩膜通常是一个二值化图像,并且与原图像的大小相同,其中目标区域被设置为1(或白色),而其他区域被设置为0(或黑色)。作用:通过掩膜可以对掩膜中的白色区域所对应的原图中的区域进行处理与操作,常用于图像的区域选择、颜色替换、与运算等操作。定义:图像添加水印是指将一张图片中的某个物体或图案提取出来,然后叠加到另一张图片上。
2025-07-24 20:00:08
1187
原创 图像认知与OpenCV | Day2:图像预处理(1)
首先还是对边界进行填充,然后计算原图中的左上角(也就是162像素值的位置)的二值化阈值,其计算过程如上图所示,再然后根据选择的二值化方法对左上角的像素点进行二值化,之后核向右继续计算第二个像素点的阈值,第三个像素点的阈值…阈值法就是通过设置一个阈值,将灰度图中的每一个像素值与该阈值进行比较,小于等于阈值的像素就被设置为0(通常代表背景),大于阈值的像素就被设置为maxval(通常代表前景)。而在自适应二值化中,每个像素的阈值是基于其周围邻域内的像素值动态确定的。未超过阈值的像素将被设置为0,表示黑色。
2025-07-23 20:08:00
1179
1
原创 图像认知与OpenCV | Day1:图像基础
OpenCV(开放源代码计算机视觉库)是一个开源的计算机视觉和机器学习软件库。由一系列 C++ 类和函数构成,用于图像处理、计算机视觉领域的算法实现。
2025-07-22 19:29:47
1037
原创 PYthon:模块化编程概念(模块、包、导入)及常见系统模块总结和第三方模块管理
模块核心功能典型使用场景高频方法示例代码os操作系统交互文件/目录操作、路径管理os.mkdir()os.path路径处理路径拼接、文件属性检查math数学运算科学计算、数值处理→ 4.0datetime日期时间处理时间格式化、时间差计算strftime()random随机数生成抽奖、密码生成、数据采样→ 'B'time时间相关操作延时、时间戳转换# 休眠3秒sys系统参数访问命令行参数、解释器配置sys.argvsys.pathsys.exit()# 获取脚本名re正则表达式操作。
2025-07-20 15:14:18
1043
原创 Python:迭代器和生成器的区别及其各自实现方式和使用场景
实现了迭代器协议(__iter__()和__next__()方法)的对象本质:一个包含状态(当前迭代位置)的对象使用yield关键字的特殊函数本质:一种创建迭代器的简便方式(语法糖)
2025-07-17 19:30:04
401
原创 Python :类和对象的基本概念及属性和方法的常见分类和使用场景
使用 @staticmethod 装饰器定义,没有类似 self 或 cls 的特殊参数,它的逻辑与类和实例的关联不大,更像是一个工具函数,放在类里只是为了组织代码。在Python中,没有真正的私有属性,通常用双下划线开头的属性来模拟私有属性,这类属性不能直接从类外部访问,只能在类内部通过方法访问。注意:构造方法(__new__)和初始化方法(__init__)都是类的特殊方法(魔术方法),但它们在对象创建过程中扮演不同角色。类方法是用于描述类的行为的方法,类方法属于类,不属于该类创建的对象。
2025-07-16 19:38:44
978
原创 Python:递归函数及装饰器函数
递归函数是指函数在其定义中直接或间接调用自身的一种函数。它通过将复杂问题分解为更小的同类子问题来求解。闭包必须满足以下三个条件:必须有一个内嵌函数内嵌函数必须引用外部函数中变量外部函数返回值必须是内嵌函数递归的优雅性:适合处理树形结构(如文件遍历、XML解析)和分治算法(如快速排序)。装饰器的灵活性:通过横向扩展(AOP思想)解决日志、权限等横切关注点。对比:递归是纵向分解问题,装饰器是横向增强功能。递归需警惕性能陷阱,装饰器需注意过度嵌套导致的可读性下降。递归:“自己调用自己,分而治之”
2025-07-15 18:53:34
998
原创 Python:函数的位置传参、关键词传参及其可变性和解包操作
Python函数传参方式主要包括位置传参和关键词传参,两者可混合使用但需遵循位置参数优先的规则。此外还介绍了可变参数(*args收集位置参数,**kwargs收集关键词参数)及其解包操作,以及参数默认值的设置方法。文章还分析了可变与不可变参数在函数中的处理差异:不可变参数采用值传递,函数内修改不影响外部;可变参数采用引用传递,函数内修改会改变原始对象,可通过创建副本来避免副作用。这些机制为Python函数提供了灵活的参数处理能力。
2025-07-14 18:52:37
851
原创 复合类型:序列类型、映射类型和集合类型总结
类型可变性有序性元素唯一性索引访问切片支持定义方式典型用途列表可变有序不唯一访问支持[1, 2, 3]存储可变数据序列元组不可变有序不唯一访问支持(1, 2, 3)存储不可变数据序列字符串不可变有序不唯一访问支持"hello"处理文本数据字典可变无序键唯一键访问不支持存储键值对集合可变无序唯一不可访问不支持{1, 2, 3}去重或集合运算固定集合不可变无序唯一不可访问不支持不可变的集合运算。
2025-07-10 19:30:47
750
原创 conda环境配置及IDE(vsCode、PyCharm、Jupyter)开发环境配置
Anaconda 是一款功能强大的开源 Python 数据科学平台,能实现环境管理、包管理,且支持 Windows、macOS、Linux 等多系统,是 Python 开发的重要基础工具。
2025-07-08 19:46:27
661
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人