日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【2023更新】通过硬件触发信号实现OAK多相机之间的同步拍摄

發(fā)布時(shí)間:2024/1/18 编程问答 151 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【2023更新】通过硬件触发信号实现OAK多相机之间的同步拍摄 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

編輯:OAK中國(guó)
首發(fā):oakchina.cn
喜歡的話,請(qǐng)多多👍???
內(nèi)容可能會(huì)不定期更新,官網(wǎng)內(nèi)容都是最新的,請(qǐng)查看首發(fā)地址鏈接。

▌前言

Hello,大家好,這里是OAK中國(guó),我是助手君。

去年我寫了一篇博客說(shuō)明OAK相機(jī)是如何實(shí)現(xiàn)硬件同步的(傳送門),不過(guò)隨著我們產(chǎn)品的增多,這篇博客顯然也要更新內(nèi)容了。加上最近問外觸發(fā)同步的朋友比較多,所以我覺得是時(shí)候更新內(nèi)容了!

▌前言

有兩種方式去同步來(lái)自不同傳感器的信息(幀、IMU數(shù)據(jù)包、ToF等):

  • 硬件同步(多傳感器亞毫米級(jí)精度,硬件觸發(fā))
  • 軟件同步(基于時(shí)間戳/序列號(hào))

本文重點(diǎn)介紹硬件同步,它允許在多個(gè)相機(jī)傳感器之間精確同步,并可能與其他硬件同步,如閃光燈LED、外部IMU或其他相機(jī)。

▌FSYNC信號(hào)

FSYNC/FSIN(幀同步)信號(hào)是一個(gè)脈沖,在開始捕獲每個(gè)幀時(shí)被驅(qū)動(dòng)為高電平。它的長(zhǎng)度與曝光時(shí)間不成正比,可以是輸入或輸出,在1.8V下工作。

在雙目立體相機(jī)(OAK-D*)上,我們希望雙目黑白相機(jī)是完全同步的,所以一個(gè)相機(jī)傳感器(如左相機(jī))的FSYNC設(shè)置為INPUT,而另一個(gè)相機(jī)傳感器(如右相機(jī))的FSYNC設(shè)置為OUTPUT。在這樣的配置中,右相機(jī)驅(qū)動(dòng)左相機(jī)。

?注意!目前,只有OV9282/OV9782可以輸出FSYNC信號(hào),而IMX378/477/577/等應(yīng)該也有這個(gè)能力,但還不支持(所以這些信號(hào)不能驅(qū)動(dòng)FSYNC信號(hào),只能被它驅(qū)動(dòng))。AR0234只支持輸入FSYNC信號(hào)。

從外部同步幀

如果我們想用外部信號(hào)驅(qū)動(dòng)相機(jī),我們需要將FSIN設(shè)置為相機(jī)傳感器的INPUT。

所有二代的OAK-PoE設(shè)備都有一個(gè)M8 I/O連接器,可以引出FSIN信號(hào)(也包括STROBE)。因此,你可以將一個(gè)信號(hào)發(fā)生器連接到M8連接器上,所有3個(gè)相機(jī)傳感器將根據(jù)信號(hào)發(fā)生器的觸發(fā)器捕獲一幀。

# Example: we have 3 cameras on ports A,B, and C cam_A.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT) cam_B.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT) cam_C.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT)

你也可以在腳本節(jié)點(diǎn)內(nèi)通過(guò)GPIO控制FSIN,查看這里的示例。

▌STROBE信號(hào)

STROBE信號(hào)是圖像傳感器的輸出,在圖像傳感器的曝光期間是有效的(高電平)。它可以用來(lái)驅(qū)動(dòng)外部的LED照明,所以照明只在曝光時(shí)間內(nèi)激活,而不是持續(xù)開啟,這將減少功耗和發(fā)熱。

我們?cè)贠AK-D-Pro系列相機(jī)上使用STROBE信號(hào)(它有板載照明紅外LED和紅外激光點(diǎn)陣發(fā)射器)來(lái)驅(qū)動(dòng)激光/LED。

▌幀捕獲圖像

當(dāng)傳感器開始傳輸幀(MIPI讀數(shù))時(shí),幀時(shí)間戳?xí)贛IPI SoF(幀開始)事件中分配給幀。

對(duì)于全局快門傳感器,這是在整個(gè)幀的曝光完成后立即進(jìn)行的,所以我們可以說(shuō)分配的時(shí)間戳與曝光窗口的結(jié)束相一致(在幾微秒的范圍內(nèi))。下面是一個(gè)全局快門傳感器計(jì)時(shí)的示意圖,演示了時(shí)間戳何時(shí)被分配給幀。

