簡體   English   中英

將實時攝像頭饋送從RPI計算模塊流式傳輸到RPI 3

[英]Stream live camera feed from RPI compute module to RPI 3

我正在開發一個便攜式硬件/軟件應用程序,以在立體視覺配置中使用2個攝像機,並處理原始數據以輸出信息。

因此,我有一個Raspberry pi Compute模塊套件和一個Raspberry pi 3。

  • 計算模塊套件將操作兩個攝像機
  • pi 3將運行代碼,因為它具有計算能力
  • OpenCV(C ++)是首選的CV軟件包

由於這是便攜式應用程序,因此不適合使用基於Internet的流傳輸。

我沒有時間玩GPIO引腳,也沒有找到將兩個攝像機源從計算模塊流到pi 3的方法。

您如何建議我繼續進行? 有人進行過這樣的項目嗎? 您可以提供哪些鏈接來幫助我實現這一目標?

這是一個學位論文項目,希望在作為一個完整的原型開發時從長遠來看會有所幫助。

  • 畫面尺寸:640x480
  • 幀率:15 fps
  • 相機彼此相距5厘米

更新的答案

我一直在對此做一些進一步的測試。 我還使用iperf工具和我自己的簡單TCP連接代碼,通過有線以太網將兩個Raspberry Pi相互直接連接,並測量了TCP性能。

在Raspberry Pi 2和Raspberry Pi 3上使用標准的內置10/100接口,您可以達到94Mbits / s。

但是,如果在每個Pi上放置一個TRENDnet USB3千兆適配器,然后重復測試,則將MTU設置為4088,則可以達到189Mbit / s,幾乎可以達到200 Mb / s。

原始答案

我進行了快速測試-不是完整的答案-但超過了我可以添加為注釋或正確格式的范圍!

我通過有線以太網連接設置了2個Raspberry Pi 2s。 我將一張640x480的圖片作為JPEG格式拍攝了出來,結果為178,000字節。

然后,在接收Pi上,我設置為接收1,000幀。 像這樣:

#!/bin/bash
for ((i=0;i<1000;i++)); do
   echo $i
   nc -l 1234 > pic-${i}.jpg
done

在發送Pi上,我設置為將圖片傳輸1000次:

for ((i=0;i<1000;i++)) ; do nc 192.168.0.65 1234 < pipic1.jpg ;done

這花了34秒,所以它的速度大約為33 fps,但是由於寫入文件系統以及SD卡而使其停頓了很多。 因此,我刪除了

nc -l 1234> pic-$ {i} .jpg

並且沒有將數據寫入磁盤-這是您在寫入屏幕時所需要的,如下所示:

nc -l 1234 > /dev/null

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM