Python opencv图像处理

前言

opencv是一个强大的图像处理和计算机视觉库,最近有学图像处理这门课程,对图像处理的理解还是一头雾,想起python也可以做图像处理,想动手做一下图像处理,这里只是做简单的入门。

安装
pip install opencv-python

如果安装失败可以更换一下镜像源,或者用pycharm和anaconda等软件的内部库直接安装。

打开摄像头

cv2.CAP_DSHOW 加上这个参数,保存图像的的时候就不会出报错

import cv2

def cap_open():

    capture = cv2.VideoCapture(0,cv2.CAP_DSHOW) # 打开摄像头,0代表的本地摄像头
    
    while True:
        ref, img = cap.read()       # ret为返回值,img为当前帧
        img1 = cv2.flip(img,1)          # 图像反转,1为左右对还
        cv2.imshow("picture", img1)     # 以‘picture’窗口名打开图像
        
        c = cv2.waitKey(30)&0xff        # 等待30ms显示图像,若过程中按“Esc”退出
        if c == 27:
            cap.release()           # 释放摄像头
            break

cap_open()
cv2.waitKey()
cv2.destroyAllWindows()					# 关闭摄像头
拍照
import cv2
import time

def get_photo():
    cap = cv2.VideoCapture(0, cv2.CAP_DSHOW)  # 打开摄像头
    ret, img = cap.read()  # ret为返回值,img为当前帧
    img1 = cv2.flip(img, 1)  # 图像反转,1为左右对换
    time.sleep(2)            #  延迟2s
    cv2.imwrite("richowe.jpg", img1)  # 保存停止帧图
    cap.release()

if __name__ == '__main__':
	get_photo()

增加窗口显示,按键拍照

import cv2            #导入opencv库

def take_photo():
    cap=cv2.VideoCapture(0,cv2.CAP_DSHOW)    #打开摄像头
    while True:
        ret,img=cap.read()                   # ret为返回值,img为当前帧
        img1=cv2.flip(img,1)                 #图像反转,1为左右对换,-1为上下对换
        cv2.imshow("richowe",img1)          #显示图片在窗口上
        if 27==cv2.waitKey(10):              #按下esc键拍照,退出
            cv2.imwrite("richowe.jpg",img1) #保存停止帧图片
            cap.release()
            break

if __name__ == '__main__':
    cv2.namedWindow("richowe")              #创建窗口
    take_photo()
    cv2.destroyAllWindows()                  #关闭窗口

图像处理会接着写。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值