资讯专栏INFORMATION COLUMN

Python Opencv中基础的知识点

89542767 / 248人阅读

  怎么从0到1学习Python呢?Python中的知识点,涉及到内容主要是Python Opencv,用于人工智能,机器学习模拟相关的数据,那么,里面的一些较为基础的知识点,涉及到的内容是什么呢?下面就给大家详细解答下。


  OpenCV是一个流行的开源计算机视觉库,可用于不同的编程语言,例如Python、C++和JavaScript。它提供了一套丰富的工具来处理和分析图像和视频,让你可以从调整单张图片的大小到构建复杂的对象识别应用程序。


  本文给大家介绍Python Opencv中基础的知识点。


  1.创建窗口


  import cv2
  import numpy as np
  def createWindow():
  #读取图片
  img=cv2.imread('images/1(1).jpg')
  #创建窗口flags=WINDOW_NORMAL表示可以改变窗口大小
  cv2.namedWindow(winname='window',flags=cv2.WINDOW_NORMAL)
  #缩放窗口的大小
  cv2.resizeWindow(winname='window',width=300,height=200)
  #显示窗口
  cv2.imshow('window',img)
  #获取鼠标或者键值
  key=cv2.waitKey(0)
  if(key&0XFF==ord('Q')):
  cv2.destroyAllWindows()
  #销毁所有的窗口
  if __name__=='__main__':
  print('PyCharm')
  createWindow()

01.png

  2.保存图片


  import cv2
  import numpy as np
  def createWindow():
  #读取图片
  img=cv2.imread('images/1(1).jpg')
  #创建窗口flags=WINDOW_NORMAL表示可以改变窗口大小
  cv2.namedWindow(winname='window',flags=cv2.WINDOW_NORMAL)
  #缩放窗口的大小
  cv2.resizeWindow(winname='window',width=300,height=200)
  while True:
  #显示窗口
  cv2.imshow('window',img)
  #获取鼠标或者键值
  key=cv2.waitKey(0)
  if(key&0XFF==ord('Q')):
  break
  elif(key&0xFF==ord('s')):
  #保存图片
  #name-保存的文件名img-保存的图片
  cv2.imwrite('save_pic.png',img)
  break
  cv2.destroyAllWindows()
  #销毁所有的窗口
  if __name__=='__main__':
  print('PyCharm')
  createWindow()

02.png

  3.采集视频


  import os
  import cv2
  import numpy as np
  def CollectVideo():
  #创建窗口
  cv2.namedWindow(winname='window',flags=cv2.WINDOW_AUTOSIZE)
  cv2.resizeWindow(winname='window',width=450,height=300)
  #打开摄像头
  cap=cv2.VideoCapture(0)
  fourcc=cv2.VideoWriter_fourcc(*'MJPG')
  #获取窗口大小
  size=(int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))
  #输出文件多媒体文件格式视频帧率分辨率大小
  vw=cv2.VideoWriter('video.avi',fourcc,25,size)
  while cap.isOpened():
  #从摄像头读取视频帧
  OK,frame=cap.read()
  if OK:
  #显示摄像头画面
  cv2.imshow('window',frame)
  cv2.resizeWindow(winname='window',width=450,height=300)
  #将从摄像头采集的视频帧写入文件
  vw.write(frame)
  #从鼠标和键盘获取键值,按下ESC键退出
  if cv2.waitKey(1)&0xFF==27:
  break
  #释放资源
  cap.release()
  vw.release()
  #销毁所有的窗口
  cv2.destroyAllWindows()
  if __name__=='__main__':
  print('Pycharm')
  CollectVideo()


  4.鼠标控制


  #回调函数参数解释
  #event:鼠标移动,按下左键;
  #(x,y):鼠标坐标
  #flags:鼠标键及组合键
  import cv2
  import numpy as np
  #回调函数定义
  def mouse_callback(event,x,y,flags,userdata):
  print(event,x,y,flags,userdata)
  #创建窗口
  cv2.namedWindow(winname='mouse',flags=cv2.WINDOW_NORMAL)
  cv2.resizeWindow(winname='mouse',width=450,height=300)
  #给“mouse”窗口设置回调函数
  cv2.setMouseCallback('mouse',mouse_callback,'123')
  img=np.zeros(shape=(300,450,3),dtype=np.uint8)
  while True:
  cv2.imshow('mouse',img)
  #按下ESC键退出
  if cv2.waitKey(1)&0xFF==27:
  break
  cv2.destroyAllWindows()
  if __name__=='__main__':
  print('pycharm')

  5.TrackBar组件


  import os
  import cv2
  import numpy as np
  cv2.namedWindow(winname='trackbar',flags=cv2.WINDOW_NORMAL)
  cv2.resizeWindow(winname='trackbar',width=450,height=300)
  #获取TrackBar的值
  def TrackBarValue():
  #获取窗口“window”下子窗口“R”的值
  value_R=cv2.getTrackbarPos(trackbarname='R',winname='trackbar')
  value_G=cv2.getTrackbarPos(trackbarname='G',winname='trackbar')
  value_B=cv2.getTrackbarPos(trackbarname='B',winname='trackbar')
  return value_R,value_G,value_B
  def callback():
  pass
  #定义TrackBar函数
  def TrackBarBGR():
  #value-trackbar的值count-设置的最大值count(最小值为0)OnChange-回调函数
  cv2.createTrackbar('R','trackbar',0,255,callback)
  cv2.createTrackbar('G','trackbar',0,255,callback)
  cv2.createTrackbar('B','trackbar',0,255,callback)
  img=np.zeros(shape=(450,300,3),dtype=np.uint8)
  #创建trackbar组件
  TrackBarBGR()
  while True:
  #获取trackbar的值
  R,G,B=TrackBarValue()
  img[:]=[B,G,R]
  #获取值之后改变背景的颜色
  cv2.imshow('trackbar',img)
  #按下ESC键退出
  if cv2.waitKey(1)&0xFF==27:
  break
  cv2.destroyAllWindows()
  if __name__=='__main__':
  print('Pycharm')

03.png

  综上所述,这篇文章就给大家介绍完毕了,希望可以给大家带来帮助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/128367.html

相关文章

发表评论

0条评论

最新活动
阅读需要支付1元查看
<