ArduinoカメラモジュールビデオからAndroid画面にビデオを送信するにはどうすればよいですか?


9

カメラモジュールをArduino Megaに接続し、MegaをAndroidスマートフォン(BlueToothなど)に接続して、カメラのライブビューを携帯電話に送信しようとしています。

静止画像についてこれを示すビデオをオンラインで見ました-Arduinoのカメラモジュールによってキャプチャされた画像はAndroidに送信され、出力画像は数秒後に表示されました(BTが画像を送信する時間)。

これは画像の代わりにライブビデオで可能ですか?はいの場合、ご案内ください。いいえの場合、いくつかの回避策を提案してください。


こんにちはマブドラボ、robotics.stackexchangeへようこそ!読みやすくするために文言を少し更新しました。オンラインで見た元の動画のURLを見つけることができますか?
Ian

回答:


8

さまざまなオプションがあります(難易度別の優先度)。

  1. スマートフォンをカメラとして使用する。これには実際にアプリがあります。1台の電話をロボットに接続できる場合は、別の電話またはWebでライブビデオをストリーミングできます。ただし、ロボットに接続された電話はインターネット接続(3GまたはEdge)を備えている必要があります。App StoreまたはGoogle Playで「ライブストリーム」を検索します。

  2. 使用してIPカメラを。このオプションは非常にシンプルで、Arduinoで制御できるIPカメラが必要です。IPカメラは、ルーターまたはラズベリーパイにワイヤレスでビデオを送信できます。その後、別の電話またはコンピューターをルーターに接続して、ライブ画像を表​​示できます。

  3. Raspberry Piを使用する。パフォーマンスが低いため、Idは通常、Arduinoプラットフォームでビデオや画像の操作を行いません。Raspberry piをArduinoに接続できます。そしてラズベリーパイに良いカメラ。Arduinoは、いつ送信を開始するかなどのコマンドをRaspberry piに送信できます。その後、Piでも画像操作を行うことができます。また、Raspberry piはルーターとして機能するため、wifiまたはBluetoothを介してスマートフォンをラズベリーpiに接続できます。テキスト/色を操作しても、素晴らしい高FPSビデオが得られます。

  4. Android ADKをメインコントローラとして使用できます。そして、Arduinoはアクセサリーとしてセットアップされています。このようにして、ArduinoはAndroidに何をすべきかを命令できます。安いアンドロイドベースの携帯電話はあなたに約100USDかかります、そしてあなたはその価格で多くの機能を手に入れます。GPS、カメラ、バッテリーなど。最新のスマートフォンのほとんどは、wifiホットスポットを作成する機能を備えています。次に、他のwifiプラットフォームをそのホットスポットに接続して、ロボットを制御したり、ライブストリームビデオを表示したりできます。これは私の考えでは最もエレガントな方法です。


実際、私はあなたが#1で言ったことをしました。ありがとう
ござい

1

私の解決策は回避策です。

私は比較的大きな画像フレームをBluetooth経由で送信しませんが、OpenCVを搭載したAndroidフォンを使用してライブビデオを撮影し、画像処理後にいくつかの短いコマンドでBluetooth経由でArduinoを指示します。Arduinoに接続されたカメラと同じように、電話はArduinoの近くにあります。

画像またはその処理済みバージョンをリモートで表示したい場合は、2番目のBluetooth接続を介してカメラ付き携帯電話に接続された別の電話を使用できます。

上記の準備ができていません。MindstormsNXT、Android、OpenCVバージョンはこちらです。


1

これが問題を解決する方法です。古いwildfireにIP Webcamをインストールし、nexus4からwifiホットスポットをセットアップし、wildfireからそれに接続し、wildfireのIPを取得して、nexus4のWebビューアーに配置しました。


1

はい、可能ですが、以下の点にご注意ください。

1)Bluetoothを使用している場合、データ転送速度は、v2ブルートゥースの場合のように、データ転送速度3 Mb \ sなどのさまざまなバージョンに依存します。

2)QVGAモード(1フレームで320 x 240ピクセル)でov7670のようなカメラを使用しているとします。各ピクセルは8ビットです。良いビデオの場合、毎秒30フレーム、つまり1フレームで76800バイトが必要です。 30フレームは2.3 Mbです。

3)2.3 MB \ S <3 MB \ sになったので、Vedioストリーミングをライブ配信できます。

4)残りは、プログラミングの理解と、さまざまなモジュールとのエレクトロニクス接続の作成がどれだけ優れているかに依存します。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.