• opencv学习心得第一章


    背景介绍:opencv是专门用于图像处理的机器视觉库,python是用于快速开发的轻量级语言。opencv提供的接口可以让python轻松的对这个机器视觉库进行操作,进行图像处理。

    Opencv中的Gui特性

    开发环境为linux的Ubuntu使用的语言为python

    1:图像的基本操作

    首先我们先学习如何读入一幅图像

    import numpy as np #导入Python的numpy库
    import cv2 #导入Python的cv2库
    img = cv2.imread("a.jpg")读入当前文件夹里面的a.jpg图像
    

     显示一幅图像

    cv2.imshow("image",img)#显示图片 第一个参数是图片的名字
    cv2.waitKey(0) #检查特定键是否被按下
    cv2.destroyAllWindows()#可以轻易删除我们建立的任何窗口
    

     保持一幅图像

    cv2.imwrite("image-new",img)
    

     下面加载一幅图像按s保持退出,按ESC不保存退出

    import numpy as np
    import cv2
    img = cv2.imread("a.jpg")
    cv2.imshow("image",img)
    k = cv2.waitKey(0)
    if k == 27:#如果是ESC直接退出
        cv2.destroyAllWindows()
    elif k == ord("s"):如果是s保存以后退出
        cv2.imwrite("image-new.jpg",img)
        cv2.destroyAllWindows()
    

     

    2:视频的基本操作

    1:读取视频文件用VideoCapture("视频文件的名字")函数先捕获视频再用cap.read()来读取视频

    2:显示视频用cv2.imshow("frame",gray)

    3 : 保存视频用cv2.VideoWrite()这个函数实现。

    import numpy as np#导入numpy模块
    import cv2#导入cv2这个模块
    cap = cv2.VideoCapture("baby.mp4")捕捉baby.mp4这个文件视频
    fourcc = cv2.VideoWriter_fourcc(*"XVID")#用来确定视频的编码格式
    out = cv2.VideoWriter("output.mp4", fourcc, 20.0, (640,480))#用来保存视频的函数包含了视频的大小格式名称等
    while(cap.isOpened()):视频捕捉成功执行下面代码
       ret, frame = cap.read()#读取视频
       if ret == True:#如果读取成功
           frame = cv2.flip(frame, 0)#获取帧数
           
           out.write(frame)#保存帧数
    
           cv2.imshow("frame", frame)#显示帧数
           if cv2.waitKey(1) & 0xFF == ord("q"):
              break
       else:
          break
    cap.release()#关闭捕捉
    out.release()#关闭保存
    cv2.destroyAllWindows()#关闭所有窗口
    

     

  • 相关阅读:
    express中间件原理 && 实现
    vue、react、angular三大框架对比 && 与jQuery的对比
    javascript数据基本类型和引用类型区别详解
    HTML页面的重绘(repaint)和重流(reflow)
    web worker原理 && SSE原理
    C++ STL 初探
    JavaScript模块化 --- Commonjs、AMD、CMD、es6 modules
    nodejs(三) --- nodejs进程与子进程
    数学图形之海螺与贝壳
    数学图形之螺旋管
  • 原文地址:https://www.cnblogs.com/lyx958700392/p/6366265.html
Copyright © 2020-2023  润新知