国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python-OpenCV中的圖像處理-物體跟蹤

這篇具有很好參考價值的文章主要介紹了Python-OpenCV中的圖像處理-物體跟蹤。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

物體跟蹤

現(xiàn)在我們知道怎樣將一幅圖像從 BGR 轉(zhuǎn)換到 HSV 了,我們可以利用這一點來提取帶有某個特定顏色的物體。在 HSV 顏色空間中要比在 BGR 空間中更容易表示一個特定顏色。在我們的程序中,我們要提取的是一個藍色的物體。下面就是就是我們要做的幾步:
? 從視頻中獲取每一幀圖像
? 將圖像轉(zhuǎn)換到 HSV 空間
? 設(shè)置 HSV 閾值到藍色范圍。
? 獲取藍色物體,當然我們還可以做其他任何我們想做的事,比如:在藍色物體周圍畫一個圈。

import numpy as np
import cv2

# cv2.cvtColor(img, flag)
# cv2.inRange()

# 打印顏色轉(zhuǎn)換flag
flags =[ i for i in dir(cv2) if i.startswith('COLOR_')]
print(flags)


# OpenCV支持超過150種顏色轉(zhuǎn)換的方法,常用:BGR<->GRAY 和 BGR<->HSV
# OpenCV的HSV格式中,H(色彩/色度)的取值范圍是[0, 179], S(飽和度)的取值范圍[0, 255], V(亮度)的取值范圍[0, 255]
# 不同軟件取值范圍可能不同,使用時需要做歸一化

# 物體跟蹤,跟蹤一個藍色物體,步驟:
# 1.從視頻中獲取一幀圖像
# 2.將圖像轉(zhuǎn)換到HSV空間
# 3.設(shè)置HSV閥值到藍色范圍
# 4.獲取藍色物體,或其他處理

cap = cv2.VideoCapture(0)

