资讯专栏INFORMATION COLUMN

Python Opencv中基础的知识点

89542767 / 594人阅读

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


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


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


  1.创建窗口


</>复制代码

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

01.png

  2.保存图片


</>复制代码

  1.   import cv2
  2.   import numpy as np
  3.   def createWindow():
  4.   #读取图片
  5.   img=cv2.imread('images/1(1).jpg')
  6.   #创建窗口flags=WINDOW_NORMAL表示可以改变窗口大小
  7.   cv2.namedWindow(winname='window',flags=cv2.WINDOW_NORMAL)
  8.   #缩放窗口的大小
  9.   cv2.resizeWindow(winname='window',width=300,height=200)
  10.   while True:
  11.   #显示窗口
  12.   cv2.imshow('window',img)
  13.   #获取鼠标或者键值
  14.   key=cv2.waitKey(0)
  15.   if(key&0XFF==ord('Q')):
  16.   break
  17.   elif(key&0xFF==ord('s')):
  18.   #保存图片
  19.   #name-保存的文件名img-保存的图片
  20.   cv2.imwrite('save_pic.png',img)
  21.   break
  22.   cv2.destroyAllWindows()
  23.   #销毁所有的窗口
  24.   if __name__=='__main__':
  25.   print('PyCharm')
  26.   createWindow()

02.png

  3.采集视频


</>复制代码

  1.   import os
  2.   import cv2
  3.   import numpy as np
  4.   def CollectVideo():
  5.   #创建窗口
  6.   cv2.namedWindow(winname='window',flags=cv2.WINDOW_AUTOSIZE)
  7.   cv2.resizeWindow(winname='window',width=450,height=300)
  8.   #打开摄像头
  9.   cap=cv2.VideoCapture(0)
  10.   fourcc=cv2.VideoWriter_fourcc(*'MJPG')
  11.   #获取窗口大小
  12.   size=(int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))
  13.   #输出文件多媒体文件格式视频帧率分辨率大小
  14.   vw=cv2.VideoWriter('video.avi',fourcc,25,size)
  15.   while cap.isOpened():
  16.   #从摄像头读取视频帧
  17.   OK,frame=cap.read()
  18.   if OK:
  19.   #显示摄像头画面
  20.   cv2.imshow('window',frame)
  21.   cv2.resizeWindow(winname='window',width=450,height=300)
  22.   #将从摄像头采集的视频帧写入文件
  23.   vw.write(frame)
  24.   #从鼠标和键盘获取键值,按下ESC键退出
  25.   if cv2.waitKey(1)&0xFF==27:
  26.   break
  27.   #释放资源
  28.   cap.release()
  29.   vw.release()
  30.   #销毁所有的窗口
  31.   cv2.destroyAllWindows()
  32.   if __name__=='__main__':
  33.   print('Pycharm')
  34.   CollectVideo()


  4.鼠标控制


</>复制代码

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

  5.TrackBar组件


</>复制代码

  1.   import os
  2.   import cv2
  3.   import numpy as np
  4.   cv2.namedWindow(winname='trackbar',flags=cv2.WINDOW_NORMAL)
  5.   cv2.resizeWindow(winname='trackbar',width=450,height=300)
  6.   #获取TrackBar的值
  7.   def TrackBarValue():
  8.   #获取窗口“window”下子窗口“R”的值
  9.   value_R=cv2.getTrackbarPos(trackbarname='R',winname='trackbar')
  10.   value_G=cv2.getTrackbarPos(trackbarname='G',winname='trackbar')
  11.   value_B=cv2.getTrackbarPos(trackbarname='B',winname='trackbar')
  12.   return value_R,value_G,value_B
  13.   def callback():
  14.   pass
  15.   #定义TrackBar函数
  16.   def TrackBarBGR():
  17.   #value-trackbar的值count-设置的最大值count(最小值为0)OnChange-回调函数
  18.   cv2.createTrackbar('R','trackbar',0,255,callback)
  19.   cv2.createTrackbar('G','trackbar',0,255,callback)
  20.   cv2.createTrackbar('B','trackbar',0,255,callback)
  21.   img=np.zeros(shape=(450,300,3),dtype=np.uint8)
  22.   #创建trackbar组件
  23.   TrackBarBGR()
  24.   while True:
  25.   #获取trackbar的值
  26.   R,G,B=TrackBarValue()
  27.   img[:]=[B,G,R]
  28.   #获取值之后改变背景的颜色
  29.   cv2.imshow('trackbar',img)
  30.   #按下ESC键退出
  31.   if cv2.waitKey(1)&0xFF==27:
  32.   break
  33.   cv2.destroyAllWindows()
  34.   if __name__=='__main__':
  35.   print('Pycharm')

03.png

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

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

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

相关文章

发表评论

0条评论

89542767

|高级讲师

TA的文章

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