OAK-FFC 分体式相机使用入门介绍

概述

OAK FFC 主控板和多种可选配镜头模组非常适合灵活的搭建您的3D人工智能产品原型。由于镜头是分体式的,因此你可以根据需要测量的距离,自定义深度相机安装基线,并根据你的项目要求(分辨率、快门类型、FPS、光学元件)选择镜头模组。

OAK FFC 主控板

OAK FFC主控板具有板载 VPU 并具有外置的 FFC 连接器的 OAK 设备,你可以将 OAK FFC 相机模块连接到这些连接器。此外,它们还公开了 串口,GPIO口等外部接口,因此可以进一步扩展。

以下是我们当前的 OAK FFC 主控板列表:

FFC镜头模组

以下是可以选配的 OAK FFC 相机模组,你可以使用软排线轻松将其连接到任OAK FFC 主板上,我们后期会努力提供更多支持的 OAK FFC 相机模组。

FFC相机模组

快门

分辨率

备注

OAK-FFC-IMX378 (AF)

卷帘快门

12 MP

彩色,自动对焦

OAK-FFC-IMX378-FF

卷帘快门

12 MP

彩色,定焦

OAK-FFC-IMX378-W

卷帘快门

12 MP

彩色、定焦、广角

OAK-FFC-OV9282

全局快门

1 MP

单色,定焦

OAK-FFC-OV9282-M12

全局快门

1 MP

单色,M12 接口

OAK-FFC-OV9282-W

全局快门

1 MP

单色、定焦、广角

OAK-FFC-OV9782-M12

全局快门

1 MP

彩色,M12 接口

OAK-FFC-OV9782-W

全局快门

1 MP

彩色、定焦、广角

OAK-FFC IMX582

卷帘快门

32 MP

彩色,自动对焦

OAK-FFC-IMX577-M12

卷帘快门

12 MP

彩色,M12 接口

OAK-FFC-IMX214-W

卷帘快门

13 MP

彩色、定焦、广角

OAK-FFC-AR0234-M12

全局快门

2.3 MP

彩色,M12 接口

OAK-FFC-IMX462 (M12)

卷帘快门

2 MP

彩色,定焦

Arducam HQ Cam for RPi, IMX477

卷帘快门

12.3 MP

彩色,CS卡口镜头

Raspberry Pi 摄像头模块

树莓派官方销售的一些镜头模组可以和OAK FFC主控板兼容。RPi相机可以通过RPi相机适配器连接到OAK FFC主控板上。

RPi 摄像头模块

传感器

快门

像素

备注

RPi 摄像头模块3

IMX708

卷帘快门

12 MP

彩色,自动对焦。初始 (WIP) 集成

RPi 摄像头模块 2

IMX219

卷帘快门

8 MP

彩色,定焦。需要 imx219 分支

RPi 高品质相机

IMX477

卷帘快门

12 MP

彩色,C/CS 卡口

RPi全局快门相机

IMX296

全局快门

1.6 MP

彩色,C/CS 卡口

如果您只想使用 IMX477,我们建议使用 Arducam HQ Cam for RPi,IMX477可直接与 OAK FFC 主控板配合使用(不带 UC-244 适配器)

FFC相机安装

OAK-FFC 配件是安装 OAK FFC 相机模块的支架,它允许您轻松自定义水平和垂直立体声基线。你可以从我们的商店购买。有关用法,请参阅此处的说明。

M12 卡口镜头

上述一些 FFC 相机模块具有 M12 卡口,因此您可以使用各种不同的镜头(用于自定义 FoV),例如:

  • 10 个不同 M12 镜头的套件(用于测试目的)

  • M25156H14 (HFoV: 141°)

  • M40180H10 (HFoV: 100°)

  • M2506ZH04 (HFoV: 33°)

  • 其他

M12 可选 FOV

使用 2 个 OAK-FFC-IMX477-M12 和两个不同的 M12 镜头进行测试:20° FOV 和 190° FOV。

OAK-FFC-IMX477-M12 FOV 和广角 FOV M12 镜头的并排比较:

从鸟瞰图进行测试设置:

使用 OAK FFC 进行开发

1. 安装要求

根据你使用的 FFC 设备,您可以查看入门指南,了解以下任一信息:

