尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
[具身智能-635]:vio_capture  srcampy 完整对比详解(D-Robotics RDK X3/X5)
vio_capture srcampy 完整对比详解D-Robotics RDK X3/X5前置基础VIO Video Input/Output地瓜 RDK 平台视频输入输出子系统管理MIPI CSI ISP、图像缩放、数据流通路、HDMI 显示、硬件编码。两者底层共用同一套内核 VIO 驱动只是上层 Python 封装两套 API。底层驱动模块名字就叫vio_capture这也是命名源头。一、总体演进路线plaintext早期SDKvio_capture单纯采集接口 ↓ 新版SDKlibsrcampy(srcampy)【一体化多媒体套件】 底层不变VIO驱动 AMP多媒体流水线官方现状✅srcampy 作为新项目标准推荐FCOS MIPI Demo 采用⚠️ vio_capture 仅做兼容保留不再新增功能。二、vio_capture 详解1. 定位轻量化单一功能采集接口只负责从 MIPI CSI读取图像无显示、无硬件 bind、无 OSD、无编码能力。 导入方式python运行from hobot_vio import vio_capture2. 核心类VioCapture构造参数python运行cap vio_capture.VioCapture( video_index0, # CSI00CSI12 width512, height512, formatnv12 # 仅支持nv12 )常用方法python运行frame cap.read() # 获取 nv12 numpy数组阻塞读取 cap.release() # 释放CSI、ISP资源3. 数据流模型只能配置单路分辨率输出plaintextMIPI Sensor → ISP → 硬件缩放成 [w,h] NV12 → read()给到Python限制同一路 CSI 只能输出一种尺寸图像。 如果你同时想要 512×512AI 推理 1920×1080HDMI 预览vio_capture原生不支持硬件双通路。4. 优点API 极简上手快开销小适合无屏幕、只做后端 AI 运算的设备5. 致命短板不支持 ISP 硬件双路输出没有 HDMI 显示、硬件数据流绑定如果要预览画面Python 必须持续读取大图转发到 Display占用带宽 CPU延迟高不支持 OSD 画框、文字叠加不支持硬件 H.264/H.265 编码。6. 适用场景无头设备无 HDMI 显示器只需要单一分辨率图像做 AI 推理不需要实时预览录像三、srcampylibsrcampy详解全称释义回顾 src图像源 ampAMP 高级多媒体流水线 pypython 绑定python运行try: from hobot_vio import libsrcampy as srcampy except ImportError: from hobot_vio_rdkx5 import libsrcampy as srcampy1. 定位一体化全栈多媒体SDK能力覆盖MIPI 采集 ISP 多路缩放 HDMI 显示 硬件 DMA 数据流绑定 OSD 图层绘图 硬件音视频编码。包含四大核心类srcampy.Camera()摄像头采集srcampy.Display()HDMI 输出、OSD 图层srcampy.Encoder()硬件 H264/H265 编码srcampy.Decoder()硬件码流解码2. Camera 类核心接口open_cam () 【最关键】python运行cam.open_cam(video_index, fps, [w1,w2], [h1,h2], sensor_h, sensor_w)[w1,w2] [h1,h2]ISP 硬件双通路同时输出两路不同分辨率 NV12 图像通路 1小图512×512→ AI 推理通路 2原图1920×1080→ HDMI 预览 硬件同时生成两路CPU 不参与缩放get_img(fmt_id, w, h)python运行img cam.get_img(2, 512, 512)fmt_id2 代表 NV12指定读取哪一路分辨率的图像返回 bytes 裸 buffer可直接np.frombuffer送入 dnn.forward ()close_cam()释放 CSI 通道与 ISP 资源。3. Display 类核心接口python运行disp srcampy.Display() disp.display(layer_id, w, h) # layer0原始视频图层 # layer3OSD透明叠加图层画框、文字OSD 绘图函数set_graph_rect()绘制矩形检测框set_graph_word()绘制文本标签4. 全局超级接口srcampy.bind ()python运行srcampy.bind(cam, disp)硬件 DMA 直通绑定摄像头 ISP 输出大图直接路由到 HDMI图像数据完全不经过 Python 内存。 优势极低延迟、几乎零 CPU 占用。这是 srcampy 相比 vio_capture 最大的杀手锏。5. srcampy 完整流水线FCOS 代码plaintextMIPI CSI0 → ISP ├─通路A1920×1080 NV12 → bind硬件直通HDMI原始画面 └─通路B512×512 NV12 → cam.get_img读取 → BPU FCOS推理 ↳ 推理结果 → Display OSD图层叠加框6. srcampy 适用场景需要 HDMI 实时预览 AI 推理同时运行目标检测任务需要硬件 OSD 绘制框需要多路分辨率、硬件编码录像对画面延迟敏感的机器人视觉项目。四、vio_capture VS srcampy 横向对比总表表格对比项vio_capturesrcampy(libsrcampy)包hobot_vio.vio_capturehobot_vio.libsrcampy产品定位轻量化单纯采集全功能多媒体套件ISP 双路硬件输出❌不支持✅原生支持硬件 bind 直通 HDMI❌无✅支持极低延迟OSD 绘制矩形 / 文字❌无✅Display 图层接口硬件 H264/H265 编码❌无✅Encoder 类支持图像格式仅 NV12仅 NV12CSI 通道编号规则CSI00CSI12CSI00CSI12规则完全一致推荐新项目不推荐仅兼容✅官方标准推荐典型 demo 场景无头设备纯 AI 运算MIPIHDMI 目标检测当前 FCOS 工程五、高频工程坑点1. 互斥占用同一 CSI 通道不能同时打开 vio_capture 和 srcampy.Camera会抢占VIO 驱动打开失败。2. CSI1 通道极易踩错无论两套 APICSI0 → index0CSI1 → index2 不要写 13. vio_capture 无法实现 “预览 推理并行”如果用 vio_capture想要同时预览只能持续读取大图Python 转发CPU 负载上升、延迟明显变大。4. 资源释放程序异常退出不执行release()/close_cam()ISP 锁死需要重启开发板才能重新打开摄像头。六、选型建议直接套用项目需要HDMI 预览 / 检测框 OSD / 录像编码 / 双分辨率直接使用 srcampylibsrcampy设备无显示器只做后端 AI 识别单一分辨率追求代码极简 可选 vio_capture七、最简示例对照vio_capture 极简模板python运行from hobot_vio import vio_capture import numpy as np cap vio_capture.VioCapture(0, 512, 512, nv12) while True: frame cap.read() # dnn forward(frame) cap.release()srcampy 极简模板python运行from hobot_vio_rdkx5 import libsrcampy as srcampy import numpy as np sensor_w, sensor_h 1920,1080 model_w, model_h 512,512 preview_w, preview_h 1920,1080 cam srcampy.Camera() cam.open_cam(0, -1, [model_w, preview_w], [model_h, preview_h], sensor_h, sensor_w) disp srcampy.Display() disp.display(0, preview_w, preview_h) srcampy.bind(cam, disp) disp.display(3, preview_w, preview_h) while True: nv12_buf cam.get_img(2, model_w, model_h) img np.frombuffer(nv12_buf, dtypenp.uint8) # dnn forward(img) cam.close_cam() disp.close()
RELATED

相关推荐

从 curl 到工程封装:血型遗传查询 API 实战

从 curl 到工程封装:血型遗传查询 API 实战

使用场景与接口价值 血型遗传查询是 ABO 血型系统的经典应用。根据父母的血型组合(共 16 种),利用显性遗传规律可以推算出子女可能的血型以及不可能出现的血型。该接口常用于: 亲子问答小游戏(如“爸妈一个 A 一个 B…

📅 2026/9/18 21:17:17
OpenSpace自进化引擎:AI持续优化的技术架构与实践

OpenSpace自进化引擎:AI持续优化的技术架构与实践

1. 项目概述:OpenSpace自进化引擎的核心价值 OpenSpace是一个让人工智能系统能够持续自我优化的技术框架。想象一下你有一个会不断从经验中学习的助手——每次完成任务后,它都会反思哪些方法有效、哪些需要改进,下次就能做得更好。这正是Open…

📅 2026/9/18 21:17:46
AIENC+AEC+BF三核加持,AU-60如何重新定义语音模组的“工程天花板”?

AIENC+AEC+BF三核加持,AU-60如何重新定义语音模组的“工程天花板”?

在智能音频设备遍地开花的今天,从智能门禁到会议系统,从车载通话到安防监控,全双工通话的清晰度、环境噪音的抑制、回音的彻底消除,始终是决定用户体验的核心痛点。而今天我们要介绍的 AU-60 全功能AI语音处理模组,正是…

📅 2026/8/22 16:59:00
MORE NEWS

更多资讯

📰

亚马逊网站经营模式:解构数字零售的实时决策系统

简介:本资源是一份聚焦电商巨头亚马逊经营模式的深度分析报告,面向电子商务专业学生、平台运营从业者及互联网商业研究者,旨在通过系统解构其商业模式为国内平台提供可落地的借鉴思路。报告涵盖SWOT战略分析、B2C与Marketplace双轨模式运作机…

📰

新生代管理趋势报告数据拆解:离职率、晋升与留存策略

简介:这份《2021年新生代管理趋势报告(精华版)》由中智咨询联合预才网发起调研,面向企业管理者、HR及关注代际管理的职场人士,聚焦90后、95后新生代员工的职场特征与管理实践,帮助解决多代际共存下的招聘、…

📰

pandas 项目解读:Python 数据分析核心库的功能全景、依赖体系与源码安装实践

pandas 项目解读:Python 数据分析核心库的功能全景、依赖体系与源码安装实践 【免费下载链接】pandas Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical …

📰

给 AI Agent 一台云计算机:Cloudflare Computer 完整上手指南

给 AI Agent 一台云计算机:Cloudflare Computer 完整上手指南 【免费下载链接】computer Give your agent a computer 👾 项目地址: https://gitcode.com/GitHub_Trending/computer1/computer 凌晨两点,你让 AI Agent 把一份原始日志清…

📰

智慧城市交通流量预测:DeepSeek-V3 LoRA微调低成本方案

简介:面向智慧城市交通管理与AI应用开发者的技术文档,聚焦以DeepSeek-V3微调实现低成本交通流量预测。全篇27页,围绕智慧城市背景、交通流量预测价值、DeepSeek-V3架构与优势、数据收集与预处理、微调环境准备与参数设置、预测模型构建与融合…

📰

system_prompts_leaks:系统提示词工程拆解与复用

system_prompts_leaks 这个词最近在开发者圈子里被反复提起,指的是一批把各家对话产品的系统提示词(system prompts)整理成公开清单的项目。关键词里带着 leaks 很容易让人联想成某种灰色技术,但实际打开看,多数仓库就…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