-
pyqt5中时间插件
-
获取当前时间QDateTime.currentDateTime(),当然也可以用datetime
-
-
获取当前主机性能状态的模块
1.psutil模块
2.psutil.boot_time()可以获取到当前电脑的启动时间点
3.psutil.virtual_memory() 可以去获取到当前主机的内存信息
-
获取网络相关的模块
-
ping3模块
-
ping3模块的ping()函数可以对指定IP发起ping请求,并返回延迟时间,数据类型为float,相应可以转换为ms
-
-
zmq的使用
-
client端
import zmq from zmq.backend.cython.constants import SUBSCRIBE, SUB # 创建上下文 context = zmp.Context() # 创建套接字及模式选择 socket = context.socket(SUB) socket.connect('ip & port') # 设置过滤器 socket.setsockopt_string(SUBSCRIBE, '') print('connected') while True: print(socket.recv_pyobj()) time.sleep(1)
-
server端
import zmq import time from zmq.backend.cython.constants import PUB context = zmq.Context() socket = context.socket(PUB) print('connecting') socket.bind('tcp://127.0.0.1:10086') print('connected') while True: socket.send_pyobj('你好啊') time.sleep(1)
-
-
视频流的处理
-
获取视频流并发送
from imutils.video import VideoStream from collections import deque 获取网络摄像头的地址、账号、密码,实例化视频流对象camera = VideoStream(cam_url) 获取每一帧图片:img = camera.read() 采用队列进行传输deque().append(img)
-
接受视频流发送过来的图像帧
from collections import deque import cv2 使用相同的队列收取图片信息 img = deque().popleft() 原帧图片被cv2处理后生成新数据 color_swapped_image = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) 在QT中的QImage进行渲染 self.img = QtGui.QImage(color_swapped_image.data, width, height, color_swapped_image.strides[0], QtGui.QImage.Format_RGB888).scaled(self.width, self.height) 然后执行self.repaint()进行页面重画
-
-
获取主机显示器的分辨率
import ctypes user32 = ctypes.windll.user32 screensize = user32.GetSystemMetrics(0), user32.GetSystemMetrics(1)