python環(huán)境下OPenCV處理視頻流局部區(qū)域像素值
參考我之前寫(xiě)的處理圖片的文章:Python+OpenCV實(shí)現(xiàn)【圖片】局部區(qū)域像素值處理(改進(jìn)版)
開(kāi)發(fā)環(huán)境:Python3.6.0 + OpenCV3.2.0
任務(wù)目標(biāo):攝像頭采集圖像(例如:480640),并對(duì)視頻流每一幀(灰度圖)特定矩形區(qū)域(48030)像素值進(jìn)行行求和,得到一個(gè)480*1的數(shù)組,用這480個(gè)數(shù)據(jù)繪制條形圖,即在逐幀采集視頻流并處理后“實(shí)時(shí)”顯示采集到的視頻,并“實(shí)時(shí)”更新條形圖。工作流程如下圖:


源碼:
# -*- coding:utf-8 -*-
import cv2
import numpy as np
camera = cv2.VideoCapture(0) # 參數(shù)0表示第一個(gè)攝像頭
# camera = cv2.VideoCapture("test.avi") # 從文件讀取視頻
# 判斷視頻是否打開(kāi)
if (camera.isOpened()):
print 'Open'
else:
print 'Fail to open!'
# # 測(cè)試用,查看視頻size
# size = (int(camera.get(cv2.CAP_PROP_FRAME_WIDTH)),
# int(camera.get(cv2.CAP_PROP_FRAME_HEIGHT)))
# print 'size:'+repr(size)
rectangleCols = 30
while True:
grabbed, frame_lwpCV = camera.read() # 逐幀采集視頻流
if not grabbed:
break
gray_lwpCV = cv2.cvtColor(frame_lwpCV, cv2.COLOR_BGR2GRAY) # 轉(zhuǎn)灰度圖
frame_data = np.array(gray_lwpCV) # 每一幀循環(huán)存入數(shù)組
box_data = frame_data[:, 400:400+rectangleCols] # 取矩形目標(biāo)區(qū)域
pixel_sum = np.sum(box_data, axis=1) # 行求和q
length = len(gray_lwpCV)
x = range(length)
emptyImage = np.zeros((rectangleCols*10, length*2, 3), np.uint8)
for i in x:
cv2.rectangle(emptyImage, (i*2, (rectangleCols-pixel_sum[i]/255)*10), ((i+1)*2, rectangleCols*10), (255, 0, 0), 1)
emptyImage = cv2.resize(emptyImage, (320, 240))
# 畫(huà)目標(biāo)區(qū)域
lwpCV_box = cv2.rectangle(frame_lwpCV, (400, 0), (430, length), (0, 255, 0), 2)
cv2.imshow('lwpCVWindow', frame_lwpCV) # 顯示采集到的視頻流
cv2.imshow('sum', emptyImage) # 顯示畫(huà)出的條形圖
key = cv2.waitKey(1) & 0xFF
if key == ord('q'):
break
camera.release()
cv2.destroyAllWindows()
以上就是python環(huán)境下OPenCV處理視頻流局部區(qū)域像素值的詳細(xì)內(nèi)容,更多關(guān)于OPenCV視頻流局部區(qū)域像素處理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
anaconda的安裝和配置環(huán)境及導(dǎo)入pycharm的方法
這篇文章主要介紹了anaconda的安裝和配置環(huán)境及導(dǎo)入pycharm的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
python面向?qū)ο蟀鎸W(xué)生信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python面向?qū)ο蟀鎸W(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06
使用python繪制人人網(wǎng)好友關(guān)系圖示例
這篇文章主要介紹了使用python繪制人人網(wǎng)好友關(guān)系圖示例,需要的朋友可以參考下2014-04-04
python+pyqt實(shí)現(xiàn)右下角彈出框
這篇文章主要為大家詳細(xì)介紹了python+pyqt實(shí)現(xiàn)右下角彈出框,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10
Python學(xué)習(xí)筆記之os模塊使用總結(jié)
這篇文章主要介紹了Python學(xué)習(xí)筆記之os模塊使用總結(jié),本文總結(jié)了多個(gè)常用方法,需要的朋友可以參考下2014-11-11

