石家庄医疗网站建设,哪个网站能接施工图来做,网站登录系统源码,wordpress建站容易吗文章目录 OpenCV创建显示窗口OpenCV加载显示图片OpenCV保存文件利用OpenCV从摄像头采集视频从多媒体文件中读取视频帧将视频数据录制成多媒体文件OpenCV控制鼠标关于[np.uint8](https://stackoverflow.com/questions/68387192/what-is-np-uint8) OpenCV中的TrackBar控件TrackBa… 文章目录 OpenCV创建显示窗口OpenCV加载显示图片OpenCV保存文件利用OpenCV从摄像头采集视频从多媒体文件中读取视频帧将视频数据录制成多媒体文件OpenCV控制鼠标关于[np.uint8](https://stackoverflow.com/questions/68387192/what-is-np-uint8) OpenCV中的TrackBar控件TrackBar的使用 OpenCV创建显示窗口
多看源码参考文档
import cv2
cv2.namedWindow(new, cv2.WINDOW_NORMAL)
cv2.imshow(new, 0)key cv2.waitKey(0)
if(key q):exit()cv2.destroyAllWindows()import cv2
cv2.namedWindow(new, cv2.WINDOW_NORMAL)
cv2.resizeWindow(new, 1920, 1080)
cv2.imshow(new, 0)key cv2.waitKey(0)
if(key q):exit()cv2.destroyAllWindows()OpenCV加载显示图片 import cv2
cv2.namedWindow(img, cv2.WINDOW_NORMAL)
# cv2.resizeWindow(img, 1920, 1080)
img cv2.imread(E://pic//mylove.jpg)
cv2.imshow(img, img)key cv2.waitKey(0)
if(key 0xff ord(q)):cv2.destroyAllWindows()可以看官方文档 其中提到cv2.waitKey()返回值是int类型而ASCII码是8位(char)所以我们需要用key 0xff取它的低八位来实现而ord函数是Python中的另一个内建函数用于将字符转换为对应的ASCII码。
OpenCV保存文件 import cv2
cv2.namedWindow(img, cv2.WINDOW_NORMAL)
# cv2.resizeWindow(img, 1920, 1080)
img cv2.imread(E://pic//mylove.jpg)while True:cv2.imshow(img, img)key cv2.waitKey(0)if(key 0xff ord(q)):breakelif(key 0xff ord(s)):cv2.imwrite(E://pic//picc//mylove.png, img)breakelse:print(key - 32)cv2.destroyAllWindows()利用OpenCV从摄像头采集视频 # -*- coding: utf-8 -*-
import cv2# 创建窗口
cv2.namedWindow(video, cv2.WINDOW_NORMAL)
cv2.resizeWindow(video, 640, 480)# 获取视频设备
cap cv2.VideoCapture(0)while True:# 从摄像头读取视频帧ret, frame cap.read()# 将视频帧在窗口中显示cv2.imshow(video, frame)# 等待键盘事件如果为q退出key cv2.waitKey(1)if(key 0xff ord(q)):break# 释放VideoCapture
cap.release()
cv2.destroyAllWindows()从多媒体文件中读取视频帧 和之前从摄像头采集视频最大的区别是要根据视频的fps来修改cv2.waitKey()里的值如果你是22fps的视频相当于1s走22帧即1000ms走22帧即一帧需要1000 / 22ms而这个就是cv2.waitKey()里应该填的值
# -*- coding: utf-8 -*-
import cv2# 创建窗口
cv2.namedWindow(video, cv2.WINDOW_NORMAL)
cv2.resizeWindow(video, 640, 480)# 获取视频设备/从视频文件中读取视频帧
# cap cv2.VideoCapture(0)
cap cv2.VideoCapture(E://DownloadPack//Video//particles.mp4)while True:# 从摄像头读取视频帧ret, frame cap.read()# 将视频帧在窗口中显示cv2.imshow(video, frame)# 等待键盘事件如果为q退出key cv2.waitKey(40)if(key 0xff ord(q)):break# 释放VideoCapture
cap.release()
cv2.destroyAllWindows()将视频数据录制成多媒体文件 # -*- coding: utf-8 -*-
import cv2# 创建VideoWriter为写多媒体文件
fourcc cv2.VideoWriter_fourcc(m, p, 4, v)
vw cv2.VideoWriter(.//out.mp4, fourcc, 24, (1280, 720))# 创建窗口
cv2.namedWindow(video, cv2.WINDOW_NORMAL)
cv2.resizeWindow(video, 640, 480)# 获取视频设备/从视频文件中读取视频帧
cap cv2.VideoCapture(0)
# cap cv2.VideoCapture(E://DownloadPack//Video//particles.mp4)while True:# 从摄像头读取视频帧ret, frame cap.read()# 将视频帧在窗口中显示cv2.imshow(video, frame)# 写数据到多媒体文件vw.write(frame)# 等待键盘事件如果为q退出key cv2.waitKey(40)if(key 0xff ord(q)):break# 释放VideoCapture
cap.release()# 释放VideoWriter
vw.release()cv2.destroyAllWindows()# -*- coding: utf-8 -*-
import cv2# 创建VideoWriter为写多媒体文件
fourcc cv2.VideoWriter_fourcc(m, p, 4, v)
vw cv2.VideoWriter(.//out.mp4, fourcc, 24, (1280, 720))# 创建窗口
cv2.namedWindow(video, cv2.WINDOW_NORMAL)
cv2.resizeWindow(video, 640, 480)# 获取视频设备/从视频文件中读取视频帧
cap cv2.VideoCapture(0)
# cap cv2.VideoCapture(E://DownloadPack//Video//particles.mp4)# 判断摄像头是否为打开状态
while cap.isOpened():# 从摄像头读取视频帧ret, frame cap.read()if ret True:# 将视频帧在窗口中显示cv2.imshow(video, frame)# 重新将窗口设置为指定大小cv2.resizeWindow(video, 640, 480)# 写数据到多媒体文件vw.write(frame)# 等待键盘事件如果为q退出key cv2.waitKey(40)if(key 0xff ord(q)):breakelse:break;# 释放VideoCapture
cap.release()# 释放VideoWriter
vw.release()cv2.destroyAllWindows()OpenCV控制鼠标 # -*- coding: utf-8 -*-
import cv2
import numpy as np# 鼠标回调函数
def mouse_callback(event, x, y, flags, userdata):print(event, x, y, flags, userdata)# 创建窗口
cv2.namedWindow(mouse, cv2.WINDOW_NORMAL)
cv2.resizeWindow(mouse, 640, 360)# 设置鼠标回调
cv2.setMouseCallback(mouse, mouse_callback, 666)# 显示窗口和背景
img np.zeros((360, 640, 3), np.uint8)
while True:cv2.imshow(mouse, img)key cv2.waitKey(0)if key 0xff ord(q):breakcv2.destroyAllWindows()关于np.uint8 OpenCV中的TrackBar控件 TrackBar的使用
OpenCV颜色空间默认BGR格式
# -*- coding: utf-8 -*-
import cv2
import numpy as npdef callback():pass# 创建窗口
cv2.namedWindow(trackbar, cv2.WINDOW_NORMAL)# 创建trackbar
cv2.createTrackbar(R, trackbar, 31, 255, callback)
cv2.createTrackbar(G, trackbar, 24, 255, callback)
cv2.createTrackbar(B, trackbar, 0, 255, callback)# 创建一个背景图片
img np.zeros((480, 640, 3), np.uint8)while True:# 获取当前trackbar的值r cv2.getTrackbarPos(R, trackbar)g cv2.getTrackbarPos(G, trackbar)b cv2.getTrackbarPos(B, trackbar)# 改变背景图片颜色img[:] [b, g, r]cv2.imshow(trackbar, img)key cv2.waitKey(10)if key 0xff ord(q):breakcv2.destroyAllWindows()之后我会持续更新如果喜欢我的文章请记得一键三连哦点赞关注收藏你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 ↖(▔▽▔)↗感谢支持