問題タブ [google-project-tango]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unity3d - Unity と Tango の「ライプニッツ」でカラー フレームにアクセスする
Tango と Unity をいじり始めたところです。残念ながら、最新リリースの Unity でカラー データにアクセスする方法に関するドキュメントや例はないようです。
GitHub のモーション トラッキングの例 ( https://github.com/googlesamples/tango-examples-unity ) を出発点として使用し、ポーズと深度データを読み取るのと同じ方法で着信カラー フレームを読み取ろうとしました。「ITangoVideoOverlay」インターフェースと「OnTangoImageAvailableEventHandler」コールバックを経由するのが最善の方法だと思います。
私が今やろうとしているのは、「OnTangoImageAvailableEventHandler」コールバックを機能させることだけですが、よくわかりません。Tango Manager で [Enable Video Overlay] をオンにし、次のスクリプトをデバッグ用の GUI テキスト オブジェクトに接続しました。
私が見逃しているカメラの初期化はありますか? または、この古いコードのように VideoOverlayListener を使用する方法がまだ推奨されています: Unity で色データを取得する
Unityを介してカメラに直接アクセスすることも可能であることを知っています(深度を無効にします)。でも、まずは「正しいやり方」を学びたい。
お時間をいただきありがとうございます!
2015 年 4 月 28 日更新 - スクリプトの最新バージョン、コールバックが機能します。まだ RGB カラーへの変換が必要です
このスクリプトは、GitHub にある Google の Tango Motion Tracking の例への追加として作成されました。スクリプトを Unity カメラにアタッチし、パブリック フィールド「m_viewScreen」をメッシュ オブジェクト (平面など) にリンクして、ビデオ テクスチャを表示します。
opencv - Project Tango レンズ歪みモデルとは何ですか?
Project Tango C API ドキュメントによると、TANGO_CALIBRATION_POLYNOMIAL_3_PARAMETERS
レンズの歪みは次のようにモデル化されています。
x_corr_px = x_px (1 + k1 * r2 + k2 * r4 + k3 * r6) y_corr_px = y_px (1 + k1 * r2 + k2 * r4 + k3 * r6)
つまり、歪みのない座標は、歪みのある座標のべき級数関数です。Java APIには別の定義がありますが、その説明は、関数がどの方向にマップされるかを伝えるのに十分なほど詳細ではありません。
物事を正しく登録するのに苦労しましたが、マッピングが実際には反対方向に進んでいる可能性があると思います。つまり、歪んだ座標は歪んでいない座標のべき級数です。カメラのキャリブレーションが OpenCV を使用して作成された場合、問題の原因は OpenCV のドキュメント自体が矛盾している可能性があります。見つけて理解する最も簡単な説明はOpenCV カメラ キャリブレーション チュートリアルで、これは Project Tango のドキュメントと一致しています。
しかし一方で、OpenCV API のドキュメントでは、マッピングが逆になると指定されています。
OpenCV を使った私の実験では、その API ドキュメントは正しく表示され、チュートリアルは間違っていることがわかりました。正の値k1
(他のすべての歪みパラメータをゼロに設定) はピンクッション型の歪みをk1
意味し、負の値は樽型の歪みを意味します。これは、ウィキペディアが Brown-Conrady モデルについて述べていることと一致し、 Tsai モデルとは反対になります。歪みは、数学をより便利にするものに応じて、どちらの方法でもモデル化できることに注意してください。この不一致について、OpenCV に対してバグを開きました。
私の質問: Project Tango レンズ歪みモデルは、OpenCV で実装されているものと同じですか (ドキュメントにもかかわらず)?
カラーカメラからキャプチャした画像を次に示します (わずかなピンクッションが表示されます)。
Tango サービスによって報告されたカメラのキャリブレーションは次のとおりです。
PythonでOpenCVを使用して歪みを解消する方法は次のとおりです。
これにより、上端が少し過剰に補正されている可能性がありますが、リバース モデルで試みたものよりもはるかに優れています。
java - project tango を使って深度を感知しながら高解像度の写真を撮る方法
project tango を使った写真の撮り方
私はこの答えを読みました:Jacobi Google Tango APIでonFrameAvailable()を使用する
これはフレームをつかむために機能しますが、画質は良くありません。takePicture に相当するものはありますか?
Java API に注意してください。
RGB データを提供しません。Android カメラを使用して写真を撮ると、タンゴは奥行きを感知できません。そこで、TangoCameraPreview を使用する必要があります。
ありがとう
java - ijParcelFileDescriptor は Java API では常に null です
onXyzIjAvailable(TangoXyzIjData xyzIj) 内では、xyz にはアクセスできますが、ij データにはアクセスできません。なぜ常に null なのですか? それとも、同じものがJavaレイヤーに公開されるのは時間の問題ですか?
google-project-tango - Tango Unity サンプルのビルドに失敗する
最近、Tango タブレット デバイスを入手し、Github から tango-examples-unity をダウンロードして学習を開始しました。興奮して、Unity で MeshBuilder プロジェクトを開き、ビルドしようとしましたが、失敗しました。私の Android SDK と jdk は最新であり、パスは Unity 設定で設定されているとおりに正しいです。64 ビット Windows 8 システムで Unity 5.0.1f を使用しています。Leibniz のリリース ノートには、サンプルを Unity 5 に移行したと記載されていたので、Unity 5 で試してみました。同じプロジェクトをビルドしようとしているときに、Unity 4.6.3f1 でまったく同じエラーが発生しなかったことは言うまでもありません。
エラー:
DirectoryNotFoundException: パス「C:\path\tango-examples-unity-master\ExperimentalProjects\MeshBuilder\Assets\Plugins\Android\tango-native-service-client-helperlib\bin\aidl\com\」の一部が見つかりませんでしたgoogle\atap\tangoservice\ITangoLogRequestListener.aidl" または "Temp\StagingArea\android-libraries\tango-native-service-client-helperlib\bin\aidl\com\google\atap\tangoservice\ITangoLogRequestListener.aidl"
Player のビルド中にエラーが発生しました: DirectoryNotFoundException: パスの一部が見つかりませんでした "C:\path\tango-examples-unity-master\ExperimentalProjects\MeshBuilder\Assets\Plugins\Android\tango-native-service-client-helperlib\bin\ aidl\com\google\atap\tangoservice\ITangoLogRequestListener.aidl" または "Temp\StagingArea\android-libraries\tango-native-service-client-helperlib\bin\aidl\com\google\atap\tangoservice\ITangoLogRequestListener.aidl"
私がこれまでに試したこと:
- プロジェクトの別のバージョンをダウンロードします。この他のバージョンからビルドできた唯一のプロジェクトは PointCloud です。他に何も構築できませんでした。
- 含まれている TangoSDK を新しいダウンロード バージョンの leibniz unity パッケージに置き換えます。これは役に立ちませんでした。
- 両方の URL からダウンロードしたソース コードから他のプロジェクトをビルドします。立ち入り禁止。
- [developers dot google dot com/project-tango/apis/unity/unity-depth-perception] の Tango Unity チュートリアルを試してみてください。そのようなコンポーネントが見つからないため、「PointCloud オブジェクトの作成」のステップで失敗します。私は TangoSDK をインポートしているので、このチュートリアルはおそらく古いバージョンの SDK に属しており、ライプニッツでは機能しないと考えています。私が間違っている場合は、私を修正してください。
- PointCloudUnity プロジェクトのカルマン バージョンを開こうとしました。エラーを取得します。
ファイルを開くことができませんでした。/MotionDetectionHelper$MotionDetectionListener.class を探していますが、見つかりません。
- Tango ヘルプに電子メールを送信します。まだ応答がありません。
この長い投稿をお読みいただき、ご協力いただきありがとうございます。
google-project-tango - Project Tango の USB OTG
Project Tango タブレットが USB OTG をサポートしているかどうか知っている人はいますか? または、ドックの USB 3.0 ポートが OTG ハブとして機能する場合はどうなりますか? オンラインでは、これらのポートは充電用であるとしか記載されていないため、OTG 機能も含まれているかどうかはわかりません。他のデバイスとのインターフェースも可能であれば、Tango の追跡機能の有用性が確実に高まります。