亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python中cv2.Canny() 函數(shù)使用方法

 更新時間:2023年07月07日 09:17:11   作者:change_xzt  
cv2.Canny() 函數(shù)是 OpenCV 中的邊緣檢測函數(shù)之一,用于檢測圖像的邊緣,它的基本原理是通過計算圖像中每個像素點的梯度值來檢測邊緣,本文通過示例代碼介紹Python中cv2.Canny() 函數(shù)用法,需要的朋友參考下吧

Python中cv2.Canny() 函數(shù)用法詳解

一、Canny算子邊緣檢測原理及步驟

cv2.Canny() 函數(shù)是 OpenCV 中的邊緣檢測函數(shù)之一,用于檢測圖像的邊緣。它的基本原理是通過計算圖像中每個像素點的梯度值來檢測邊緣。具體來說,它的實現(xiàn)步驟如下:
1、對輸入圖像進(jìn)行高斯濾波,以平滑圖像并去除噪聲;
2、計算圖像的梯度,找到像素點處灰度值變化最大的方向和大?。?br />3、應(yīng)用非極大值抑制(Non-maximum Suppression),以消除可能出現(xiàn)的重復(fù)邊緣;
4、應(yīng)用雙閾值(Double Thresholding)來檢測和連接邊緣。

二、cv2.Canny() 函數(shù)的語法

cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient]]]) -> edges

其中,各參數(shù)的含義如下:

  • image:輸入圖像,必須為單通道灰度圖像;
  • threshold1:第一個閾值,用于邊緣連接;
  • threshold2:第二個閾值,用于邊緣檢測;
  • edges:輸出的邊緣圖像;
  • apertureSize:Sobel 算子的大小,可選值為 3、5、7,默認(rèn)值為 3;
  • L2gradient:是否使用 L 2 L_2L 2 范數(shù)計算梯度大小,可選值為 True 和 False,默認(rèn)值為 False。
  • cv2.Canny() 函數(shù)的返回值為邊緣圖像。

注:第一個閾值參數(shù)為低閾值,用于確定哪些梯度變化被認(rèn)為是潛在的邊緣。所有梯度值高于低閾值的像素點都被認(rèn)為是潛在的邊緣點。第二個閾值參數(shù)為高閾值,用于確定哪些潛在的邊緣點是真正的邊緣。所有梯度值高于高閾值的像素點都被認(rèn)為是真正的邊緣點。同時,所有梯度值低于低閾值的像素點都被認(rèn)為不是邊緣點。在實際應(yīng)用中,合適的閾值參數(shù)需要根據(jù)具體圖像和任務(wù)進(jìn)行調(diào)整,以獲得最佳效果。通常,可以通過試驗不同的參數(shù)值來確定最佳的閾值參數(shù)。

三、應(yīng)用示例

下面是一個使用 cv2.Canny() 函數(shù)進(jìn)行邊緣檢測的例子:

import cv2
img = cv2.imread('image.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray, 100, 200)
cv2.imshow('Original Image', img)
cv2.imshow('Edges', edges)
cv2.waitKey(0)
cv2.destroyAllWindows()

在上面的例子中,我們將一張彩色圖像讀入,將其轉(zhuǎn)化為灰度圖像后,使用 cv2.Canny() 函數(shù)進(jìn)行邊緣檢測。其中,第一個閾值為 100,第二個閾值為 200。最后,我們將原始圖像和邊緣圖像一起顯示出來。

到此這篇關(guān)于Python中cv2.Canny() 函數(shù)用法詳解的文章就介紹到這了,更多相關(guān)Python cv2.Canny() 函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 字符串轉(zhuǎn)列表 list 出現(xiàn)\ufeff的解決方法

    python 字符串轉(zhuǎn)列表 list 出現(xiàn)\ufeff的解決方法

    下面小編就為大家?guī)硪黄猵ython 字符串轉(zhuǎn)列表 list 出現(xiàn)\ufeff的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • python進(jìn)行文件對比的方法

    python進(jìn)行文件對比的方法

    在本篇內(nèi)容里小編給分享了關(guān)于python進(jìn)行文件對比的方法和步驟,需要的朋友們可以學(xué)習(xí)下。
    2018-12-12
  • Python3刪除排序數(shù)組中重復(fù)項的方法分析

    Python3刪除排序數(shù)組中重復(fù)項的方法分析

    這篇文章主要介紹了Python3刪除排序數(shù)組中重復(fù)項的方法,結(jié)合實例形式分析了Python3刪除排序數(shù)組重復(fù)項的原理、相關(guān)遍歷及刪除操作技巧,需要的朋友可以參考下
    2019-01-01
  • Python批量合并365個工作表

    Python批量合并365個工作表

    這篇文章主要為大家詳細(xì)介紹了Python批量合并365個工作表的2種方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-11-11
  • Python Pandas 箱線圖的實現(xiàn)

    Python Pandas 箱線圖的實現(xiàn)

    這篇文章主要介紹了Python Pandas 箱線圖的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Python操作SQLite簡明教程

    Python操作SQLite簡明教程

    這篇文章主要介紹了Python操作SQLite簡明教程,簡單明了的入門教程,包含連接、建表、增刪修查等例子,需要的朋友可以參考下
    2014-07-07
  • PyGame實現(xiàn)初始化導(dǎo)入所有模塊方法詳解

    PyGame實現(xiàn)初始化導(dǎo)入所有模塊方法詳解

    pygame安裝是為了開發(fā)小游戲,在下新手在經(jīng)過許多嘗試后,為大家避雷,給大家分享一個簡單有效的方法,下面這篇文章主要給大家介紹了關(guān)于Python中Pygame的詳細(xì)安裝過程的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Python實現(xiàn)為Excel中每個單元格計算其在文件中的平均值

    Python實現(xiàn)為Excel中每個單元格計算其在文件中的平均值

    這篇文章主要為大家詳細(xì)介紹了如何基于Python語言實現(xiàn)對大量不同的Excel文件加以跨文件、逐單元格平均值計算,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • Pydantic中BaseConfig的具體使用

    Pydantic中BaseConfig的具體使用

    本文主要介紹了Pydantic中BaseConfig的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • 詳解Python中文件路徑

    詳解Python中文件路徑

    絕對路徑就是文件的真正存在的路徑,是指從硬盤的根目錄(盤符)開始,進(jìn)行一級級目錄指向文件,這篇文章主要介紹了Python中文件路徑,需要的朋友可以參考下
    2023-02-02

最新評論