2017-07-05 8 views
2

私が達成しようとしているのは、私のローカルWi-Fiに接続されたpiカメラv2のラズベリー3です。ラズベリーパイからUbuntuを実行しているコンピュータにライブビデオを送信したい。私のコンピュータでは、そのビデオをリアルタイムでopencvで処理しようとしています。下のコードは、私のUbuntuコンピュータのラズベリーパイからのビデオをテストするサンプルコードです。私はビデオをストリーミングするためにnetcatを使用しており、コードの下にシェルスクリプトを記載しています。Raspberry piからリモートコンピュータのOpencvアプリケーションへのビデオストリーム

#include <opencv2/highgui/highgui.hpp> 
#include <opencv2/imgproc/imgproc.hpp> 
#include <iostream> 
using namespace std; 
using namespace cv; 

int main(int argc, char** argv) 
{ 


    VideoCapture cap; 
    cap.open("/dev/stdin"); 
    if (!cap.isOpened()) 
     return -1; 

    Mat edges; 
    namedWindow("edges",1); 
    for(;;){ 
     Mat frame; 
     cap>>frame; 
     imshow("edges",frame); 
     if(waitKey(30)>=0)break; 
    } 

    return 0; 
} 

これはopencvでストリームを再生するためのコードです。

  1. まず、ストリームをopencvアプリケーションにリダイレクトします。 nc -l -p 5001 | ./app
  2. 次に、ラズベリーカメラを実行し、netcatを使用してストリームします。 raspivid -t 999999 -o | nc x.x.x.x 5001 xはクライアントPCのIPアドレスです。

これは私にとっては機能しませんが、mplayerで試してみました nc -l -p 5001 | mplayer-fps 31 -cache 1024 - それは完全に動作します。

私の問題は、opencvアプリケーションでストリームを正しくキャプチャしていないと思います。私は助けてください。

+0

、どのコードがどこで実行されているのかあなたはそれをコンパイルします。広告は立っています、あなたのコードは不完全です - 少なくともヘッダファイルはありません。あなたはどんなカメラを使っていますか?あなたのネットワークはどのようなものですか?各コンピュータではどのOSが動作していますか? –

+0

私はそれをより明確にしたと思います。あなたは何か提案を提供することができればそれは高く評価されるでしょう。 –

+0

私はあなたのラズベリーパイで 'raspivid'を実行し、5秒のビデオをラズベリーパイのローカルディスクファイルにキャプチャします。次に、 'FTP'や' scp'を使ってUbuntuにファイルを転送し、 './app

答えて

1

私は約4時間かけてこの作業をしようとしていました。私は重要なステップ、またなぜだった確かではないが、私は私のUbuntu 16 LTSのVirtualBox上で以下のパッケージをインストールする場合、私はそれをすべての作品が見つかりました:

libtbb2 
ffmpeg 
libavcodec 
libavcodec-dev 
libavformat-dev 
libtbb-dev 
libswscale-dev 
libgtk2.0-dev 
libtbb-dev 
libjpeg-dev 
libpng-dev 
libtiff-dev 
libjasper-dev 
libdc1394-22-dev 
libv4l-dev 
libx264-dev 

をしてて、私のラズベリーパイの上にカメラを実行します。

raspivid -ih -w 1024 -h 768 -o - | nc 192.168.0.98 5001 

キーワード:ラズベリーパイ、RASPI、raspivid、カメラ、OpenCVの、ストリーム、ストリーミング、netcatを、NC、ネットワーク、試してみて、あなたが実際に達成しようとしているものにはほとんど明確にしてくださいビデオ

+0

それは完全に機能しました。 -t 0パラメータを追加すると、無限にストリームされます。ありがとうございます –

+0

優秀!あなたのプロジェクトに幸運。 –