USB 部署指南​

PoE 部署指南​

安装dependencies和 depthai 库后,您可以开始使用 OAK FFC 设备进行开发。

2. 测试配置

将镜头连接到主控板后,你可以使用utilities/cam_test.py脚本快速测试镜头是否按预期工作。默认情况下,它将尝试在 2 通道 MIPI 端口 B(左)和 C(右)上运行 2 个单色摄像头,在端口 A (RGB) 和 D(4 通道 MIPI 端口)上运行 2 个彩色摄像头。

如果连接了不同的摄像机,则可以指定要与参数一起使用的--cameras摄像机类型:

Command Line 命令行cam_test.py [-h] [--cameras <BoardSocket>,<CameraType>]

例如,如果您有 3 个单色摄像头连接到端口 A、B 和 C,则可以运行以下命令:

Command Line 命令行python3 cam_test.py --cameras rgb,m right,m left,m

3. 在代码中运行

要将此类配置添加到脚本中,可以使用以下代码

cam_a = pipeline.create(dai.node.MonoCamera)
cam_a.setBoardSocket(dai.CameraBoardSocket.CAM_A) # Same as CameraBoardSocket.RGB
cam_a.setResolution(dai.MonoCameraProperties.SensorResolution.THE_400_P)cam_b = pipeline.create(dai.node.MonoCamera)
cam_b.setBoardSocket(dai.CameraBoardSocket.CAM_B) # Same as CameraBoardSocket.LEFTcam_c = pipeline.create(dai.node.MonoCamera)
cam_c.setBoardSocket(dai.CameraBoardSocket.CAM_C) # Same as CameraBoardSocket.RIGHTcam_d = pipeline.create(dai.node.MonoCamera)
cam_d.setBoardSocket(dai.CameraBoardSocket.CAM_D)

auto cam_a = pipeline.create<dai::node::MonoCamera>();
cam_a->setBoardSocket(dai::CameraBoardSocket::CAM_A); // Same as CameraBoardSocket::RGB
cam_a->setResolution(dai::MonoCameraProperties::SensorResolution::THE_400_P);auto cam_b = pipeline.create<dai::node::MonoCamera>();
cam_b->setBoardSocket(dai::CameraBoardSocket::CAM_B); // Same as CameraBoardSocket::LEFTauto cam_c = pipeline.create<dai::node::MonoCamera>();
cam_c->setBoardSocket(dai::CameraBoardSocket::CAM_C); // Same as CameraBoardSocket::RIGHTauto cam_d = pipeline.create<dai::node::MonoCamera>();
cam_d->setBoardSocket(dai::CameraBoardSocket::CAM_D);
 

扩展功能

1. PSRBS 连接器

OAK-FFC-4P 具有 PSRBS 连接器,允许用户轻松地将 OAK 相机连接到外部逻辑。您可以使用 PSRBS cable连接到此连接器

pin

名称

介绍

1

VDD_5V

5V电源输入/输出

2

STROBE

频闪信号输出,可驱动外部照明(投影仪、照明灯等)

3

MODULE_nRST

允许从外部源重置 OAK-FFC(GND 将重置 RVC2,与 RST 按钮相同)

4

BOOT_SEL

允许选择是否启动到引导加载程序(1.8V将跳过引导加载程序,与BOOT按钮相同)

5

COM_AUX_IO2

2-land MIPI FSYNC 信号输入/输出

6

FSIN_4LANE

4-land MIPI FSYNC 信号输入/输出

7

GND

GND 电源输入/输出

2. 连接 IR 模块

如果你有 OAK-FFC-4P R5 或更高版本,并且希望使用 OAK-FFC-IR 模块,必须首先确定配置哪个镜头将 STROBE 信号驱动连接 IR 模块的连接器。连接器位于交换机的左侧(J12,见下图)

如果你在CAM_B和CAM_C上拥有一对立体声摄像头,并且希望将点投影仪与立体声摄像头同步,则应将开关 2 或 3 向上移动 。请记住,一次只能启动一个开关。

3. UART

某些 OAK FFC 设备上具有 UART端口,因此您可以使用它与其他设备进行通信。例如,您可以将 GPS 模块连接到 UART 端口,并在应用程序中获取 GPS 数据。

