ps制作网站首页教程,服装设计需要学什么科目,零元创业加盟网,wordpress+登录页加密一、获取图像
要使用OpenCV获取图像#xff0c;你需要安装OpenCV库并学习基本的OpenCV函数。下面是一些获取图像的基本步骤#xff1a; 导入必要的库#xff1a;import cv2 读取图像#xff1a;image cv2.imread(image.jpg) 这将从指定路径读取图像#xf…一、获取图像
要使用OpenCV获取图像你需要安装OpenCV库并学习基本的OpenCV函数。下面是一些获取图像的基本步骤 导入必要的库import cv2 读取图像image cv2.imread(image.jpg) 这将从指定路径读取图像并将其存储在名为image的变量中。
import cv2# 读取图像
image cv2.imread(image.jpg)请注意上述代码中的image.jpg是指定图像的路径。您需要将其替换为您自己的图像路径。 cv2.imread()函数是OpenCV库中的一个函数用于读取图像文件。
语法格式 image cv2.imread(filename, flags)
参数说明
filename要读取的图像文件路径可以是绝对路径或相对路径。flags读取图像的方式。可选参数默认值为 cv2.IMREAD_COLOR。常用的取值有 cv2.IMREAD_COLOR以RGB颜色模式读取图像忽略透明度通道。cv2.IMREAD_GRAYSCALE以灰度模式读取图像。cv2.IMREAD_UNCHANGED读取图像的原始模式包括透明度通道。
图像读取:cv2.imread(img_path,flag)img_path: 图片的路径,即使路径错误也不会报错,但打印返回的图片对象为 Noneflag: cv2.IMREAD_COLOR,读取彩色图片,图片透明性会被忽略,为默认参数,也可以传入 1cv2.IMREAO_GRAYSCALE,按灰度模式读取图像,也可以传入 0cv2.IMREAO_UNCHANGEO,读取图像,包括其 alpha通道,也可以传入 -1
返回值
image读取到的图像数据以numpy数组的形式返回。
示例代码
import cv2# 以RGB颜色模式读取图像
image cv2.imread(image.jpg, cv2.IMREAD_COLOR)# 以灰度模式读取图像
gray_image cv2.imread(image.jpg, cv2.IMREAD_GRAYSCALE)# 以原始模式读取图像
raw_image cv2.imread(image.jpg, cv2.IMREAD_UNCHANGED)二、显示图像
要在OpenCV中显示图像可以使用cv2.imshow()函数。
图像显示:cv2.imshow(winname,img)winname: 窗口名称img: 显示的图像
以下是一个示例代码演示如何显示图像
import cv2# 读取图像
image cv2.imread(image.jpg)# 创建窗口并显示图像
cv2.imshow(Image, image)# 等待用户按下任意键后关闭窗口
cv2.waitKey(0)
cv2.destroyAllWindows()请将上述代码中的image.jpg替换为您要显示的图像的路径和文件名。该代码将创建一个名为Image的窗口并在该窗口中显示图像。用户需要按下任意键后窗口才会关闭。
imread()函数用于加载图像需要传入图像的文件路径。然后使用imshow()函数显示图像在窗口中显示的标题为Image。最后使用waitKey(0)等待用户按下任意键然后使用destroyAllWindows()关闭显示图像的窗口。
注意cv2.imshow()函数可以显示BGR格式的图像。如果图像的颜色空间是RGB需要在显示前将其转换为BGR格式。
此外还可以使用cv2.namedWindow()函数创建一个具有自定义名称的窗口以及cv2.resizeWindow()函数调整窗口的大小。 三、显示视频流
下面是使用OpenCV库显示视频流的示例代码
import cv2
cap cv2.VideoCapture(0) # 0表示默认摄像头如果有多个摄像头可以尝试使用1、2、3...
while True:ret, frame cap.read() # 读取视频流的一帧cv2.imshow(Video, frame) # 显示当前帧if cv2.waitKey(1) 0xFF ord(q): # 按下q键退出循环break
cap.release() # 释放摄像头
cv2.destroyAllWindows() # 关闭窗口这段代码首先创建了一个VideoCapture对象来读取视频流。然后在一个循环中不断读取每一帧并使用imshow()函数显示当前帧。通过waitKey函数等待用户按下q键来退出循环。最后记得释放摄像头资源和关闭窗口。
较复杂的程序
import cv2 as cvcam cv.VideoCapture(xin.avi) # cam cv.VideoCapture(D:\音乐剪辑\love 3.mp4)
# cam.set(3,4080),cam.set(4,3060) # 来把宽和高改成 4080x3060
while(cam.isOpened()): # 用于判断 cap是否正常初始化,返回布尔值,正常则返回 True ret,frame cam.read() cv.imshow(Video,frame)if cv.waitKey(1)27: # 等候 1ms,播放下一帧 if cv.waitKey(60)27: breakcam.release()
cv.destroyAllWindows() 四、相关知识拓展
OpenCV 查看图像调整图像大小图像色彩空间(BGR,HSV)图像读取:cv2.imread(img_path,flag)img_path: 图片的路径,即使路径错误也不会报错,但打印返回的图片对象为 Noneflag: cv2.IMREAD_COLOR,读取彩色图片,图片透明性会被忽略,为默认参数,也可以传入 1cv2.IMREAO_GRAYSCALE,按灰度模式读取图像,也可以传入 0cv2.IMREAO_UNCHANGEO,读取图像,包括其 alpha通道,也可以传入 -1图像显示:cv2.imshow(winname,img)winname: 窗口名称img: 显示的图像图像保存:cv2.imwrite(img_path_name,img,num)img_path_name: 保存的文件名img: 文件对象num(可选): 针对特定的格式对于 JPEG,其表示的是图像的质量,用 0~100的整数表示,默认为 95对于 PNG,第三个参数表示的是压缩级别,默认为 3图像性质:img.shape (打印图片的长,宽和颜色通道数;灰度图的颜色通道数为 1,不显示)img.size (打印图片的像素数目)img.dtype (打印图片的格式)图像缩放:cv2.resize(img,dsize,fx,fy,interpolation)img 代表需要缩放的原始图像dsize 代表输出图像大小 (长,宽)fx,fy 代表水平方向和垂直方向的缩放比例interpolation 代表插值方式INTER_NEAREST 最邻近插值INTER_LINEAR 双线性插值 (默认)INTER_AREA 区域插值INTER_CUBIC 4x4 像素邻域内的双立方插值INTER_LANCZOS4 8x8 像素邻域内的Lanczos插值