欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python應用案例之利用opencv實現圖像匹配

 更新時間:2024年08月06日 09:01:12   作者:翻車吧奧斯卡  
OpenCV 是一個的跨平臺計算機視覺庫,可以運行在 Linux、Windows 和 Mac OS 操作系統(tǒng)上,這篇文章主要給大家介紹了關于Python應用案例之利用opencv實現圖像匹配的相關資料,需要的朋友可以參考下

1.創(chuàng)作需求

我們通常需要從一幅圖中找到自己想要的信息,例如從一堆表情中找到,自己需要的表情。

2.創(chuàng)作思路

1.使用模板圖片作為卷積核與原圖進行卷積運算,得出匹配度超過某一閾值的范圍。

2.對該部分進行框選

3.工具

主要使用opencv庫實現,通過

cv2.matchTemplate()函數進行實現。

4.代碼實現

import cv2
import matplotlib.pyplot as plt

# 讀取圖像
# 路徑不可以有漢字
original_image = cv2.imread('picture.png')
# 轉化為灰度圖方便計算
gray_image = cv2.cvtColor(original_image, cv2.COLOR_BGR2GRAY)

# 顯示原圖
plt.figure(figsize=(20, 20))
plt.imshow(cv2.cvtColor(original_image, cv2.COLOR_BGR2RGB))  # 轉換顏色空間以匹配matplotlib
plt.title('Original Image')
plt.axis('off')
plt.show()

# 顯示灰度圖
plt.figure(figsize=(20, 20))
plt.imshow(gray_image, cmap='gray')
plt.title('Grayscale Image')
plt.axis('off')
plt.show()

# 加載模板
# 想要從原圖中找到的部分
# 這里截取原圖中一個表情
template = gray_image[90:180, 100:180]

# 模板匹配
# 將選取表情與原圖匹配
result = cv2.matchTemplate(gray_image, template, cv2.TM_CCOEFF_NORMED)

# 找到匹配得分最高的區(qū)域
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)

# 繪制矩形框
threshold = 0.9999  # 根據需要調整閾值
if max_val >= threshold:
    # 計算矩形框的左上角和右下角坐標
    top_left = max_loc
    bottom_right = (top_left[0] + template.shape[1], top_left[1] + template.shape[0])

    # 在原圖上繪制矩形框
    cv2.rectangle(original_image, top_left, bottom_right, (0, 0, 255), 2)

# 顯示結果
plt.figure(figsize=(20, 20))
plt.imshow(cv2.cvtColor(original_image, cv2.COLOR_BGR2RGB))  # 轉換顏色空間以匹配matplotlib
plt.title('Matched Template')
plt.axis('off')
plt.show()

5.補充說明

對于閾值的選擇需要自己進行嘗試,已找到最優(yōu)解。這個代碼只找了一個,伙伴們可以自己實現,找到圖中所有的模板圖

到此這篇關于Python應用案例之利用opencv實現圖像匹配的文章就介紹到這了,更多相關Python opencv圖像匹配內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python flask框架實現瀏覽器點擊自定義跳轉頁面

    Python flask框架實現瀏覽器點擊自定義跳轉頁面

    這篇文章主要介紹了Python flask框架實現瀏覽器點擊自定義跳轉頁面,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • python連接遠程ftp服務器并列出目錄下文件的方法

    python連接遠程ftp服務器并列出目錄下文件的方法

    這篇文章主要介紹了python連接遠程ftp服務器并列出目錄下文件的方法,實例分析了Python使用pysftp模塊的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • python中bottle使用實例代碼

    python中bottle使用實例代碼

    這篇文章主要介紹了python bottle使用實例,主要是搞懂python中如何來組織包,如何調用包,如何讀取配置文件,連接數據庫,設置路由,路由分組,具體示例代碼跟隨小編一起看看吧
    2021-08-08
  • keras實現圖像預處理并生成一個generator的案例

    keras實現圖像預處理并生成一個generator的案例

    這篇文章主要介紹了keras實現圖像預處理并生成一個generator的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python中re模塊的元字符使用小結

    Python中re模塊的元字符使用小結

    元字符是正則表達式中具有特殊意義的專用字符,本文主要介紹了Python中re模塊的元字符使用小結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • python類別數據數字化LabelEncoder?VS?OneHotEncoder區(qū)別

    python類別數據數字化LabelEncoder?VS?OneHotEncoder區(qū)別

    這篇文章主要為大家介紹了機器學習:數據預處理之將類別數據數字化的方法LabelEncoder?VS?OneHotEncoder區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • python神經網絡MobileNetV3?large模型的復現詳解

    python神經網絡MobileNetV3?large模型的復現詳解

    這篇文章主要為大家介紹了python神經網絡MobileNetV3?large模型的復現詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Python函數參數分類使用與新特性詳細分析講解

    Python函數參數分類使用與新特性詳細分析講解

    在聲明函數的時候,一般會根據函數所要實現的功能來決定函數是否需要參數。在多數情況下,我們聲明的函數都會使用到參數,這篇文章主要介紹了Python函數參數
    2023-01-01
  • 一篇文章帶你學習python的函數與類

    一篇文章帶你學習python的函數與類

    這篇文章主要為大家介紹了python的函數與類,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • Python解決IndexError: list index out of range問題的三種方法

    Python解決IndexError: list index out of&nb

    IndexError是一種常見的異常類型,它通常發(fā)生在嘗試訪問列表(list)中不存在的索引時,錯誤信息“IndexError: list index out of range”意味著你試圖訪問的列表索引超出了列表的實際范圍,所以本文給大家介紹了Python成功解決IndexError: list index out of range
    2024-05-05

最新評論