自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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 -- day7【递归函数、闭包、装饰器】

在函数体内调用函数自身。

2025-07-15 19:40:17 411 1

原创 人工智能 -- python -- day7【匿名函数、高阶函数】

在函数体内调用函数自身。

2025-07-15 18:50:02 379

原创 人工智能 -- Python -- day6【函数的位置传参、关键词传参及其可变性和解包操作】

可以结合。

2025-07-14 19:33:08 948

原创 人工智能 -- 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运算符详解:算术、比较、逻辑、位运算符及表达式应用入门教程

内容概要:本文详细介绍了Python中的各类运算符及其用法,包括算术运算符(如加、减、乘、除、取模、幂运算、整除)、比较运算符(如等于、不等于、大于、小于等)、逻辑运算符(如与、或、非)、赋值运算符(如简单赋值、加法赋值、减法赋值等)、位运算符(如按位与、或、异或、取反、左移、右移)、身份运算符(如is、is not)、成员运算符(如in、not in)。此外,还介绍了三目运算符、表达式的概念以及不同类型表达式的具体应用,包括算术表达式、比较表达式、逻辑表达式、赋值表达式、成员表达式、身份表达式、函数调用表达式和推导式。; 适合人群:初学者和有一定编程基础的Python开发者,特别是希望深入理解Python运算符和表达式机制的人群。; 使用场景及目标:①掌握Python中各种运算符的具体使用方法;②理解不同运算符之间的优先级和结合性;③学会如何在实际编程中灵活运用这些运算符来构建复杂的表达式,提高代码效率和可读性。; 阅读建议:本文内容较为基础但全面,建议读者结合实际编程练习,逐步掌握每种运算符的应用场景,并尝试编写和调试相关代码,以加深理解和记忆。

2025-06-05

【Python编程】基础数据结构详解:列表、元组、字典与集合

内容概要:本文详细介绍了Python中三种重要的数据结构:列表、元组和字典,以及集合和不可变类型的概念。对于列表,讲解了创建、基本运算(如拼接、追加、删除)、索引和切片操作,以及增删改查的方法。元组作为不可变序列,文章描述了它的创建、运算、访问方式及其与列表的区别。字典部分涵盖了字典的创建、操作(增删改查)、常用API(如get、items、keys、values、update、pop)等。集合和固定集合(frozenset)则强调了它们的创建、添加和删除元素的方法,以及集合的特性。最后,文章区分了Python中的可变与不可变类型,列举了常见的不可变类型(如int、str、tuple、frozenset)和可变类型(如list、dict、set)。 适合人群:适合有一定Python基础,希望深入了解Python数据结构及其操作的程序员或学生。 使用场景及目标:①掌握列表、元组、字典、集合等数据结构的创建和基本操作;②理解可变与不可变类型的差异及其应用场景;③提高代码效率,选择合适的数据结构来解决问题。 阅读建议:由于本文内容涉及大量具体操作和示例代码,建议读者在阅读过程中动手实践,尝试编写代码并测试不同操作的效果,以便更好地理解和掌握这些数据结构的特性和用法。

2025-06-04

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

TA关注的人

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