当前位置: 首页 > java >正文

K230的ISP(图像信号处理器)通常支持多通道输出,常见配置为3个独立通道

 也就是一个摄像头可以拍摄三种配置的图片,这样就可以调用三种:

img_try = sensor.snapshot(chn=CAM_CHN_ID_0)

img_try2 = sensor.snapshot(chn=CAM_CHN_ID_1)

img_try3 = sensor.snapshot(chn=CAM_CHN_ID_2)

这样可以一图多用
eg:

    # 初始化并配置sensorsensor = Sensor(id = 1)sensor.reset()# 设置镜像sensor.set_hmirror(False)# 设置翻转sensor.set_vflip(False)
# 通道0直接给到显示VO,格式为YUV420sensor.set_framesize(width = DISPLAY_WIDTH, height = DISPLAY_HEIGHT)sensor.set_pixformat(PIXEL_FORMAT_YUV_SEMIPLANAR_420)# 通道1直接给到保存,格式为RGB565sensor.set_framesize(width=DISPLAY_WIDTH, height=DISPLAY_HEIGHT, chn=CAM_CHN_ID_1)sensor.set_pixformat(Sensor.RGB565, chn=CAM_CHN_ID_1)# 通道2给到AI做算法处理,格式为RGB888sensor.set_framesize(width = OUT_RGB888P_WIDTH , height = OUT_RGB888P_HEIGH, chn=CAM_CHN_ID_2)sensor.set_pixformat(PIXEL_FORMAT_RGB_888_PLANAR, chn=CAM_CHN_ID_2)
  1. K230的ISP(图像信号处理器)通常支持多通道输出,常见配置为3个独立通道。
    • 每个通道可配置不同的分辨率与格式,例如:

      • CAM_CHN_ID_0: 用于LCD显示(如800x480 YUV420)

      • CAM_CHN_ID_1: 用于AI算法输入(如1080x720 RGB888)

      • CAM_CHN_ID_2: 用于录像或二次处理(如640x480 JPEG)

  2. 通道配置示例代码

from media.sensor import *
from media.media import *# 初始化摄像头
sensor.reset()
sensor.set_pixformat(PIXEL_FORMAT_YUV_SEMIPLANAR_420)  # 通道0格式
sensor.set_framesize(800, 480, chn=CAM_CHN_ID_0)       # 通道0: 显示sensor.set_pixformat(PIXEL_FORMAT_RGB_888_PLANAR, chn=CAM_CHN_ID_1)
sensor.set_framesize(1080, 720, chn=CAM_CHN_ID_1)       # 通道1: AI处理sensor.set_pixformat(PIXEL_FORMAT_JPEG, chn=CAM_CHN_ID_2)
sensor.set_framesize(640, 480, chn=CAM_CHN_ID_2)        # 通道2: 拍照
  1. 关键限制

    • 总带宽限制:所有通道的分辨率与帧率乘积之和需小于传感器接口带宽。例如:

      800x480@30fps + 1080x720@15fps + 640x480@10fps ≤ Max Bandwidth
    • 内存占用:每个通道需要独立缓冲区,开启3个通道时需确保内存足够(建议≥128MB)

  2. 验证多通道是否生效

# 捕获各通道图像测试
img_chn0 = sensor.snapshot(chn=CAM_CHN_ID_0)
print("通道0图像尺寸:", img_chn0.width(), "x", img_chn0.height())img_chn1 = sensor.snapshot(chn=CAM_CHN_ID_1)
print("通道1图像格式:", "RGB888" if img_chn1.format()==image.RGBP888 else "其他")img_chn2 = sensor.snapshot(chn=CAM_CHN_ID_2)
print("通道2数据长度:", len(img_chn2.to_bytes()))  # JPEG大小
  1. 典型错误处理

    • 资源不足报错:若出现MemoryError,尝试降低分辨率或帧率

    • 格式冲突:确保不同通道的像素格式兼容传感器能力(如YUV和RGB不可同时最高分辨率)

结论:CAM_CHN_ID_1是三个可用通道中的一个,K230摄像头可同时开启三个独立通道,但需合理配置参数以避免超限。实际开发中建议从双通道开始验证,逐步增加。

http://www.xdnf.cn/news/3911.html

相关文章:

  • CATIA高效工作指南——曲面设计篇(一)
  • 49. 字母异位词分组
  • 高等数学-第七版-下册 选做记录 习题10-2
  • 【C++11】其他一些新特性 | 右值引用 | 完美转发
  • Allegro23.1新功能之如何设置高压爬电间距规则操作指导
  • AtCoder Beginner Contest 404 C-G(无F)题解
  • Linux之用户管理
  • SimpleLive 1.8.1 |聚合虎牙、斗鱼、哔哩哔哩及抖音直播
  • 胶合目录解释
  • 【with 在长难句中有哪几种翻译?】
  • 洛谷 P2866 [USACO06NOV] Bad Hair Day S
  • UNet 改进(22):结合Transformer结构
  • 《算法导论(原书第3版)》下载
  • Linux watch 命令使用详解
  • Vue 虚拟DOM和DIff算法
  • 从上帝视角看文件操作
  • 杜教筛原理,实现与时间复杂度分析
  • 【服务器通信-listen】——int listen(int sockfd, int backlog)
  • 【多次弹出“获取打开此tobiieyetracking链接的应用”的窗口】解决办法
  • [硬件电路-11]:模拟电路常见元器件 - 什么是阻抗、什么是输入阻抗、什么是输出阻抗?阻抗、输入阻抗与输出阻抗的全面解析
  • Python_leve2.1
  • Python语句入门:从基础到实践
  • STM32的定时器
  • 在Linux中如何创建自定义的systemd服务的步骤
  • 动静态库【Linux操作系统】
  • 股指期货风险管理功能及基差、升水、贴水的影响
  • 牛客月赛115 C题-命运之弹 题解
  • Linux环境下的进程创建、退出和进程等待
  • 谷歌 NotebookLM 支持生成中文播客
  • n8n 条件节点详解:IF 与 Switch 的多分支工作流设计