感光元件

csi0模块,用于设置感光元件的参数。

举个例子:

import csi#引入感光元件的模块
csi0 = csi.CSI()


# 设置摄像头
csi0.reset()#初始化感光元件
csi0.pixformat(csi.RGB565)#设置为彩色
csi0.framesize(csi.QVGA)#设置图像的大小
csi0.snapshot(time=2000)#跳过一些帧,在更改设置后等待感光元件变稳定。

# 一直拍照
while(True):
    img = csi0.snapshot()#拍摄一张照片,img为一个image对象

初始化

  • csi0.reset() 初始化感光元件

设置彩色/黑白

  • csi0.pixformat() 设置像素模式。
    • csi.GRAYSCALE: 灰度,每个像素8bit。
    • csi.RGB565: 彩色,每个像素16bit。

设置图像大小

  • csi0.framesize() 设置图像的大小
    • csi.QQCIF: 88x72
    • csi.QCIF: 176x144
    • csi.CIF: 352x288
    • csi.QQSIF: 88x60
    • csi.QSIF: 176x120
    • csi.SIF: 352x240
    • csi.QQQQVGA: 40x30
    • csi.QQQVGA: 80x60
    • csi.QQVGA: 160x120
    • csi.QVGA: 320x240
    • csi.VGA: 640x480
    • csi.HQQQVGA: 80x40
    • csi.HQQVGA: 160x80
    • csi.HQVGA: 240x160
    • csi.B64X32: 64x32 (用于帧差异 image.find_displacement())
    • csi.B64X64: 64x64 用于帧差异 image.find_displacement()
    • csi.B128X64: 128x64 (用于帧差异 image.find_displacement())
    • csi.B128X128: 128x128 (用于帧差异 image.find_displacement())
    • csi.LCD: 128x160 (用于LCD扩展板)
    • csi.QQVGA2: 128x160 (用于LCD扩展板)
    • csi.WVGA: 720x480 (用于 MT9V034)
    • csi.WVGA2:752x480 (用于 MT9V034)
    • csi.SVGA: 800x600 (仅用于 OV5640 感光元件)
    • csi.XGA: 1024x768 (仅用于 OV5640 感光元件)
    • csi.SXGA: 1280x1024 (仅用于 OV5640 感光元件)
    • csi.UXGA: 1600x1200 (仅用于 OV5640 感光元件)
    • csi.HD: 1280x720 (仅用于 OV5640 感光元件)
    • csi.FHD: 1920x1080 (仅用于 OV5640 感光元件)
    • csi.QHD: 2560x1440 (仅用于 OV5640 感光元件)
    • csi.QXGA: 2048x1536 (仅用于 OV5640 感光元件)
    • csi.WQXGA: 2560x1600 (仅用于 OV5640 感光元件)
    • csi.WQXGA2: 2592x1944 (仅用于 OV5640 感光元件)

跳过一些帧

  • csi0.snapshot(frames=10) 跳过n张照片,在更改设置后,跳过一些帧,等待感光元件变稳定。

获取一张图像

  • csi0.snapshot() 拍摄一张照片,返回一个image对象。

自动增益/白平衡/曝光

  • csi0.auto_gain() 自动增益开启(True)或者关闭(False)。在使用颜色追踪时,需要关闭自动增益。

  • csi0.auto_whitebal() 自动白平衡开启(True)或者关闭(False)。在使用颜色追踪时,需要关闭自动白平衡。

  • csi0.auto_exposure(enable[\, exposure_us])

    • enable 打开(True)或关闭(False)自动曝光。默认打开。
    • 如果 enable 为False, 则可以用 exposure_us 设置一个固定的曝光时间(以微秒为单位)。

设置窗口ROI

csi0.window(roi)

ROI:Region Of Interest,图像处理中的术语“感兴趣区”。就是在要处理的图像中提取出的要处理的区域。

import csi
csi0 = csi.CSI()

csi0.framesize(csi.VGA) # 高分辨率
csi0.window((640, 80)) #取中间的640*80区域

roi的格式是(x, y, w, h)。见使用统计信息

设置翻转

csi0.hmirror(True) 水平方向翻转

csi0.vflip(True) 垂直方向翻转

更多sensor设置,详见OpenMV官方中文文档:https://docs.singtown.com/micropython/zh/latest/openmvcam/library/omv.csi.html

results matching ""

    No results matching ""