- 博客(117)
- 收藏
- 关注
原创 图像处理|顶帽操作
顶帽操作是形态学操作中的一种,它通过对图像进行闭运算(膨胀后腐蚀),然后与原图像求差来突出图像中的亮区域。OpenCV提供了简单的接口来实现顶帽操作,可以通过调整结构元素的形状和大小来控制其效果。例如,选择一个较大的结构元素可以填补更多的背景空洞,而较小的结构元素则会更专注于局部的细节部分。在顶帽操作后的图像中,图像中小的亮区域(例如物体的细节或噪点)会被突出显示。顶帽操作(TopHat)是由闭运算(Closing)和原图像之间的差异得到的。通过调整结构元素的大小和形状,可以控制顶帽操作的强度和效果。
2025-01-20 09:04:08 600
原创 设计模式-结构型-装饰器模式
装饰器模式是一种强大的设计模式,提供了一种灵活的方式来扩展对象的功能。通过将对象封装在另一个对象中,装饰器可以在不修改原始对象的情况下,为对象添加新的行为。这种模式使得我们可以通过组合多个装饰器来动态增加功能,而避免了类继承的复杂性,符合“开闭原则”。装饰器模式(Decorator Pattern)是结构型设计模式中的一种,它允许你通过将对象封装在一个新的对象中,来动态地添加新的功能,而无需改变原对象的结构。装饰器模式在许多实际应用中都有广泛的使用,特别是在需要动态增强对象功能的场景中。
2025-01-17 15:15:00 956
原创 图像处理|闭运算
闭运算是形态学操作中的一个重要步骤,它通过先膨胀再腐蚀的方式,在填补图像小空洞的同时去除噪声点。它在图像预处理、物体分割和特征增强等领域具有广泛的应用。通过合理选择结构元素的大小与形状,闭运算能够高效处理各种图像问题。
2025-01-17 08:46:36 1073
原创 自动化办公|xlwings简介
在 Windows 环境下,xlwings 允许用户使用 Python 编写自定义函数,并在 Excel 中像普通公式一样调用这些函数。
2025-01-14 13:58:39 784
原创 图像处理|开运算
开运算是图像处理中的重要操作,能够有效去除噪声,同时保持目标物体的整体结构。它是腐蚀和膨胀的组合,适用于多种应用场景。通过调整结构元素的大小和形状,可以灵活应对不同的图像处理需求。
2025-01-14 10:03:58 555
原创 Python对象的序列化和反序列化工具:Joblib与Pickle
在Python中,序列化是将内存中的对象转换为可存储或传输的格式的过程。常见的序列化格式有JSONYAMLPickle和Joblib等。其中,Pickle和Joblib是最常用的用于序列化和反序列化Python对象的工具。虽然这两者有很多相似之处,但它们在某些方面有所不同,适用于不同的场景。本文将详细介绍Joblib和Pickle的区别,以及在实际应用中选择它们的考虑因素。
2025-01-10 14:29:16 902
原创 图像处理|腐蚀操作
腐蚀操作是图像形态学中常用的一种技术,通过将图像中的亮区域“收缩”,达到去除噪声、分离物体、增强边缘等效果。它与膨胀操作是对立的,可以在图像处理任务中根据需要选择使用。通过 OpenCV,腐蚀操作可以轻松实现,并且可以结合其他形态学操作实现更加复杂的图像处理任务。
2025-01-10 10:21:29 1601 1
原创 设计模式-结构型-组合模式
组合模式(Composite Pattern)是一种结构型设计模式,它允许将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端对单个对象和组合对象的使用具有一致性。换句话说,组合模式允许你将多个对象组合成一个复合对象,然后统一处理这些对象。核心思想组合模式通过将简单对象(叶子节点)和复合对象(包含子对象的树形结构)统一视为相同的类型,从而简化客户端对不同类型对象的处理。它常用于表示树形结构,如目录结构、组织架构等。组合模式。
2025-01-09 16:09:25 1341
原创 什么是ONNX
ONNX 是深度学习模型互操作性的核心技术,提供了一个统一的标准,简化了模型的跨框架迁移和硬件部署。无论是开发复杂的深度学习应用,还是优化模型的推理性能,ONNX 都是一个强大的工具。如果您在深度学习项目中需要模型跨平台兼容或高效部署,不妨尝试使用 ONNX,它可以为您的项目带来灵活性和性能提升!
2025-01-09 11:23:39 1146
原创 设计模式-结构型-桥接模式
桥接模式(BridgePattern)是一种结构型设计模式,它旨在将抽象部分与实现部分分离,使它们可以独立变化。通过这种方式,系统可以在抽象和实现两方面进行扩展,而无需相互影响。核心思想桥接模式的核心思想是将抽象与实现解耦,使得它们可以独立扩展。它通过引入一个“桥接接口”,在抽象层和实现层之间建立一个桥梁。适用场景需要在两个维度上扩展:比如图形与颜色、设备与操作系统等。避免类的数量爆炸:当类的组合维度过多时,使用桥接模式可以避免创建大量的子类。希望实现抽象和具体实现分离:提高系统的灵活性和可维护性。
2025-01-08 14:45:00 751
原创 图像处理|膨胀操作
膨胀操作的核心思想是通过特定的结构元素(Kernel),对图像的前景(通常是白色区域)进行扩展,使得图像中的前景对象变得更大。原理膨胀操作是形态学操作中的一种基础操作,通过扩展前景区域实现图像增强。本文从概念到代码实现,再到实际应用,对膨胀操作进行了全面解析。核心要点。
2025-01-08 08:55:28 889
原创 设计模式-结构型-适配器模式
适配器模式属于结构型模式,它通过将一个类的接口转换为客户端所期待的另一个接口,使得原本接口不兼容的类可以一起工作。定义适配器模式是一个非常实用的设计模式,它通过将不兼容的接口转换为目标接口,帮助我们解决系统中不同模块或类之间接口不一致的问题。无论是类适配器模式还是对象适配器模式,都能够使得不同接口的类能够一起工作,提高代码的复用性、灵活性和扩展性。适配器模式的核心优势。
2025-01-06 15:15:00 1078
原创 图像处理 | 图像二值化
图像二值化是指将彩色或灰度图像转换为二值图像(也称为黑白图像)的过程。二值图像只有两种像素值,一般是0和255,分别代表黑色和白色。二值化的目标图像二值化是图像处理中非常基础且重要的操作。它将图像中的信息压缩为仅含两种颜色的图像,在许多领域中都有广泛应用。通过简单的阈值选择或更先进的自适应和 Otsu 方法,图像的前景和背景可以被清晰地分离出来,从而为后续的图像分析和处理提供便利。全局阈值法:简单高效,但在复杂图像中可能效果不好。自适应阈值法:适应性强,处理光照不均匀的图像效果好。Otsu's 方法。
2025-01-06 09:07:33 1493 3
原创 形态学:图像处理中的强大工具
形态学是图像处理中一个重要且强大的工具,它通过简单的像素操作,可以有效提取图像中的结构信息。无论是去噪、边缘检测、物体分离,还是图像增强,形态学操作都扮演着重要的角色。在实际应用中,通过合理选择结构元素和操作顺序,可以针对特定问题获得理想的处理效果。无论是基础研究还是工业应用,形态学都是图像处理领域不可或缺的技术之一。
2025-01-03 14:46:25 649
原创 设计模式-创建型设计模式总结
创建型设计模式(Creational Design Patterns)是中的一类,专注于如何实例化对象或类。它们提供了一些优雅的方式来创建对象,允许程序在对象创建过程中更灵活地进行管理,从而提高系统的扩展性和维护性。创建型设计模式的主要目的是解耦对象的创建与使用,从而使得系统在面对变化时更加灵活。它们通过不同的方式来控制对象的创建过程,允许客户端代码以不同的方式来实例化对象。
2025-01-03 08:44:52 1348
原创 自动化办公 | 用 Python 处理学生成绩表,实现班级平均分和成绩分班
快速计算班级平均分。将数据按班级分组并排序。将处理后的结果存储到独立的 sheet 中,方便查看和分享。这种方式极大地减少了人工操作的时间,尤其适合于需要处理大量数据和分组操作的场景。无论是学校的成绩处理,还是企业的数据分析,这种自动化流程都可以大幅提升效率。代码扩展:如果你需要对成绩添加更复杂的统计,比如分数段人数统计、最高分和最低分计算,也可以在此基础上轻松扩展!
2025-01-02 15:15:00 481
原创 设计模式-原型模式
通过克隆一个已存在的对象来创建新对象,而不需要重新初始化。这种模式通过一个原型接口(Prototype Interface)来定义对象的复制行为,然后通过具体实现类实现克隆方法,生成对象的副本。pass原型模式是一种强大的创建型设计模式,尤其适合在需要频繁创建复杂对象的场景中使用。通过克隆对象,原型模式不仅能提高性能,还能简化代码。尽管原型模式在某些场景中非常有效,但它的复杂性也要求开发者在使用时考虑到对象的深拷贝、循环引用等问题。
2025-01-02 09:20:43 1445
原创 设计模式-建造者模式
建造者模式用于构建一个复杂的对象。它的主要思想是将对象的构建过程与其表示分离,允许通过相同的构建过程创建不同的表示。passpasspassdef get_computer(self): # 获取建造结果pass# 指挥者负责指挥具体建造者建造产品建造者模式通过分离对象的创建过程和表示,使得我们能够更加灵活、简洁地构建复杂对象。它在需要创建复杂对象或多个不同配置的对象时非常有用,可以有效减少构造函数的复杂度,同时提高代码的可维护性和可扩展性。
2024-12-31 13:52:49 1151
原创 自动化办公 | 根据成绩进行自动评级
假设你需要根据不同的情况进行不同的评级,比如更改评分标准或添加额外的条件,修改grade()函数即可。这种灵活性使得这个脚本非常适合用于不同的业务需求。通过这篇文章,我们展示了如何使用 Python 和 Pandas 完成一个常见的自动化办公需求——根据成绩进行评级。借助 Python 的强大库,我们能够快速读取和处理表格数据,自动化执行评级逻辑,并将处理后的数据导出为新的文件。这种方式不仅减少了人工操作的时间,还提高了处理的准确性和效率。
2024-12-31 09:14:19 810
原创 设计模式-抽象工厂模式
抽象工厂模式(Abstract Factory Pattern)是一个非常常见且重要的模式,它属于创建型模式,用于提供创建一组相关或相互依赖对象的接口,而无需指定具体类。它的核心思想是将“创建对象”这一功能封装到工厂类中,从而避免了直接实例化具体对象,进而实现了解耦。
2024-12-30 14:23:57 1357
原创 自动化办公-将 Excel 的 Sheet 页拆分成单独的 Excel 文件
通过 Python 的openpyxl和pandas库,我们可以轻松地将一个 Excel 文件中的每个工作表保存为单独的 Excel 文件。pandas:适用于数据分析和处理,操作简便,尤其在处理数据量较大的 Excel 文件时非常高效。
2024-12-30 09:20:01 1019
原创 自动化办公-合并多个excel
在日常的办公自动化工作中,尤其是处理大量数据时,是一个常见且繁琐的任务。幸运的是,借助 Python 语言中的强大库,我们可以轻松地自动化这个过程。本文将带你了解如何使用 Python 来合并多个 Excel 表格,节省时间并提高工作效率。
2024-12-27 15:30:00 1848
原创 设计模式-创建型-工厂方法模式
工厂方法模式(Factory Method Pattern)是创建型设计模式之一,目的是通过定义一个用于创建对象的接口,让子类决定实例化哪个类。简而言之,工厂方法模式通过延迟对象的创建过程到子类来减少代码耦合,使得代码更加灵活且易于扩展。首先,我们定义一个Shape接口,所有的具体图形类(如Circle和Square)都需要实现这个接口。pass然后,我们定义一个接口,声明一个方法,返回一个Shape对象。pass。
2024-12-27 09:24:12 1088
原创 设计模式-创建型-单例模式
单例模式(Singleton Pattern)是一种常见的创建型设计模式,它确保一个类只有一个实例,并提供全局访问点。在很多情况下,我们只希望某个类在整个应用程序中有一个唯一的实例,且该实例需要在整个系统中共享。保证类只有一个实例:不管创建多少次,始终只有一个对象实例。提供全局访问点:通过某种方式让全局各处都能访问这个唯一的实例。单例模式是一个非常常见的设计模式,广泛应用于系统中需要共享资源、配置管理、日志等场景。它通过控制实例的创建过程确保了类只有一个实例,且提供了全局访问点。
2024-12-26 14:47:29 854
原创 使用 OpenCV 在图像中添加文字
是 OpenCV 中的一个函数,用于在图像上绘制文本。通过该函数,我们可以指定文本的内容、位置、字体、大小、颜色等属性。在 OpenCV 中,使用函数,我们可以轻松地在图像上添加各种文本。可以通过调整字体类型、大小、颜色、粗细等属性,来满足不同的需求。同时,通过计算文本的尺寸,还可以实现文本的精确对齐(如居中、右对齐等)。这些操作在图像标注、生成图表、图像处理和计算机视觉任务中都非常有用。
2024-12-26 09:20:49 1354
原创 使用 OpenCV 绘制线条和矩形
通过 OpenCV 绘制线条和矩形是一个非常简单的操作,可以用来标记图像中的区域、进行图形处理或为图像添加一些基本的标记。无论是使用cv2.line()还是,你都可以轻松自定义图形的颜色、位置和大小,这对于各种图像处理应用非常有用。你可以根据实际需求修改上述代码,进行更复杂的图像绘制操作,或者将其应用到你自己的项目中。
2024-12-25 14:44:49 850
原创 python中__str__ 与 __repr__ 的区别
_str__用于返回一个适合显示给用户的字符串,关注的是用户体验;__repr__用于返回一个适合开发者和调试的字符串,最好能通过eval()重建该对象。这两者的区别源于 Python 中的“面向对象”的设计思想,分别适应了不同的使用场景,一个是面向用户,另一个是面向开发者。
2024-12-25 09:18:42 1007
原创 Python中类的构造方法
构造方法是 Python 类中的一种特殊方法,用于在创建类的实例时执行初始化操作。构造方法通常用于初始化实例变量或执行其他创建对象所需的设置操作。构造方法是 Python 面向对象编程的重要组成部分,其核心作用是初始化类的实例属性和进行必要的设置。在继承中,子类的构造方法会覆盖父类的构造方法。如果需要在子类中同时初始化父类属性,可以使用。,它是一种魔法方法(magic method)。在 Python 中,构造方法的名字是。
2024-12-24 15:05:03 311
原创 opencv中的常用的100个API
100 个 OpenCV API 覆盖了 OpenCV 的主要功能模块,帮助开发者快速理解 OpenCV 的强大功能。
2024-12-24 10:02:06 1175
原创 深入理解类的三大特性
封装是类的基础,它将数据与行为绑定起来,为继承和多态提供了基本结构。继承是代码复用的核心,为多态提供了实现机制。多态是继承的直接体现,使得不同对象可以以统一的方式操作,提高系统灵活性
2024-12-23 15:45:00 726
原创 opencv中的各种滤波器简介
在 OpenCV 中,滤波器是图像处理中的重要工具,用于对图像进行平滑、去噪、边缘检测等操作。以下是几种常见滤波器的简单介绍。
2024-12-23 10:17:18 981
原创 cv2.addWeighted用法详解
cv2.addWeighted是 OpenCV 中用于图像加权叠加的函数,常用于将两张图像按一定比例融合在一起。它通过对两张图像的像素进行加权和求和的操作,可以实现透明度调整、图像混合、图像融合等效果。
2024-12-21 20:15:00 1445
原创 什么是图像的位深度
图像的位深度决定了每个像素可以表示的颜色或灰度级数。位深度越大,图像的颜色范围和灰度精度越高,同时文件大小也会增加。常见的图像位深度包括 1 位、8 位、16 位、24 位和 32 位,每种位深度适用于不同的应用场景。
2024-12-19 15:30:00 683
原创 如何设计一个类
设计一个优秀的类,需要兼顾代码的清晰性、复用性和可维护性。遵循单一职责原则、封装性、高内聚低耦合等面向对象的设计思想,不仅能够提升代码质量,还能更高效地应对复杂的业务需求。在实际开发中,结合具体的场景和需求,灵活运用这些原则,就能设计出既实用又优雅的类。免费征集 | 自动化需求还在为重复性工作头疼?数据处理耗时过长?我们正在免费征集 自动化需求,无论是文件整理、报表生成、邮件处理还是网页爬取,只要您有需求,我愿意免费为您编写脚本,让繁琐任务一键完成!🎯 我们能帮您做什么?
2024-12-18 14:23:20 900
鼠标绘图.py +opencv+键盘事件+鼠标事件+工厂方法模式
2024-12-27
通过cv2.addWeighted将图像融合
2024-12-18
基于opencv和ddddocr实现滑动验证码缺口识别
2024-12-18
python操作windows应用窗口
2024-12-13
利用Python和Selenium自动化抓取同程旅行网站的飞机票信息,并将数据存储为Excel文件 代码简单高效,适合初学者和自动化测试工程师快速上手
2024-11-22
使用python写的字符串逆序函数
2024-11-22
django快速上手项目,实现一个hello world页面,适合django初学者
2023-03-13
python基础+jupyternotebook
2023-03-10
tkinter实现的漂浮字、悬浮字
2023-03-10
爬虫工具辅助工具+curl命令转python代码+自动将网络请求转成python代码
2023-02-08
断开连接脚本+批处理+远程桌面连接+用于远程桌面断开连接后保持GUI桌面
2022-12-29
基于python+tkinter的一个倒计时弹框
2022-08-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人