私はandroidsdkとkinectsdkのデュアルアプリケーションに取り組んでいます。kinectにスマートフォンアプリケーションにデータを送信してもらいたい。スマートフォンアプリケーションは、kinectデータに基づいてユーザーに通知を送信します。スマートフォンは(うまくいけば)kinectのオン/オフと他のいくつかの基本的なコマンドをオン/オフにできるはずです。kinectとスマートフォンアプリケーションを通信させるにはどうすればよいですか?
2 に答える
クールなコンセプトです。私はKinectの大ファンです(Windowsで使用する場合、Xboxのギミックだと思います)。
手始めに、スマートフォンからKinectと直接インターフェースすることはできません。Kinectには、USB接続、外部電源、および2.6GHzデュアルコアプロセッサを搭載したWindows7マシンが必要です。そのため、Windows7マシンで実行されているサーバーアプリケーションとAndroidフォンのクライアントアプリケーションを接続することが問題になります。これを行うにはいくつかの方法がありますが(USB、WiFi、TCP)、それらはすべてどこかで苦しんでいます。USBはあなたをコンピューターにつなぎ、スマートフォンアプリを冗長にします(すでにコンピューターに接続しているので、コンピューターを使用するだけです)。大量のデータを送信する場合はWiFiがおそらく最良の選択ですが、家でしか機能しません。TCP(またはUDP)は一部のアプリケーションで機能する可能性がありますが、ビデオのストリーミングを開始すると、電話が嫌になります。
データ量の多いアプリケーション(電話へのビデオストリーミング)は使用しないと仮定します。テキストメッセージの更新と同様に、KinectからAndroidに通知を送信するだけの場合(たとえば、Kinectをモーション検出器として使用し、誰かが部屋に入ったときにAndroidにメッセージを送信する)、確かに可能性がありますTCP / IPソリューションを実現し、おそらく非常に簡単です。Kinectを使用してWindows7コンピューターに単純なTCPサーバーをセットアップし、 TCP要求を使用してサーバーに接続します。(クライアント側のコードを見てください)。設定が完了すると、Kinectとスマートフォンアプリの間で簡単にメッセージを送信できます。手始めに、いくつかの簡単なメッセージを送信してみてください。サーバーは「HITHERE」と言い、Androidは「IHATE YOU WINDOWS」などと応答し、メッセージが宛先に到達していることを確認します(TCPはほぼ確実に到達します)。それを実行したら、その周りにアプリを構築するだけです。
公式のMicrosoftSDKの使用を避けたい場合は、Point Cloud Library(OpenNI上に構築)にストリーミング用のフレームワークとチュートリアルが用意されています。