對(duì)于卷簾快門,示例圖看起來(lái)有點(diǎn)不同。MIPI SoF在圖像的第一行完全曝光后繼續(xù)拍攝并傳輸,但后面的行仍在曝光或可能還沒有開始曝光(取決于曝光時(shí)間)。

下面是卷簾快門傳感器(IMX378)在1080p和30fps(33.3ms幀時(shí)間)的示意圖。MIPI讀出時(shí)間因傳感器/分辨率而異,但對(duì)于IMX378來(lái)說(shuō),1080P時(shí)為16.54ms,4K時(shí)為23.58ms,12MP時(shí)為33.04ms。


在OAK-FFC-4P上有四個(gè)攝像頭接口:A(RGB)、B(LEFT)、C(RIGHT)和D(cam_d)。A和D是4-lane MIPI,B和C是2-lane MIPI。每對(duì)(A&D,B&C)共享一條I2C總線,默認(rèn)情況下,B&C總線配置為左右相機(jī)硬件同步。

對(duì)于A&D端口,你需要啟用硬件同步:

cam_A.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.OUTPUT) cam_D.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT)

▌FFC鏡頭模組

FFC系列可以接的鏡頭模組有一個(gè)22pin的連接器,但沒有給FSIN/STROBE信號(hào)焊線。如下圖所示,要將FFC鏡頭模組連接到我們的OAK-FFC基板上,你需要使用26-22pin轉(zhuǎn)換器連接器,該連接器只能通過(guò)測(cè)試焊盤露出FSIN/STROBE線。為了同步這些相機(jī),你可以將一根電線從測(cè)試焊盤焊接到相機(jī)模塊的FSIN插頭,或者將所有的FSIN插頭連接在一起(步驟)。


?注意!我們現(xiàn)在發(fā)的模組已經(jīng)焊了線。

▌連接FSIN/STROBE

如前所述,所有二代的OAK PoE設(shè)備都有一個(gè)帶FSYNC/STROBE信號(hào)的M8 I/O連接器。但是如果你不用這些,你可能需要在設(shè)備的PCB上焊接一條線。大多數(shù)PCB設(shè)計(jì)都是開源的(查看depthai-hardware倉(cāng)庫(kù)),所以你可以很容易地檢查FSIN/STROBE信號(hào)在PCB上的位置。

OAK-FFC-4P FSIN


如上圖所示,在OAK-FFC-4P上,你可以用MXIO6啟用連接FSIN_4LANE和FSIN_2LANE。下面的腳本將同步所有4臺(tái)連接到OAK-FFC-4P的相機(jī)。

# CAM_A will drive FSIN signal for all other cameras: cam_A.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT) # 4LANE cam_B.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.OUTPUT) # 2LANE cam_C.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT) # 2LANE cam_D.initialControl.setFrameSyncMode(dai.CameraControl.FrameSyncMode.INPUT) # 4LANE# AND importantly to tie the FSIN signals of A+D and B+C pairs, by setting a GPIO: # OAK-FFC-4P requires driving MXIO6 high (FSIN_MODE_SELECT) to connect together # the A+D FSIN group (4-lane pair) with the B+C group (2-lane pair) config = dai.Device.Config() config.board.gpio[6] = dai.BoardConfig.GPIO(dai.BoardConfig.GPIO.OUTPUT,dai.BoardConfig.GPIO.Level.HIGH)with dai.Device(config) as device:device.startPipeline(pipeline)

補(bǔ)充信息可在這篇帖子里查看。

Series 2 USB OAKs

DM9098板上的FSIN(如OAK-D-S2、OAK-D-W、OAK-D-Pro、OAK-D-Pro-W)


USB OAK-1* FSIN

NG9093板上的FSIN測(cè)試點(diǎn)(如OAK-1、OAK-1-W、OAK-1-Lite、OAK-1-Lite-W、OAK-1-MAX)

OAK-D-Lite FSIN


請(qǐng)注意雙目和RGB沒有連接在一起。

▌相關(guān)示例

參考示例-軟同步

▌參考資料

https://docs.oakchina.cn/en/latest/
https://www.oakchina.cn/selection-guide/


OAK中國(guó)
| OpenCV AI Kit在中國(guó)區(qū)的官方代理商和技術(shù)服務(wù)商
| 追蹤AI技術(shù)和產(chǎn)品新動(dòng)態(tài)

戳「+關(guān)注」獲取最新資訊↗↗

總結(jié)

以上是生活随笔為你收集整理的【2023更新】通过硬件触发信号实现OAK多相机之间的同步拍摄的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。