opencv背景替換加載的實(shí)現(xiàn)示例
看到有個(gè)例子,使用opencv實(shí)時(shí)替換背景,就來(lái)學(xué)習(xí)了一下,覺(jué)得挺不錯(cuò)的,聯(lián)想到小朋友上次去科技館的時(shí)候,小朋友特別喜歡沉浸式的恐龍世界,我覺(jué)得有點(diǎn)意思,就想著同時(shí)加載兩段視頻,一段輸入作為背景,另一個(gè)輸入作為自己的圖像覆蓋在背景上,現(xiàn)在用的是錄屏的方法,然后攝像頭加載自己的圖像輸入這樣子,代碼如下:
# -*- coding: UTF-8 -*- import cv2 import mediapipe from PIL import ImageGrab import numpy as np import cvzone from cvzone.SelfiSegmentationModule import SelfiSegmentation ####################### #輸入圖像參數(shù) cap = cv2.VideoCapture(0) cap.set(3, 640) cap.set(4, 480) segmentor = SelfiSegmentation() ####################### #定義的變量 ###################### #獲取背景視頻 def get_bg_video(): img = ImageGrab.grab(bbox=(100, 100, 1280, 960)) #bbox specifies specific region (bbox= x,y,width,height) img_np = np.array(img) img_np = cv2.resize(img_np, (640, 480)) #保障圖像信息的尺寸一致 return img_np if __name__ == "__main__": while True: is_succ, img = cap.read() #獲取攝像頭圖像 video = get_bg_video() img_out = segmentor.removeBG(img, video, threshold=0.9) #去除背景 cv2.imshow('replace_bg', img_out) key = cv2.waitKey(1) if key == ord('q'): break cap.release() cv2.destroyAllWindows()
目前有個(gè)缺陷就是,錄屏和攝像頭都在一起,比較難看,后面想利用一個(gè)獨(dú)立攝像頭,和獨(dú)立的視頻來(lái)源,這樣的效果會(huì)更好,當(dāng)然還會(huì)有其它更好的應(yīng)用場(chǎng)景。
到此這篇關(guān)于opencv背景替換加載的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)opencv背景替換加載內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Python將時(shí)間或時(shí)間間隔轉(zhuǎn)為ISO 8601格式方法示例
國(guó)際標(biāo)準(zhǔn)化組織的國(guó)際標(biāo)準(zhǔn)ISO8601是日期和時(shí)間的表示方法,全稱為《數(shù)據(jù)存儲(chǔ)和交換形式·信息交換·日期和時(shí)間的表示方法》,下面這篇文章主要給大家介紹了關(guān)于利用Python將時(shí)間或時(shí)間間隔轉(zhuǎn)為ISO 8601格式的相關(guān)資料,需要的朋友可以參考下。2017-09-09Python?Pygame繪制直線實(shí)現(xiàn)光線反射效果
這篇文章主要為大家詳細(xì)介紹了如何利用Python?Pygame繪制直線以實(shí)現(xiàn)光線反射效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11python使用any判斷一個(gè)對(duì)象是否為空的方法
這篇文章主要介紹了python使用any判斷一個(gè)對(duì)象是否為空的方法,并給出了改進(jìn)的方法供大家對(duì)比參考,具有一定的借鑒價(jià)值,需要的朋友可以參考下2014-11-11Python實(shí)現(xiàn)的排列組合計(jì)算操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)的排列組合計(jì)算操作,涉及Python數(shù)學(xué)運(yùn)算的相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下2017-10-10使用Python FastAPI構(gòu)建Web服務(wù)的實(shí)現(xiàn)
這篇文章主要介紹了使用Python FastAPI構(gòu)建Web服務(wù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06