要在应用程序中使用 UART,请查看

UART示例​

4. UART 引脚排列

引脚排列取决于您使用的电路板。以下是 OAK-FFC 器件的 UART 引脚排列:

OAK-FFC设备

TX

RX

OAK-FFC-4P

15

16

OAK-FFC-4P POE OAK-FFC-4P POE电设备

/

/

OAK-FFC-1P POE OAK-FFC-1P POE电设备

45

46

OAK-FFC-3P

/

/

5. SD 卡支持

SD 卡功能仅供社区支持,仍应在单独的 depthai 分支上运行,但不会经常更新。

您可以使用 SD 卡来存储来自正在运行的设备的数据(日志/图像/配置) - 请参阅示例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/49012.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FPGA教程|零基础到实战的全方位指导

在数字化时代&#xff0c;FPGA&#xff08;现场可编程门阵列&#xff09;作为一种灵活的硬件编程平台&#xff0c;正逐渐成为电子工程师和计算机科学家必备的技能之一。无论你是电子专业的学生&#xff0c;还是职场中的工程师&#xff0c;掌握FPGA开发技术&#xff0c;都将为你…

前端与HTML

前端与HTML 什么是前端&#xff1f; 解决GUI人机交互问题跨终端&#xff08;PC/移动浏览器&#xff09;&#xff08;客户端小程序&#xff09;&#xff08;VR/AR等&#xff09;Web技术栈 前端工程师&#xff1a;利用web技术栈解决多端图形界面用户交互的工程师 前端技术栈 …

CDGA|数据治理:安全如何贯穿数据供给、流通、使用全过程

随着信息技术的飞速发展&#xff0c;数据已经成为企业运营、社会管理和经济发展的核心要素。然而&#xff0c;数据在带来巨大价值的同时&#xff0c;也伴随着诸多安全风险。因此&#xff0c;数据治理的重要性日益凸显&#xff0c;它不仅仅是对数据的简单管理&#xff0c;更是确…

rv1126物体检测 rkmedia、opencv……

整体码流流向&#xff1a; 因此代码也分为这几部分&#xff1a; VI&#xff1a;采集视频 配置视频采集信息 模型推理线程&#xff1a;获取VI码流、载入模型、进行模型推理、保存推理结果 画框线程&#xff1a;获取VI码流、获取推理结果、显示推理结果、输出码流到VENC VENC…

如何使用C#快速创建定时任务

原文链接&#xff1a;https://www.cnblogs.com/zhaotianff/p/17511040.html 使用Windows的计划任务功能可以创建定时任务。 使用schtasks.exe可以对计划任务进行管理&#xff0c;而不需要编写额外代码 这里掌握schtasks /CREATE 的几个核心参数就可以快速创建计划任务 /SC …

论文总结:A Survey on Evaluation of Large Language Models-鲁棒性相关内容

A Survey on Evaluation of Large Language Models 只取了鲁棒性相关的内容 LLMs&#xff1a;《A Survey on Evaluation of Large Language Models大型语言模型评估综述》理解智能本质(具备推理能力)、AI评估的重要性(识别当前算法的局限性设 3.2.1 Robustness鲁棒性&#xf…

Gitlab以及分支管理

一、概述 Git 是一个分布式版本控制系统&#xff0c;用于跟踪文件的变化&#xff0c;尤其是源代码的变化。它由 Linus Torvalds 于 2005 年开发&#xff0c;旨在帮助管理大型软件项目的开发过程。 二、Git 的功能特性 Git 是关注于文件数据整体的变化&#xff0c;直接会将文件…

HTTP模块(二)

HTTP 设置 HTTP 响应报文 HTTP报文常见属性&#xff1a; const http require(http);const server http.createServer((request, response) > {// 设置请求状态码 2xx 4xx 5xxresponse.statusCode 200;// 设置请求描述 了解即可response.statusMessage hello// 指定响…

谷粒商城实战笔记-59-商品服务-API-品牌管理-使用逆向工程的前后端代码

文章目录 一&#xff0c; 使用逆向工程生成的代码二&#xff0c;生成品牌管理菜单三&#xff0c;几个小问题 在本次的技术实践中&#xff0c;我们利用逆向工程的方法成功地为后台管理系统增加了品牌管理功能。这种开发方式不仅能快速地构建起功能模块&#xff0c;还能在一定程度…

