图像二值化、边缘检测与轮廓提取技术详解
一、图像二值化技术
1.1 简单阈值处理
简单阈值处理是将一个全局阈值应用于图像的所有像素。例如,对于一张严重污渍的扫描文档图像(图 3 - 50),使用 THRESH_BINARY 方法会生成白色背景上的黑色文本图像,而 THRESH_BINARY_INV 方法则会生成黑色背景上的白色文本图像。
不过,简单阈值处理需要预先知道阈值,并且在处理大量图像或需要根据图像类型和强度变化调整阈值时,可能不是理想的方法。在这种情况下,可以考虑使用自适应阈值处理或大津法(Otsu)二值化。
1.2 自适应阈值处理
自适应阈值处理是一种根据像素的局部邻域动态调整阈值的技术,能更好地处理图像中的光照变化和强度变化。
以下是使用自适应阈值处理对灰度图像进行二值化的代码示例:
import cv2
import numpy as np
# 加载图像
image = cv2.imread("images/boat.jpg")
# 将图像转换为灰度图像
image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("Original Grayscale Image", image)
# 使用自适应阈值处理和简单均值进行二值化
binarized = cv2.adaptiveThreshold(image, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BI
图像处理技术:二值化、边缘检测与轮廓提取
超级会员免费看
订阅专栏 解锁全文
766

被折叠的 条评论
为什么被折叠?



