牡丹江网站建设苏州企业网站建设

广东省华晟鼎创新材料有限公司 2026/09/09 21:04:07

1、为什么需要图像二值化?

场景说明
文字识别(OCR)当需要提取图片(比如扫描的文件、发票图片、身份证)中的文字内容时,将图像二值化后,提高字符边缘清晰度,减少背景干扰,用于给OCR程序 识别
条形码 / 二维码识别快速识别黑白条纹图案
医学图像处理比如X光片中提取骨骼轮廓
目标检测与分割定位图像中的特定区域,可用于质检环节检测缺陷区域

将复杂的灰度或彩色图像简化为只有黑白两种状态的图像(0 和 255)

图像二值化可达到 “化繁为简”,在保留关键结构的同时去除冗余信息,在 OCR、目标分割、形态学处理等场景中非常有效。
当需要从图像中快速提取有|没有在哪里信息时,就可以尝试使用二值化处理。

2、图像二值化(Binarization)函数 cv2.threshold()

cv2.threshold() 是 OpenCV的图像二值化函数,将灰度图像转换为黑白二值图像。
通过设定一个阈值(threshold),将像素点分为两类:

  • >阈值为某一个值(如 255,白色)
  • ≤ 阈值为另一值(如 0,黑色)

2.1 函数定义

retval, dst = cv2.threshold(src, thresh, maxval, type)
  • 返回值
    dst:新的二值图像
    retval: 实际使用的阈值
  • 参数说明
参数类型说明
srcNumPy 数组必须是灰度图像
threshfloat设定的阈值,比如128
maxvalfloat当像素满足条件时,设置的最大值(通常为 255)
typeint阈值类型
  • 阈值类型 type 说明
类型名称含义
cv2.THRESH_BINARY二进制阈值化if pixel > thresh: 255 else 0
cv2.THRESH_BINARY_INV反向二进制if pixel > thresh: 0 else 255
cv2.THRESH_TRUNC截断if pixel > thresh: thresh else pixel
cv2.THRESH_TOZERO低于阈值清零if pixel <= thresh: 0 else pixel
cv2.THRESH_TOZERO_INV高于阈值清零if pixel > thresh: 0 else pixel
cv2.THRESH_OTSU自动计算最优阈值(基于 Otsu 算法)需和上述类型 按位或组合使用,
如cv2.THRESH_BINARY + cv2.THRESH_OTSU

2.2 OTSU

OTSU(大津算法) 是一种经典的自动图像二值化方法,用于在灰度图像中自动选择最佳阈值,将图像分为前景和背景两部分。由日本学者 大津展之(Nobuyuki Otsu) 1979年提出。

算法解决的主要问题是:在不知道阈值的情况下,如何自动找出一个“最优”阈值来分割图像?

OTSU 算法的思路是:
最大化类间方差(Between-class Variance),让前景(目标)和背景之间的差异尽可能大,从而使分割最清晰。

2.3 代码示例

importcv2importnumpyasnpimportos# 1.读取图像img_path="img/dog.jpg"ifnotos.path.exists(img_path):raiseFileNotFoundError(f"未找到图像文件{img_path}")img=cv2.imread(img_path,cv2.IMREAD_GRAYSCALE)thresh,img1=cv2.threshold(img,128,255,cv2.THRESH_BINARY)cv2.imshow("Original",img)cv2.imshow("threshold",img1)cv2.waitKey(0)cv2.destroyAllWindows()

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

长安网站建设网站品牌建设

最近会更新很多内容,感兴趣的友友支持一下吧!!一、链表介绍概述:属于线性结构, 即: 每个节点都有1个父节点(前驱节点) 和 1个子节点(后继节点)链表可以看

2026/06/30 14:16:09

襄樊网站建设建设购物网站

2025网络安全新方向:华为HCIE认证详解(建议收藏)本文针对35岁+人群转行IT行业问题,强调考证重要性,推荐华为HC

2026/06/30 10:17:49

北京网站建设东营网站建设

PyTorch-CUDA-v2.8 镜像与 Markdown 文档实践:构建高效可读的技术体系在深度学习项目日益复杂的今天,开发者面临两大核心挑战:一是如何快

2026/06/30 10:18:19

网站建设套餐模板网站建设

中文AI识别异常检测:快速搭建模型监控系统在生产环境中部署中文识别服务后,如何确保模型持续稳定运行并及时发现异常?今天我将分享如何利用预置镜像快速搭建一套完整

2026/06/30 13:32:36

大型门户网站建设三亚网站建设

快速体验打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容:创建一个跨平台的库存管理应用,使用C#和SQLite实现以下功

2026/06/30 12:45:33

网站建设项目网站建设app

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等

2026/06/30 13:48:37

四平网站建设网站建设基础知识

PaddlePaddle流水线并行训练实战:突破单卡内存限制在大模型时代,一个现实而尖锐的问题摆在每一位深度学习工程师面前:如何用有限的GPU资源࿰

2026/06/30 10:52:22

昆山网站建设恩施网站建设

使用Miniconda统一团队AI开发环境:确保实验结果可复现在人工智能项目中,你是否遇到过这样的场景?一名研究员提交了准确率提升3%的模型代码,

2026/06/30 13:01:04