openmv学习笔记(24电赛笔记)

感光元件

       openmv采用小孔摄像模式,将图像映射到感光原件上面,来传递图片,通过图片快速的刷新行成视频,在IDE中通过对感光原件的编辑可以控制视频的效果。

重置感光元件到默认状态

import sensor  #导入感光元件这个库

sensor.reset()    #重置感光元件设置到默认配置

设置视频颜色

       这个函数可以设置,视频显示颜色,有两个参数,分别是黑白和彩色。 

sensor.set_pixformat()    #设置视频颜色函数
sensor.RGB565    #函数参数,设置为彩色,采用RGB565配色
sensor.GRAYSCALE  #函数参数,设置为灰色图片

sensor.set_pixformat(sensor.RGB565) #设置照片为彩色

sensor.set_pixformat(sensor.GRAYSCALE)  #设置照片为灰色

设置获取图片大小

        视频的每一帧是由图片组成,同样的感光元件图片大小,决定了视频的大小。

sensor.set_framesize()  #函数设置图片大小

sensor.QQCIF #参数 大小是 88*72

sensor.QCIF  #参数  大小是 176*148

sensor.CIF   #参数  大小是 352 *296



#同理下面这些都是
sensor.QQCIF: 88x72
sensor.QCIF: 176x144
sensor.CIF: 352x288
sensor.QQSIF: 88x60
sensor.QSIF: 176x120
sensor.SIF: 352x240
sensor.QQQQVGA: 40x30
sensor.QQQVGA: 80x60
sensor.QQVGA: 160x120
sensor.QVGA: 320x240
sensor.VGA: 640x480
sensor.HQQQVGA: 80x40
sensor.HQQVGA: 160x80
sensor.HQVGA: 240x160

跳过一些帧

        这个函数用来跳过一些图片,在更改感光元件设置之后,跳过一些图片等待,感光元件变得稳定。

sensor.skip_frames(n)  #跳过图片

n  #这个参数可以是任意正整数

获取图片

        获取的这些图片按照一定频率,进行刷新就形成了视频,这个函数用来捕捉摄像头的图像,把这个函数丢到while循环里面,就能得到视频

sensor.snapshot()  #拍摄一张照片

image = sensor.snapshot #image对象保存 返回的图片


#放在while 循环里面就能一直得到视频

while (True):
    image = sensor.snapshot

改善获取图像质量

        这个函数用来开启图像增益,调整信号强度,或者放大程度,控制视频信号的亮度或者对比度,在颜色追踪的时候,需要关闭自动增益。

sensor.set_auto_gain()  #开启增益函数

True  False  #函数参数

sensor.set_auto_gain(True) #开启增益效果

        下面函数用来设置白平衡,白平衡就是在不同的光照下,使得不同的白对象在不同的光源下,仍然是白色,在颜色追踪的时候,需要关闭白平衡。

sensor.set_auto_whitebal() #函数用来开启白平衡

#参数
True False 

sensor.set_auto_whitebal(True) #开启白平衡

        下面函数用来设置曝光,

sensor.set_auto_exposure()    #这个函数用来设置曝光

#参数
True  False 

设置视频窗口大小

        这个函数用来设置IDE中,显示视频窗口中,显示图像的大小,可以对摄像头获取图像的大小进行获取出自己想要的部分。

sensor.set_framesize(VGA)  #设置获取图片大小

sensor.set_windowing((640,480))     #设置IED中,视频显示框的大小为  640*480

设置视频翻转

        这个函数是用来,设置电脑视频显示翻转的函数,可以设置水平翻转或者垂直方向翻转,设置完之后的显示在IDE的视频窗口显示里面。

sensor.set_hmirror(True) #设置水平方向翻转

sensor.set_vflip(True)   #设置垂直方向翻转

        感光元件这一张,都是用来对,openmv摄像头获取图像,显示在IDE中的相关作用函数,主要是用来配置获取图像大小,视频显示效果的函数,应用在使用摄像头显示获取相关的摄像

获取图片的计算

        在上面,摄像头获取的图像大小,可以被设置为 VGA  QVGA  QQVGA  这些类型代表着不同的图像像素大小 VGA 代表着 640*480 意味着长有640个像素点  宽有480个像素点,每个像素点,可以用坐标来表示。

获取图片像素点

        这个函数用来获取,图片坐标的像素点,给定坐标,如果感光元件设置的是灰色返回,灰度值,如果设置的是RGB颜色,则返回每个颜色取值,组成的数组。

image.get_pixel(x,y)  #函数作用在点(x y)

#如果感光元件设置的是灰色,返回坐标的灰度值
#如果是RGB颜色,则返回(r g b)的tuple数组里面是每种颜色的取值

设置像素点

        这个函数用来设置图片上每个像素点,还是分两种情况,感光元件设置为灰色,设置为RGB颜色,前者设置的是灰度值,灰度值每个像素只有8bit,如果是RGB颜色,每个像素点是16bit,同时16bit被 R G B 三种颜色区分 R 5种 G 6种 B 5种  ,这么去分。

image = sensor.snapshot()
image.get_pixel(10 ,10)      #获取像素点的灰度值 或者RGB值
image.get_pixel(10 ,10 (255, 0 ,0)) #设置像素点的RGB颜色数值

获取图像数据

        这些函数用来,返回摄像头获取图像的数据, 宽 高 图像类型  图像像素大小

image.width()     #返回图像的宽度  单位是像素 

image.height()    #返回图像的高度  单位是像素

image.format()    #返回图像的类型  单位是  RGB  或者GRAYSCALE

image.size()       #返回获取图形的大小   Byte为单位

图像的运算

        这个函数用来比较两张图片之间的差异,或者进行运算使用,常见的运算有  与非 或非 异或 异或非   两张图片相减  图片取反

image.invert()    #这个函数用来取反对图片  如果是二值化图片 则 0变1 1变0

image.nand(image)  #两张图片进行与非运算

image.nor(image)    #两张图片进行或非运算

image.xor(image)    #两张图片进行异或运算

image.difference(image)    #图片进行相减 ,图片的每个像素点,取相减的绝对值操作

#这个函数常用与移动检测

                                欢迎指正,希望对你,有所帮助!!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值