- 博客(71)
- 收藏
- 关注
原创 【cv2.threshold 阈值化】
是 OpenCV 中用于图像阈值处理的核心函数,能够将灰度图像转换为二值图像(或指定阈值分割),广泛应用于图像分割、边缘检测、目标提取等场景。如果输入是多通道图像(如BGR),需先转换为灰度图,否则阈值处理仅作用于第一个通道(通常不符合预期)。的不同模式和应用场景,可以高效实现图像的二值化和分割,为后续的轮廓检测、目标识别等操作奠定基础。如果传入彩色图像,会直接取第一个通道处理(通常不符合预期)。:实际使用的阈值(尤其在使用自动阈值算法时有用)。手动设定阈值(如 127),或设为 0(当使用。
2025-03-23 20:16:39
810
原创 CV图像翻转效果预览
核心知识点总结翻转模式1:水平翻转(左右镜像)。0:垂直翻转(上下颠倒)。-1:组合翻转(等效旋转180度)。坐标变换翻转操作本质是对像素坐标的映射,不涉及插值计算。内存与性能翻转是原地操作(无复杂计算),性能高效。注意事项参数混淆问题避免错误使用参数(如将垂直翻转误写为flipCode=1错误示例img = cv2.flip(img, 1) # 预期垂直翻转,实际得到水平翻转多通道支持cv2.flip()支持所有通道类型的图像(如BGR、灰度、RGBA)。
2025-03-23 16:22:02
939
原创 图像的缩放
总结两种缩放方式固定尺寸(dsize):直接控制目标尺寸,可能导致宽高比失真。缩放因子(fx/fy):动态计算尺寸,更灵活,适合比例缩放。尺寸顺序:始终为,与数组的shape(rows, cols)顺序相反。插值选择:根据场景选择合适的插值方法(速度与质量的权衡)。注意事项宽高比失真避免随意指定dsize,优先使用fx/fy保持宽高比。错误示例(可能导致拉伸或压缩)。修正方案:动态计算等比例缩放后的尺寸。缩放因子与尺寸冲突dsize和fx/fy是互斥参数。若同时指定,dsize优先级更高。
2025-03-23 10:51:19
600
原创 图像类型转换
总结颜色空间OpenCV默认使用BGR,与其他库(如Matplotlib)的RGB不同,需注意转换。灰度图转BGR会生成三通道图像,但内容仍是灰度(通道值相同)。通道拆分仅对真实彩色图像有意义,灰度图转换的BGR图像拆分后无差异。图像显示默认按BGR解析图像,RGB格式需转换回BGR或使用其他库显示。注意事项颜色显示错误若使用文件路径与格式确保文件路径正确,避免因路径错误导致返回None。推荐明确指定读取模式(如代替通道操作实践使用真实彩色图像(如lena_r.png。
2025-03-23 09:58:03
542
原创 CV图像融合
目录概念:函数addWeighted源码图一 和图二融合得到图三效果1. 代码逐行解读2. 重点知识:图像融合详解(1) 图像融合公式(2) 核心特性(3) 应用场景(4) 融合效果对比3. 总结与注意事项核心总结注意事项扩展应用cv2.addWeighted 函数精讲1. 函数定义与语法2. 核心公式3. 参数详解与示例(1) 基础用法(均等融合)(2) 突出某一图像(非均等融合)(3) 亮度增强(gamma > 0)(4) 亮度减弱(gamma < 0)4. 使用场景5. 注意事项与常见错误(1) 图像
2025-03-22 20:34:08
930
原创 【图像 取模和饱和运算对比展示】
几乎不用于图像处理,常见于需要循环覆盖的特殊效果(如模拟数据溢出)。是优化过的函数,比普通加法更高效(尤其处理大图像时)。通过这段代码,掌握了两种加法操作的本质区别。:直接对像素值进行算术加法,若结果超过。图像可能出现斑驳的噪声或非预期的暗区。最大值),则取模(溢出部分截断)。:图像增强、高光叠加、HDR合成等。:对像素值进行加法后,若结果超过。高亮度区域会变暗(如原像素值。图像整体变亮,符合视觉预期。,否则运算规则可能不同(如。是图像处理中的安全选择,而。),低亮度区域线性增强。图像不会自动截断)。
2025-03-22 18:59:55
736
原创 【cv 图像的拆分与合并】
通过这段代码,掌握了图像通道操作的核心方法,这是图像处理中颜色分析和合成的关键基础。灰度图是二维数组(无通道维度),合并时需确保所有输入通道尺寸一致。:通过分离通道可以单独增强或抑制某一颜色分量(如增强红色通道)。:将多通道图像(如BGR彩色图)分离为独立的单通道灰度图像。:将多通道图像(如BGR彩色图)分离为独立的单通道图像。:将不同图像的通道混合生成艺术效果(如红外效果)。:将不同图像的通道混合(如替换某通道生成特效)。:单独增强某一通道(如红色通道)以突出特定颜色。
2025-03-22 15:32:08
847
原创 【cv 属性 shape, size, dtype 介绍】
保留图像的原始通道(如灰度图保持单通道,PNG带透明通道则保留Alpha通道)。掌握这些属性有助于高效处理图像数据,避免常见错误(如越界、颜色异常)。OpenCV默认读取为BGR格式(非RGB),需注意颜色顺序。:OpenCV 默认读取为 BGR 格式,而非常见的 RGB。:导入OpenCV库,提供图像处理和计算机视觉功能。:图像中像素值的总数量(所有通道的总元素数)。:表示图像的维度(高度、宽度、通道数)。维度结构(高度、宽度、通道数),:无符号8位整数,取值范围为。,通道数通常为3(BGR)。
2025-03-22 14:00:49
613
原创 【列表的封包与解包】
核心思想:通过实现值的聚合与分散。适用场景:变量交换、动态参数处理、数据结构合并、嵌套数据解析。注意事项:长度匹配、迭代器消耗、代码可读性。合理使用封包与解包,可以显著提升代码简洁性和效率,尤其在处理动态数据时表现突出。建议结合具体场景灵活选择,避免过度使用导致逻辑晦涩。
2025-03-18 20:28:16
540
原创 【简单聊天室小程序】
改进方向具体实现多客户端支持服务端使用多线程处理每个连接异常处理添加try-except块捕获ConnectionResetError等异常消息完整性循环接收直到获取完整数据双向通信客户端使用独立线程接收消息,实现异步收发优雅退出捕获KeyboardInterrupt,发送终止信号后清理资源端口复用设置SO_REUSEADDR选项避免Address already in use错误用户体验优化显示客户端地址信息,添加输入提示连接管理服务端设置解决端口占用问题使用with。
2025-03-17 23:23:24
450
原创 【列表运算符的系统化讲解】
print(students[0] < students[1]) # True(需实现比较运算符重载)2. 不可哈希元素检查# 包含列表的列表print([3,4] in complex_list) # True(比较值而非对象身份)
2025-03-17 21:22:11
865
原创 【统计各单词出现的次数 案例代码优化】
这段 Python 代码的主要功能是读取一个文本文件,统计文件中各个单词出现的次数,并按照单词出现次数从多到少进行排序,最后输出排序后的结果。get_char定义了一个名为get_char的函数,该函数接受一个字符串参数txt,表示要处理的文本内容。
2025-03-15 23:08:33
719
原创 【列表(list)、元组(tuple)、字典(dict)、集合(set) 之间的共通性和差异性 及关系转化 总结】
列表(list)、元组(tuple)、字典(dict)、集合(set) 的对比 共通性和差异性 增删改查功能函数 共通性和差异性关系转化的共通性和差异性
2025-03-15 13:59:12
723
原创 【集合知识点总结】
基本语法使用花括号{}定义,元素用逗号分隔(元素必须是不可变类型my_set = {1, 2, "apple", (3, 4)} # 允许数字、字符串、元组等不可变元素空集合空集合必须用set()创建(直接写{}从其他序列转换python复制from_list = set([1, 2, 2, 3]) # {1, 2, 3}(自动去重)from_string = set("hello") # {'h', 'e', 'l', 'o'}(无序)核心特性。
2025-03-15 12:31:29
721
原创 【字典知识点总结】
基本语法用花括号{}定义,键值对格式为key: value,键必须是不可变类型"age": 30,1: "one", # 数字作为键("x", "y"): "coordinates" # 元组作为键(仅当元组内元素全不可变时)空字典使用dict()构造函数核心优势:通过键快速访问值,支持动态增删改。关键方法get()update()items(), 字典推导式。适用场景:需要高效查找、动态数据管理的场景。注意事项:键的不可变性、内存占用、Python 版本差异(有序性)。
2025-03-15 11:04:24
966
原创 【元祖知识点总结】
基本语法使用圆括号()my_tuple = (1, "hello", 3.14, True) # 可包含任意数据类型single_element = (42,) # 单元素元组必须加逗号!空元组省略括号的隐式定义implicit_tuple = 1, 2, 3 # 等同于 (1, 2, 3)使用tuple()构造函数核心特性:不可变性、有序性、支持任意数据类型。适用场景:数据保护、字典键、函数多返回值、参数传递。与列表的选择需要修改数据 → 列表。需要保护数据或作为键 → 元组。
2025-03-15 10:50:47
989
原创 【*args和**kwargs 适用于处理不确定参数传参】
在Python中,*args和**kwargs是用于处理函数参数的强大工具,允许函数接受不定数量的位置参数和关键字参数。以下是它们的核心内容:1.
2025-03-14 21:27:11
857
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人