当前位置: 代码迷 >> 综合 >> python opencv入入入门操作
  详细解决方案

python opencv入入入门操作

热度:77   发布时间:2024-03-07 12:34:48.0

安装库就不说啦~基本操作都写在注释里咯

import cv2 #默认读取BGR图像# 读取彩色图片
def img_show():img = cv2.imread('E:/123.jpg')# 显示图片,第一个参数随便写,第二个参数就是读取的图片cv2.imshow('iamge',img)# 图片显示后停留多久,单位是毫秒,如果写0就是不关闭cv2.waitKey(6000)# 关闭所有的窗口cv2.destroyAllWindows()# 打印部分图片区域 第一个数是从图片左上角往下数,第二个是要多高的图,同理第三个是往左数,第四个是宽度part_img = img[500:800,500:800]cv2.imshow('part_iamge', part_img)cv2.waitKey(6000)# 关闭所有的窗口cv2.destroyAllWindows()# 打印图片的大小:高h 宽w 颜色cprint(img.shape)# 读取部分颜色通道
def img_show2():img = cv2.imread('E:/123.jpg')# cv2颜色顺序是 BGR千万记得哟,拆分一下颜色# 0 1 2 分别代表 BLUE GREEN RED# 前面提到图片三个参数,分别是“高h 宽w 颜色c”# 所以最后一个参数就代表颜色啦,根据012对应关系,把他改成0颜色就没了# 将颜色0 BLUE变成没有img[:,:,0]=0# 将颜色 1 GREEN 变成没有img[:,:,1]=0# BG都没了,只剩下R红色了。。cv2.imshow('img_r',img)cv2.waitKey(0)cv2.destroyAllWindows()# 读取灰度图片
def img_show_nc():#和上面的比多了个cv2.IMREAD_GRAYSCALE参数img = cv2.imread('E:/123.jpg',cv2.IMREAD_GRAYSCALE)# 打印图片的大小,这时只有2个数字:高h 宽wprint(img.shape)# 保存图片 因为打开的时候用了cv2.IMREAD_GRAYSCALE变成灰度图片,所以保存也是黑白的#cv2.imwrite('E:/234.jpg',img)print(img.size) # 打印图片像素数大小print(type(img)) # 打印图片类型 <class 'numpy.ndarray'>print(img.dtype) # 打印图片类型 uint8# 读取视频 一帧一帧读取视频~也就当作图片处理咯
def video_capture():vc = cv2.VideoCapture('D:\迅雷下载\蒙太奇BD韩语中字.mp4')# 判断视频能不能打开if vc.isOpened():open,frame = vc.read()else:open = Falsewhile open:# 如果视频可以打开,就读取每一帧ret,frame = vc.read()if frame is None:breakif ret == True:# 显示每帧的结果img = cv2.cvtColor(frame,cv2.COLOR_BGR2BGRA)cv2.imshow('result',img)# 每帧停留5毫秒# & 0xFF == 27 暂时没搞明白if cv2.waitKey(5) & 0xFF == 27:breakvc.release()cv2.destroyAllWindows()

 

  相关解决方案