訂閱
糾錯(cuò)
加入自媒體

使用Python+OpenCV實(shí)現(xiàn)在視頻中某對(duì)象后添加圖像

下面是根據(jù)HSV圖像準(zhǔn)備的掩碼,黃色區(qū)域中的所有像素的像素值為255,其余像素值為0:

使用Python+OpenCV實(shí)現(xiàn)在視頻中某對(duì)象后添加圖像

現(xiàn)在,我們可以根據(jù)需要輕松地將綠色虛線框內(nèi)的像素值設(shè)置為1,讓我們回到代碼中:

# HSV的范圍lower = np.a(chǎn)rray([6,10,68])upper = np.a(chǎn)rray([30,36,122])

# 為圖像創(chuàng)建核kernel = np.ones((3,3),np.uint8)

# 每次運(yùn)行以下while循環(huán)時(shí),執(zhí)行下面的兩行cap = cv2.VideoCapture(path+"Pexels Videos 2675513.mp4")cnt = 0

# 循環(huán)加載、預(yù)處理和顯示幀while(True):    ret, f = cap.read()

# 提取我們將放置logo的區(qū)域    # 此區(qū)域的尺寸應(yīng)與logo的尺寸相匹配    mini_frame = f[500:740,875:1070,:]

# 創(chuàng)建 HSV 圖像    hsv = cv2.cvtColor(f, cv2.COLOR_BGR2HSV)

# 創(chuàng)建掩碼    mask = cv2.inRange(hsv, lower, upper)

dil = cv2.dilate(mask,kernel,iterations = 5)

# 創(chuàng)建3個(gè)通道    mini_dil = np.zeros_like(mini_frame)    mini_dil[:,:,0] = dil[500:740,875:1070]    mini_dil[:,:,1] = dil[500:740,875:1070]    mini_dil[:,:,2] = dil[500:740,875:1070]

# 復(fù)制logo圖像    logo_copy = logo.copy()

# 當(dāng)掩碼的像素值為0時(shí),將像素值設(shè)置為1    logo_copy[mini_dil == 0] = 1

# 將標(biāo)識(shí)的像素值設(shè)置為1,其中標(biāo)識(shí)的像素值為0    logo_copy[logo == 0] = 1

# 當(dāng)logo的像素值不為1時(shí),將像素值設(shè)置為1    mini_frame[logo_copy 。 1] = 1

# 合并圖像(數(shù)組乘法)    mini_frame = mini_frame*logo_copy

# 在框架中插入logo    f[500:740,875:1070,:] = mini_frame

# 調(diào)整框架的大小(可選)    f = cv2.resize(f, (480, 270), interpolation = cv2.INTER_AREA)

# 顯示幀    cv2.imshow('frame', f)

# 保存幀    # cv2.imwrite(path+'frames/'+str(cnt)+'.png',f)    cnt+= 1

if cv2.waitKey(20) & 0xFF == ord('q'):        cv2.destroyAllWindows()        break

上面的代碼片段將從視頻中加載幀,對(duì)其進(jìn)行預(yù)處理,并創(chuàng)建HSV圖像和掩碼,最后將logo插入到視頻中。你完成了!

結(jié)尾

在本文中,我們介紹了一個(gè)非常有趣的計(jì)算機(jī)視覺用例,并從零開始實(shí)現(xiàn)它。在此過程中,我們還學(xué)習(xí)了如何使用圖像數(shù)組以及如何從這些數(shù)組中創(chuàng)建掩碼。

當(dāng)你處理其他的計(jì)算機(jī)視覺任務(wù)時(shí),這會(huì)對(duì)你有所幫助。

<上一頁(yè)  1  2  3  4  
聲明: 本文由入駐維科號(hào)的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)