k230摄像头初始化配置函数解析

通过 csi id 和图像传感器类型构建 Sensor 对象。

在图像处理应用中,用户通常需要首先创建一个 Sensor 对象。CanMV K230 软件可以自动检测内置的图像传感器,无需用户手动指定具体型号,只需设置传感器的最大输出分辨率和帧率。有关支持的图像传感器信息,请参见图像传感器支持列表。如果设定的分辨率或帧率与当前传感器的默认配置不符,系统会自动调整为最优配置,最终的配置可在日志中查看,例如 use sensor 23, output 640x480@90

复制代码
sensor = Sensor(id, [width, height, fps])

这里的设置可以指定后面你三个通道最大的分辨率绝对不能超过这里设置的最大分辨率

图像帧尺寸 分辨率
Sensor.VGA 640x480
Sensor.HD 1280x720
Sensor.FHD 1920x1080

...完整见下面

参数名称 描述 输入/输出 说明
id csi 端口,支持 0,1,2 输入 可选,庐山派开发板默认摄像头为CSI2
width sensor 最大输出图像宽度 输入 可选,默认 1920
height sensor 最大输出图像高度 输入 可选,默认 1080
fps sensor 最大输出图像帧率 输入 可选,默认 30

返回值

返回值 描述
Sensor 对象 传感器对象

举例

复制代码
sensor = Sensor(id=0)
sensor = Sensor(id=0, width=1280, height=720, fps=60)
sensor = Sensor(id=0, width=640, height=480)

庐山派开发板的默认摄像头接口为CSI2,如果Sensor默认内不指定id,则默认为id=2.

也就是说以下两条语句是等效的:

复制代码
sensor = Sensor()

sensor = Sensor(id=2)

5.1 sensor.reset

描述

复位 sensor 对象。在构造 Sensor 对象后,必须调用此函数以继续执行其他操作。

语法

python

复制代码
sensor.reset()

参数

参数名称 描述 输入/输出

返回值

返回值 描述

举例

复制代码
# 初始化 sensor 以及传感器 GC2093
sensor.reset()

2.2 sensor.set_framesize

描述

设置指定通道的输出图像尺寸。用户可以通过 framesize 参数或直接指定 widthheight 来配置输出图像尺寸。宽度会自动对齐到 16 像素宽

语法

python

复制代码
sensor.set_framesize(framesize=FRAME_SIZE_INVALID, chn=CAM_CHN_ID_0, alignment=0, **kwargs)

kwargs是关键词参数(keyword argument)的缩写,目前可以输入的参数有width和height,这两个参数和framesize所设置的分辨率是一个东西,所以是互斥的,只能二选一。

参数

参数名称 描述 输入/输出
framesize sensor 输出图像尺寸 输入
width【**kwargs】 输出图像宽度,kw_arg 输入
height 【**kwargs】 输出图像高度,kw_arg 输入
chn sensor 输出通道号 输入

参数可选值:

  • 设置输出图像尺寸,【framesize】和【width or height】二选一

    • framesize

      图像帧尺寸 分辨率
      Sensor.VGA 640x480
      Sensor.HD 1280x720
      Sensor.FHD 1920x1080
      图像帧尺寸 分辨率
      Sensor.QQCIF 88x72
      Sensor.QCIF 176x144
      Sensor.CIF 352x288
      Sensor.QSIF 176x120
      Sensor.SIF 352x240
      Sensor.QQVGA 160x120
      Sensor.QVGA 320x240
      Sensor.VGA 640x480
      Sensor.HQQVGA 120x80
      Sensor.HQVGA 240x160
      Sensor.HVGA 480x320
      Sensor.B64X64 64x64
      Sensor.B128X64 128x64
      Sensor.B128X128 128x128
      Sensor.B160X160 160x160
      Sensor.B320X320 320x320
      Sensor.QQVGA2 128x160
      Sensor.WVGA 720x480
      Sensor.WVGA2 752x480
      Sensor.SVGA 800x600
      Sensor.XGA 1024x768
      Sensor.WXGA 1280x768
      Sensor.SXGA 1280x1024
      Sensor.SXGAM 1280x960
      Sensor.UXGA 1600x1200
      Sensor.HD 1280x720
      Sensor.FHD 1920x1080
      Sensor.QHD 2560x1440
      Sensor.QXGA 2048x1536
      Sensor.WQXGA 2560x1600
      Sensor.WQXGA2 2592x1944
      • 这个就是自己填分辨率就行。
  • 设置输出通道号

    • chn
      • 通道0:CAM_CHN_ID_0
      • 通道1:CAM_CHN_ID_1
      • 通道2:CAM_CHN_ID_2

