自学了一天opencv,挑了点基础的先记在这

本文介绍了如何使用OpenCV进行摄像头视频捕捉、基本图像读取与操作、RGB通道处理、参数查询、图像算术运算、融合及类型转换,以及边缘检测和视频处理的技术。通过实例演示了Canny边缘检测在实时视频中的应用。
摘要由CSDN通过智能技术生成
import cv2
================调用摄像头================
def video_demo():
    cap = cv2.VideoCapture(0)#只有一个摄像头默认为0
    while (True):
        ref, frame = cap.read()#ref为true,false,是否获取到图像。frame为获取到的图像
        if ref==1:
             cv2.imshow("1", frame)
        else:
            print("error")
            break
        cv2.waitKey(0)#waitkey()看做刷新,参数ms后下一帧
video_demo()
cv2.destroyAllWindows()
================基本函数用法================
im=cv2.imread('PATH',0/1)#0灰度图像,1彩色,默认彩色
im=cv2.resize(im,(810,540))//调整图片大小
或im = cv2.resize(src, None, fx=0.5, fy=0.5)


cv2.imshow('winname',im)#显示图片,必须带名字??
cv2.waitKey(0)//不然显示闪过,调用摄像头时循环里加waitkey(30),每30ms刷新一帧
cv2.destroyAllWindows()#摧毁显示窗口,每次im.show()后都得加
================RGB图形处理================
r, g, b = cv2.split(im)//将im的rgb三个通道分开
 im1 = cv2.merge([r, g, b])//将通道为rgb的三个通道融合
================查询参数================
 print(im.shape)#返回包含行数、列数、通道数的元祖
 print(im.size)#返回总像素数目(行×列×通道数)
================图像加法================
cv2.add(图像1,图像2)//1)当像素值 <= 255时,结果为“图像1+图像2”,例如:120+48=168。当像素值 > 255时,结果为255,例如:(255+64) = 255
//参与运算的图像大小和类型必须一致。
================图像融合================
dst = cv2.addWeighter(scr1, alpha, src2, beta, gamma)
图像融合:目标图像 = 图像1  系数1 + 图像2  系数2 + 亮度调节量
================图像类型转换================
result = cv2.cvtColor(图像, 参数) 
其中,参数有以下三种:
      1) cv2.COLOR_BGR2GRAY 
      2) cv2.COLOR_BGR2RGB
      3) cv2.COLOR_GRAY2BGR
================边缘检测================
edges =  cv2.Canny(image, threshold1, threshold2)
    image: 原始图像
    threshold1: 阈值1 minVal
    threshold2: 阈值2  maxVal
================视频边缘检测================
def game():
    cap=cv2.VideoCapture(0,cv2.CAP_DSHOW)//不加cap有警告,不过无伤大雅
    while(True):
        ref, frame = cap.read()
        res=cv2.Canny(frame,64,428)//参数可随意改,越小越细节## 标题
        cv2.imshow('1', res)
        c=cv2.waitKey(30)
        if c==27:
            break















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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值