- 博客(16)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 人工智能 - OpenCV - day5图像轮廓查找,直方图,模板匹配,霍夫变换,图像亮度变换,形态学变换
直方图是图像处理中用于量化图像像素强度分布的统计工具。它通过计算每个强度值(0-255)在图像中出现的频率,直观展示图像的亮度分布特征。直方图是对数据进行统计的一种方法,并且将统计值组织到一系列实现定义好的 bin 当中。其中, bin 为直方图中经常用到的一个概念,可以译为 “直条” 或 “组距”,其数值是从数据中计算出的特征统计量,这些数据可以是诸如梯度、方向、色彩或任何其他特征。直方图:反映图像像素分布的统计图,横坐标就是图像像素的取值,纵坐标是该像素的个数。
2025-08-04 17:29:17
596
原创 人工智能 -- OpenCV -- day4 图像梯度处理、图像边缘提取检测、绘制图像轮廓、凸包特征检测
是因为经过第二步得到的边缘不经过处理是没办法使用的,因为高斯滤波的原因,边缘会变得模糊,导致经过第二步后得到的边缘像素点非常多,因此我们需要对其进行一些过滤操作,而非极大值抑制就是一个很好的方法,它会对得到的边缘像素进行一个排除,使边缘尽可能细一点。在该步骤中,我们需要检查每个像素点的梯度方向上的相邻像素,并保留梯度值最大的像素,将其他像素抑制为零。假设当前像素点为(x,y),其梯度方向是0°,梯度值为G(x,y),那么我们就需要比较G(x,y)与两个相邻像素的梯度值:G(x-1,y)和G(x+1,y)。
2025-07-25 20:08:09
601
原创 人工智能 -- 图像认知与OpenCV -- day3 插值方法、边缘填充,图像矫正、图像掩膜、图像添加水印、图像噪点消除
在OpenCV中,插值方法主要用于。在图像处理和计算机图形学中,插值(Interpolation)是一种通过已知数据点之间的推断或估计来获取新数据点的方法。它在图像处理中常用于处理图像的放大、缩小、旋转、变形等操作,以及处理图像中的像素值。图像插值算法是为了解决图像缩放或者旋转等操作时,由于像素之间的间隔不一致而导致的信息丢失和图像质量下降的问题。当我们对图像进行缩放或旋转等操作时,需要在新的像素位置上计算出对应的像素值,而插值算法的作用就是根据已知的像素值来推测未知位置的像素值。
2025-07-24 22:15:38
632
原创 人工智能 -- 图像认知与OpenCV--day2 颜色色彩空间转换、颜色转换、灰度化、图像二值化处理、图像翻转、图像仿射变换
直方图是一个柱状图,其中 x 轴表示灰度级(从 0 到 255),y 轴表示对应灰度级在图像中出现的次数(频率)。每个柱子的高度代表该灰度级在图像中出现的像素数量。OTSU算法是通过一个值将这张图分前景色和背景色(也就是灰度图中小于这个值的是一类,大于这个值的是一类。例如,如果你设置阈值为128,则所有大于128的像素点可以被视作前景,而小于等于128的像素点则被视为背景。
2025-07-23 21:34:57
896
原创 人工智能 -- 图像认知与OpenVC -- day1 openvc、图像表示、存储、基本图像存储、图像绘制、读取视频
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,广泛应用于图像处理、物体识别、人脸检测、视频分析等领域。它提供了丰富的算法和高效的实现,支持多种编程语言(如C++、Python等),并能在不同平台上运行。凭借其强大的功能和活跃的社区支持,OpenCV已成为计算机视觉研究和开发中的重要工具,为开发者提供了便捷的解决方案,推动了视觉技术的创新与应用。无论是学术研究还是工业项目,OpenCV都展现了其不可替代的价值。
2025-07-22 18:40:20
980
原创 人工智能 -- python -- day10【模块化编程概念(模块、包、导入)及常见系统模块总结和第三方模块管理】
定义一个名为math_utils.py的模块:return a+breturn a-breturn a*breturn a/b用户自己编写的模块,用于复用代码。文件名以 $.py$ 结尾,存放自定义的函数、类等。1、创建一个utils.py文件:2、创建一个main.py文件,导入自定义模块:print(utils.add(3, 5)) # 输出: 8print(utils.greet("Alice")) # 输出: Hello, Alice!3、跨文件夹使用。
2025-07-20 08:17:39
846
原创 人工智能 -- python ——day9【迭代器和生成器的区别及其各自实现方式和使用场景】
自定义迭代器类return self # 迭代器返回自身else:raise StopIteration # 数据迭代结束# 使用自定义迭代器。
2025-07-17 19:00:49
596
原创 人工智能 -- python —— day8【类和对象的基本概念及属性和方法的常见分类和使用场景】
print(f"耗时: {time.time() - self.start:.2f}秒")print(bin(b + 1)) # 0b1011 (__index__使对象可用于数值运算)基类(base class)/超类(super class)/父类(father class)print(MathUtils.add(2, 3)) # 5(通过类调用)my_dog = Dog("Buddy", 3) # 创建Dog类的实例。print("调用 __init__ 方法,初始化对象")
2025-07-16 19:41:29
683
原创 人工智能 -- python -- day5【常见语句和内置函数】
用于定义一个函数,包含def关键字:"""计算BMI指数"""print(f"BMI指数: {result}")super().__init__(f"无效的邮箱地址: {email}")# 发送邮件逻辑...raise ValueError("余额不足")。
2025-07-13 11:19:05
344
原创 人工智能 -- Python -- day4【推导式、运算符】
功能:将a的二进制表示向左移动b位,左边移出的部分会被丢弃,右边空出的位置补零。相当于乘以2^n次方。功能:对于每一位,如果a和b的相应位不同(一个为1,另一个为0),则结果位为1,否则为0。对于有符号整数,右移时取决于具体实现,可能是算术右移(符号位扩展)或者逻辑右移(补0)。功能:对于每一位,只要a和b中至少有一位是1,则结果位为1,否则为0。功能:对于每一位,如果a和b的相应位都是1,则结果位为1,否则为0。功能:对操作数a的每一个二进制位进行取反,即将1变为0,0变为1。:或(逻辑或) 只要。
2025-07-11 20:27:06
688
原创 人工智能 -- Python -- day3【复合类型之序列类型、映射类型和集合类型总结】
自定义类的实例如果没有在类中明确限制其属性,可以修改实例的属性值,因此对象实例也是可变的。
2025-07-10 20:14:01
566
原创 人工智能--Python--day2【Python的基础变量类型之字符串和数字类型】
单引号: '允许包含有 "双" 引号'双引号: "允许嵌入 '单' 引号"三重引号: '''三重单引号''', """三重双引号"""使用反斜杠\对字符进行转义\' 代表单引号\" 代表双引号\n 代表换行符\\ 代表反斜杠\t 代表缩进字符串前加r表示原始字符串,定义一个路径,不转义;r'E:\基础--python'
2025-07-09 16:57:42
760
原创 人工智能 -- python--day1【conda环境配置及IDE(vsCode、PyCharm、Jupyter)开发环境配置】
环境包括和Anaconda,用于管理和创建运行Python代码的虚拟环境,用来Python代码Integrated Development Environment,集成开发环境,用来Python代码的;
2025-07-08 22:07:12
934
1
编程基础Python运算符详解:算术、比较、逻辑、位运算符及表达式应用入门教程
2025-06-05
【Python编程】基础数据结构详解:列表、元组、字典与集合
2025-06-04
关于#python#的问题,请各位专家解答!
2025-07-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人