91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡(jiǎn)介

基于python3 opencv 視頻采集,采用TCP協(xié)議進(jìn)行雙路視頻傳輸,以及雙顯示界面實(shí)現(xiàn)

資源截圖

代碼片段和文件信息

#!/usr/bin/env?python
#?-*-?coding:utf-8?-*-?
#?Author:?K_liu
‘‘‘
這是一個(gè)客戶端程序,由于需要顯示兩路視頻畫(huà)面,所以采用pygame來(lái)進(jìn)行編寫(xiě)程序,Opencv界面可定制化沒(méi)有pygame靈活
當(dāng)然大家也可以采用python的其他GUI開(kāi)發(fā)工具。
‘‘‘
import?socket
import?cv2
import?struct
import?numpy
import?pygame
from?pygame.locals?import?*
from?sys?import?exit
global?image1
global?image2

#?Configuration?file
pygame.init()?#?初始化pygame
window_size?=?(1280?480)?#?設(shè)置顯示界面大小
screen?=?pygame.display.set_mode(window_size?0?32)?#?pygame顯示設(shè)置
pygame.display.set_caption(‘Two?Camera?Show‘)?#?設(shè)置顯示標(biāo)題
pygame.display.flip()
clock?=?pygame.time.Clock()

def?Get_image():
????info?=?struct.unpack(“l(fā)hh“?client_socket.recv(8))?#?進(jìn)行數(shù)據(jù)包解包操作
????flag?=?info[1]?#?flag是為了辨別是那一路信號(hào),采用0和1進(jìn)行區(qū)分,詳情請(qǐng)見(jiàn)服務(wù)器段程序
????print(‘模擬指令:{}‘.format(info[2]))
????buf_size?=?info[0]??#?獲取讀的圖片總長(zhǎng)度
????if?buf_size:
????????try:
????????????buf?=?b““??#?代表bytes類型
????????????temp_buf?=?buf
????????????while?(buf_size):??#?讀取每一張圖片的長(zhǎng)度
????????????????temp_buf?=?client_socket.recv(buf_size)
????????????????buf_size?-=?len(temp_buf)
????????????????buf?+=?temp_buf??#?獲取圖片
????????????????data?=?numpy.fromstring(buf?dtype=‘uint8‘)??#?按uint8轉(zhuǎn)換為圖像矩陣
????????????????image?=?cv2.imdecode(data?1)??#?圖像解碼
????????????????return?image?flag
????????except:
????????????pass

def?ShowImage():
????while?(1):
????????for?event?in?pygame.event.get():
????????????if?event.type?==?QUIT:
????????????????exit()
????????frame?flag?=?Get_image()
????????if?flag?==?0:
????????????image1?=?frame
????????????flag1?=?flag
????????????frame1?=?cv2.cvtColor(image1?cv2.COLOR_BGR2RGB)#將圖片轉(zhuǎn)換成RGB格式,Opencv采用的是BGR
????????????frame1?=?numpy.rot90(frame1)
????????????frame1?=?pygame.surfarray.make_surface(frame1)?#?轉(zhuǎn)換成pygame的背景格式
????????????screen.blit(frame1?(0?0))?#?進(jìn)行背景渲染

????????elif?flag?==?1:
????????????image2?=?frame
????????????flag2?=?flag
????????????frame2?=?cv2.cvtColor(image2?cv2.COLOR_BGR2RGB)
????????????frame2?=?numpy.rot90(frame2)
????????????frame2?=?pygame.surfarray.make_surface(frame2)
????????????screen.blit(frame2?(6400))
????????pygame.display.update()?#?刷新背景



if?__name__?==?‘__main__‘:
????addr_port?=?(‘127.0.0.1‘?8080)
????client_socket?=?socket.socket(socket.AF_INET?socket.SOCK_STREAM)
????client_socket.setsockopt(socket.SOL_SOCKET?socket.SO_REUSEADDR?1)??#?端口可復(fù)用
????client_socket.connect(addr_port)
????print(“IP?is?%s:%d“?%?(addr_port[0]?addr_port[1]))
????ShowImage()



?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????2870??2018-08-01?18:05??雙路視頻傳輸系統(tǒng)\camera_change_client.py
?????文件????????2537??2018-08-01?18:05??雙路視頻傳輸系統(tǒng)\camera_change_server.py

評(píng)論

共有 條評(píng)論