OpenCVカメラを一意に識別します -- c++ フィールド と winapi フィールド と opencv フィールド と camera フィールド 関連 問題

Uniquely Identifying OpenCV Cameras












4
vote

問題

日本語

現在、C ++でWin 7に3つのカメラを使用して<コード> opencv2.4.8 を使用しています。 VideoCapture cap などでカメラから読み取る方法を理解していますが、どのカメラがあるかを特定するのに問題があります。

理解できるものから、<コード> cap.open(int num) はカメラインデックスを取ります。私の場合、これらは 0,1、&ampです。 2.

<事前> <コード> CAMA = 0 CAMB = 1 CAMC = 2

しかしながら、プログラムを起動する前に、インデックス0のCAMは抜くようになり、カメラのインデックスが変更されます。

<事前> <コード> CAMA //GONE CAMB = 0 CAMC = 1

em> どのカメラがあるかを忘れています(各カメラを1回ずつユーザーに表示しています...)。おそらくカメラの一意のIDをログに記録すると、再起動時に読み込まれますか?

デバイスマネージャでは、 9988777665 のプロパティの下にあるが、やや永続的な値であるように見えます。このIDをCAMインデックスに関連付ける方法はありますか?

私は とここでコードを試してみました。ステレオビジョンユーザは一般的にこの問題に遭遇すると想像しているので、人々はどのように管理されていますかこれ?

英語

I am currently using opencv2.4.8 with three cameras on Win 7 in C++. I understand how to read from a camera through VideoCapture cap etc but I am having trouble identifying which camera is which.

From what I can understand, cap.open(int num) takes in the camera index. In my case, these are 0, 1, & 2.

    CAMA = 0      CAMB = 1      CAMC = 2 

If however, before starting up the program, cam at index 0 becomes unplugged, my cameras index change.

    CAMA //GONE     CAMB = 0     CAMC = 1 

So is there some way to remember which camera is which (other than displaying each camera to the user every single time...)? Perhaps logging some unique ID for the camera that can be then read in on restart?

In the device manager, I see under the properties of the USB device - Device Class guid which seems to be a somewhat persistent value. Is there a way to correlate this ID to the cam index?

I have searched here and tried the code here. I imagine stereovision users commonly run into this problem, so how have people managed this?

</div
           
 
 

回答リスト

3
 
vote
vote
ベストアンサー
 

本当に答えではありませんが、それから私は実際には1つないと思います。

本番アプリケーションのために行ったことは、openCVの外側のビデオ処理を完全に行い、そのフレームをOpenCVイメージに変換し、さらに処理することです。

Windows上ではDirectShowを使用することができ、カメラ固有のAPIも使用しました。携帯用または便利な方法ではありませんが、それは働くという利点を持っています。プラス側では、通常、OpenCVを定義したいくつかのプロパティだけではなく、通常、カメラ設定と機能のフルセットにアクセスできます。

 

Not really an answer, but then I think there isn't really one.

What I've done for production applications is to do the video handling completely outside of OpenCV and then convert the frames to OpenCV images and do further processing.

On Windows you could use DirectShow, and I've used camera-specific APIs as well. Not in any way portable or convenient, but it has the benefit of working. On the plus side, you usually get access to the full set of camera settings and features, rather than just the few properties OpenCV defines.

</div
 
 

関連する質問

4  Android Webブラウザでライブラリ写真をアップロードします  ( Upload a library photo with android web browser ) 
Androidで無効にされているように、ブラウザのブラウザの写真をアップロードすることは可能ですか?カメラ/フォトライブラリJavaScript API? ありがとう ...

2  Androidエミュレータのカメラボタンをクリックします  ( Clicking on the camera button in the android emulator ) 
Androidエミュレータのカメラボタンは無効になっています。 私はそれをクリックすることができず、マウスでマウスでホバリングしたとき、背景は他のボタンのように青くない。 「カメラサポート - True」ハードウェアを追加しようとしましたが、ボタンはまだ解...

0  Androidカメラアプリ(画像のみが再起動後に表示されます)  ( Android camera app picture only shows up after reboot ) 
私は私のカメラアプリに問題があります。写真をスナップさせてからAndroidデバイスのフォルダに保存しようとしていて、それを実行しているようですが、デバイスの再起動後にのみ表示されます。さらに、私は常に結果コード0になっているようですので、私のImageVie...

2  aplha&nexのためのSony Playmemories SDK  ( Sony playmemories sdk for aplha nex ) 
APLHAおよびNEXカメラのSDKを公開する予定はありますか?あなたはいくつかのアプリを自分で公開していて、開発者コミュニティがこれらのデバイスで何ができるかを見るのが良いでしょう。 特に、手動のカメラ設定に関係なく、OLEDファインダーが露出した画像を表...

12  カメラの表面視を縦に回転させる  ( Rotating a camera surfaceview to portrait ) 
表面ビューでカメラの向きを変える上でいくつかの投稿を調べましたが、例からのコードを: http://developer.android. .com /リソース/サンプル/ apidemos / src / com /例/ Android / API /...

0  3Dカメラズームアンドジャワの物理学をフォローしますか?  ( 3d camera zoom and follow physics in java ) 
私はそれを作ろうとしています。私はJOGLを使っていますが、それは私がちょうど数学の助けが必要なときに関係ないはずです。これは私がこれまでのものです: <事前> <コード> float distance = (float) ((Math.sqrt((p1.x ...

3  UiimagePickerController:カスタムカメラオーバーレイデフォルトのコントロールの上に座っていますか?  ( Uiimagepickercontroller custom camera overlay sitting on top of default control ) 
UIImagePickerController cameraOverlayView プロパティを使用してカスタムカメラUIを作成しています。ただし、既存のUI - 特にフラッシュとカメラの選択ボタンを上部に保持します。 私の考えは、 99887661 ...

6  あるOpenGLコンテキストから別のOpenGLのコンテキストにテクスチャを転送する方法  ( How to transfer textures from one opengl context to another ) 
背景: AndroidネイティブカメラアプリはOpenGL_1.0のコンテキストを使用してカメラのプレビューとギャラリーの写真を表示します。これで、ネイティブカメラプレビューにライブフィルタを追加します。 自分のカメラにライブフィルタを追加するには、アプリ...

1  Android:カメラのヘルプを使って写真を撮って私のアプリでそれを使う  ( Android using camera help take a picture and use it on my app ) 
私は私のアプリからstartcamを作成しました..そしてこれがカムの活動がどのように見えるかです。写真を撮る方法はわかりません、ボタンはどこにありますか? 私がやりたいことは、彼が写真を撮ったときに彼が統治されたとき、彼は「完成したボタン」をクリックするの...

35  Spriteに続くXNA 2Dカメラエンジン  ( Xna 2d camera engine that follows sprite ) 
XNAゲームで視差効果を作成する最善の方法は何ですか?私はそれが世界中に動くにつれて私のスプライトに追従するようにカメラが好きです、そのように私はズーム、パン、揺れ、その他の効果のような効果を築くことができます。誰もが、これがどのように行われているか、好まし...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有