【OpenCv 边缘检测】

【 1. 边缘检测 】

边缘检测是图像处理和计算机视觉中的基本问题,
边缘检测的目的是标识数字图像中亮度变化明显的点。图像边缘检测大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性。图像属性中的显著变化通常反映了属性的重要事件和变化。如下图:

常用的边缘检测模板有 Laplacian 算子、Roberts 算子、Sobel 算子、 Kirsch 算子和 Prewitt 算子等。

canny (精明) 边缘检测的五个步骤:

  • 使用高斯滤波器,以平滑图像,滤除噪声。
  • 计算图像中每个像素点的梯度强度和方向。
  • 应用非极大值(Non-Maximum Suppression)抑制,以消除边缘检测带来的杂散响应。
  • 应用双阈值(Double-Threshold)检测来确定真实的和潜在的边缘。
  • 通过抑制孤立的弱边缘最终完成边缘检测。

【 2. OpenCv图片边缘检测 】

import cv2
image = cv2.imread('picture.jpg')# 读取图片
gray = cv2.cvtColor(image,cv2.COLOR_RGB2GRAY)# 转换为灰度图片

canny_edg=cv2.Canny(gray,50,150)#进行canny边缘检测

cv2.imshow('cute boy',canny_edg)  # 显示图片
cv2.waitKey(0) # 等待用户关闭图片窗口
cv2.destroyAllWindows()# 关闭窗口

原图
在这里插入图片描述
边缘图片
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章