注意事项

  • 输出图像尺寸不得超过图像传感器的实际输出能力。
  • 各通道的最大输出图像尺寸受硬件限制。

举例

复制代码
# 配置 sensor 设备,输出通道 0,输出图尺寸为 640x480
sensor.set_framesize(chn=CAM_CHN_ID_0, width=640, height=480)

# 配置 sensor 设备,输出通道 1,输出图尺寸为 320x240
sensor.set_framesize(chn=CAM_CHN_ID_1, width=320, height=240)

# 配置 sensor 设备,输出通道 3,输出图尺寸为 640x480
sensor.set_framesize(chn=CAM_CHN_ID_3, framesize = sensor.VGA)

5.3 sensor.set_pixformat

描述

配置指定通道的图像传感器输出图像格式。

语法

复制代码
sensor.set_pixformat(pix_format, chn=CAM_CHN_ID_0)

参数

参数名称 描述 输入/输出
pix_format 输出图像格式(像素格式) 输入
chn sensor 输出通道号 输入

参数可选值:

  • 设置像素格式(如果想知道这些像素格式的具体定义,请看后续的摄像头基础知识部分)

    像素格式 说明
    Sensor.RGB565 16 位 RGB 格式
    Sensor.RGB888 24 位 RGB 格式
    Sensor.RGBP888 分离的 24 位 RGB
    Sensor.YUV420SP 半平面 YUV
    Sensor.GRAYSCALE 灰度图
  • 设置输出通道号

    • chn
      • 通道0:CAM_CHN_ID_0
      • 通道1:CAM_CHN_ID_1
      • 通道2:CAM_CHN_ID_2

举例

复制代码
# 配置 sensor 设备 0,输出通道 0,输出 NV12 格式
sensor.set_pixformat(Sensor.YUV420SP, chn=CAM_CHN_ID_0)

# 配置 sensor 设备 0,输出通道 1,输出 RGB888 格式
sensor.set_pixformat(Sensor.RGB888, chn=CAM_CHN_ID_1)
相关推荐
gs80140几秒前
MCP智能体多Agent协作系统设计(Multi-Agent Cooperation)
人工智能·mcp
少年码客15 分钟前
比较 TensorFlow 和 PyTorch
人工智能·pytorch·tensorflow
AI视觉网奇26 分钟前
TensorFlow 多卡训练 tf多卡训练
人工智能·python·tensorflow
那雨倾城1 小时前
PiscTrace针对YOLO深度适配:从v8到v12
图像处理·人工智能·python·opencv·yolo·计算机视觉·目标跟踪
北上ing1 小时前
机器学习和深度学习的对比
人工智能·深度学习·机器学习
水煮蛋不加蛋1 小时前
从 Pretrain 到 Fine-tuning:大模型迁移学习的核心原理剖析
人工智能·机器学习·ai·大模型·llm·微调·迁移学习
万维易源2 小时前
OCR身份证识别(正反面)_个人证照OCR识别_开放API接口使用指南
人工智能·小程序·数据分析·ocr
AI产品社2 小时前
CRM系统接入DeepSeek大模型应用场景方案
人工智能
ayiya_Oese2 小时前
[预备知识]5. 优化理论(一)
python·神经网络·目标检测·机器学习·计算机视觉
AI大模型顾潇3 小时前
[特殊字符] 人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总) [特殊字符]
数据库·人工智能·语言模型·自然语言处理·大模型·llm·prompt