uni-app声生命周期

应用的生命周期函数在App.vue页面 onLaunch:当uni-app初始化完成时触发&#xff08;全局触发一次&#xff09; onShow:当uni-app启动&#xff0c;或从后台进入前台时显示 onHide:当uni-app从前台进入后台 onError:当uni-app报错时触发,异常信息为err 页面的生命周期 onLoad…

Linux-安装VMware-01

一、认识linux Linux 是一个开源的类 Unix 操作系统&#xff0c;由林纳斯托瓦兹&#xff08;Linus Torvalds&#xff09;于1991年首次发布。Linux 是许多计算机硬件的底层操作系统&#xff0c;特别是服务器、嵌入式系统和个人电脑。它支持多种架构&#xff0c;包括 x86、x64、A…

算法学习笔记(8.8)-多重背包

目录 Question: 思路解析&#xff1a; 代码示例 多重背包的优化问题&#xff1a; 1.二进制优化 代码示例&#xff1a; 2.单调队列优化(滑动窗口) 代码示例 Question: 4. 多重背包问题 I - AcWing题库https://www.acwing.com/problem/content/description/4/ 多重背包简单来说其…

eqmx上读取数据处理以后添加到数据库中

目录 定义一些静态变量 定时器事件的处理器 订阅数据的执行器 处理json格式数据和将处理好的数据添加到数据库中 要求和最终效果 总结一下 定义一些静态变量 // 在这里都定义成全局的 一般都定义成静态的private static MqttClient mqttClient; // mqtt客户端 private s…

springboo 整合 redis

springBoot 整合 redis starter启动依赖。—包含自动装配类—完成相应的装配功能。 引入依赖 <!--引入了redis整合springboot 的依赖--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis&…

基于opencv[python]的人脸检测

1 图片爬虫 这里的代码转载自&#xff1a;http://t.csdnimg.cn/T4R4F # 获取图片数据 import os.path import fake_useragent import requests from lxml import etree# UA伪装 head {"User-Agent": fake_useragent.UserAgent().random}pic_name 0 def request_pic…

谷粒商城实战笔记-65-商品服务-API-品牌管理-表单校验自定义校验器

文章目录 1&#xff0c;el-form品牌logo图片自定义显示2&#xff0c;重新导入和注册element-ui组件3&#xff0c;修改brand-add-or-update.vue控件的表单校验规则firstLetter 校验规则sort 校验规则 1&#xff0c;el-form品牌logo图片自定义显示 为了在品牌列表中自定义显示品…

Typora 以 Github 作为图床使用 PicGo 上传图片

本文简练快速介绍如标题所述的操作流程 文章目录 1.前言1.1 图床简述1.2 Github图床的优缺点1.2.1 优点1.2.2 缺点 2.下载PicGo3.Github访问加速4.用github创建图床服务器4.1 注册4.2 创建仓库 4.3 生成TOKEN令牌5.设置PicGo6.设置Typora7.完成 1.前言 1.1 图床简述 图床&…

人工智能背后的图灵测试(TuringTest)是什么?

人工智能背后的图灵测试(TuringTest)是什么&#xff1f; 一、什么是图灵测试 图灵测试&#xff08;Turing Test&#xff09;由英国数学家和计算机科学家阿兰图灵&#xff08;Alan Turing&#xff09;在1950年提出&#xff0c;用以判断机器是否具有人类智能。图灵在其论文《计…

3.1、数据结构-线性表

数据结构 数据结构线性结构线性表顺序存储和链式存储区别单链表的插入和删除练习题 栈和队列练习题 串&#xff08;了解&#xff09; 数据结构 数据结构该章节非常重要&#xff0c;上午每年都会考10-12分选择题下午一个大题 什么叫数据结构&#xff1f;我们首先来理解一下什…

【Android】碎片—动态添加、创建Fragment生命周期、通信

简单用法 在一个活动中添加两个碎片&#xff0c;并让这两个碎片平分活动空间 先新建一个左侧碎片布局和一个右侧碎片布局 左侧碎片 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/…