while True:
    # 獲取圖像幀
    (ret, frame) = cap.read()

    # 轉(zhuǎn)換到HSV顏色空間
    hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)

    # 設(shè)定藍色的閥值
    lower_blue = np.array([110, 50, 50])
    upper_blue = np.array([130, 255, 255])

    # 根據(jù)閥值構(gòu)建掩膜
    mask = cv2.inRange(hsv, lower_blue, upper_blue)
    mask_blue = cv2.medianBlur(mask, 7)  # 中值濾波

    # 查找輪廓
    contours, hierarchy = cv2.findContours(mask_blue, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
    # print(contours, hierarchy)
    for cnt in contours:
        (x, y, w, h) = cv2.boundingRect(cnt)
        cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
        font = cv2.FONT_HERSHEY_SIMPLEX
        cv2.putText(frame, "Blue", (x, y - 5), font, 0.7, (0, 255, 0), 2)

    # 對原圖和掩膜進行位運算
    res =cv2.bitwise_and(frame, frame, mask=mask)

    # 顯示圖像
    cv2.imshow('frame', frame)
    cv2.imshow('mask', mask)
    cv2.imshow('res', res)

    k = cv2.waitKey(5)&0xFF
    if k == 27:
        break

cap.release()
cv2.destroyAllWindows()

Python-OpenCV中的圖像處理-物體跟蹤,OpenCV Python,opencv,python,圖像處理文章來源地址http://www.zghlxwxcb.cn/news/detail-637631.html

到了這里,關(guān)于Python-OpenCV中的圖像處理-物體跟蹤的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • Python-OpenCV中的圖像處理-圖像直方圖

    Python-OpenCV中的圖像處理-圖像直方圖

    通過直方圖你可以對整幅圖像的灰度分布有一個整體的了解。直方圖的 x 軸是灰度值( 0 到 255), y 軸是圖片中具有同一個灰度的點的數(shù)目。 BINS:上面的直方圖顯示了每個灰度值對應的像素數(shù)。如果像素值為 0到255,你就需要 256 個數(shù)來顯示上面的直方圖。但是,如果你不需

    2024年02月12日
    瀏覽(32)
  • Python-OpenCV中的圖像處理-圖像金字塔

    Python-OpenCV中的圖像處理-圖像金字塔

    同一圖像的不同分辨率的子圖集合,如果把最大的圖像放在底部,最小的放在頂部,看起來像一座金字塔,故而得名圖像金字塔。 cv2.pyrUp():上采樣 cv2.pyrDown():下采樣 高斯金字塔的頂部是通過將底部圖像中的連續(xù)的行和列去除得到的。頂部圖像中的每個像素值等于下一層圖

    2024年02月13日
    瀏覽(22)
  • Python-OpenCV中的圖像處理-幾何變換

    Python-OpenCV中的圖像處理-幾何變換

    對圖像進行各種幾個變換,例如移動,旋轉(zhuǎn),仿射變換等。 cv2.resize() cv2.INTER_AREA v2.INTER_CUBIC v2.INTER_LINEAR res = cv2.resize(img, None, fx=2, fy=2, interpolation=cv2.INTER_CUBIC) 或 height, width = img.shape[:2] res = cv2.resize(img, (2 width, 2 height), interpolation=cv2.INTER_CUBIC) OpenCV提供了使用函數(shù)cv2.warpAffine()實

    2024年02月13日
    瀏覽(97)
  • Python-OpenCV中的圖像處理-邊緣檢測

    Python-OpenCV中的圖像處理-邊緣檢測

    Canny 邊緣檢測是一種非常流行的邊緣檢測算法,是 John F.Canny 在 1986 年提出的。它是一個有很多步構(gòu)成的算法:噪聲去除、計算圖像梯度、非極大值抑制、滯后閥值等。 Canny(image: Mat, threshold1, threshold2, edges=…, apertureSize=…, L2gradient=…) 在 OpenCV 中只需要一個函數(shù): cv2.Canny(),

    2024年02月13日
    瀏覽(35)
  • Python-OpenCV中的圖像處理-霍夫變換

    Python-OpenCV中的圖像處理-霍夫變換

    霍夫(Hough)變換在檢測各種形狀的技術(shù)中非常流行,如果要檢測的形狀可以用數(shù)學表達式描述,就可以是使用霍夫變換檢測它。即使要檢測的形狀存在一點破壞或者扭曲也是可以使用。 Hough直線變換,可以檢測一張圖像中的直線 cv2.HoughLines(image, rho, theta, threshold) return:返回值

    2024年02月13日
    瀏覽(125)
  • Python-OpenCV中的圖像處理-直方圖

    Python-OpenCV中的圖像處理-直方圖

    通過直方圖你可以對整幅圖像的灰度分布有一個整體的了解。直方圖的 x 軸是灰度值( 0 到 255), y 軸是圖片中具有同一個灰度的點的數(shù)目。 BINS:上面的直方圖顯示了每個灰度值對應的像素數(shù)。如果像素值為 0到255,你就需要 256 個數(shù)來顯示上面的直方圖。但是,如果你不需

    2024年02月13日
    瀏覽(30)
  • Python-OpenCV中的圖像處理-顏色空間轉(zhuǎn)換

    Python-OpenCV中的圖像處理-顏色空間轉(zhuǎn)換

    在 OpenCV 中有超過 150 中進行顏色空間轉(zhuǎn)換的方法。但是你以后就會 發(fā)現(xiàn)我們經(jīng)常用到的也就兩種: BGR G r a y 和 B G R Gray 和 BGR G r a y 和 BGR HSV。 注意:在 OpenCV 的 HSV 格式中, H(色彩/色度)的取值范圍是 [0, 179],S(飽和度)的取值范圍 [0, 255], V(亮度)的取值范圍 [0,

    2024年02月13日
    瀏覽(25)
  • Python-OpenCV中的圖像處理-形態(tài)學轉(zhuǎn)換

    Python-OpenCV中的圖像處理-形態(tài)學轉(zhuǎn)換

    形態(tài)學操作:腐蝕,膨脹,開運算,閉運算,形態(tài)學梯度,禮帽,黑帽等 主要涉及函數(shù):cv2.erode(), cv2.dilate(), cv2.morphologyEx() 原理:形態(tài)學操作是根據(jù)圖像形狀進行的簡單操作。一般情況下對二值化圖像進行的操作。需要輸入兩個參數(shù),一個是原始圖像,第二個被稱為結(jié)構(gòu)化

    2024年02月13日
    瀏覽(24)
  • Python-OpenCV中的圖像處理-傅里葉變換

    Python-OpenCV中的圖像處理-傅里葉變換

    傅里葉變換經(jīng)常被用來分析不同濾波器的頻率特性。我們可以使用 2D 離散傅里葉變換 (DFT) 分析圖像的頻域特性。實現(xiàn) DFT 的一個快速算法被稱為快速傅里葉變換( FFT)。 對于一個正弦信號:x (t) = A sin (2πft), 它的頻率為 f,如果把這個信號轉(zhuǎn)到它的頻域表示,我們會在頻率

    2024年02月12日
    瀏覽(22)
  • Python-OpenCV中的圖像處理-GrabCut算法交互式前景提取

    Python-OpenCV中的圖像處理-GrabCut算法交互式前景提取

    cv2.grabCut(img: Mat, mask: typing.Optional[Mat], rect, bgdModel, fgdModel, iterCount, mode=…) img:輸入圖像 mask:掩模圖像,用來確定那些區(qū)域是背景,前景,可能是前景/背景等。 可以設(shè)置為: cv2.GC_BGD,cv2.GC_FGD,cv2.GC_PR_BGD,cv2.GC_PR_FGD,或者直接輸入 0,1,2,3 也行。 rect :包含前景的矩形,格式為

    2024年02月13日
    瀏覽(104)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包