2012-05-06 8 views
4

現在、内蔵のラップトップWebカメラまたは外付けUSBウェブカメラのいずれかを使用するJavaプログラムを作成しようとしています。これはうまくいけば、PCとMacの両方と互換性があります。ウェブカメラ - QRコードの検出、スナップショットの取得、デコード

私は誰もがそれを扱うことができるライブラリを知っていたのだろうか?私は本当にホイールを再発明したくないので、1)Webカメラの検出、2)QRコードが検出されたときのスナップショットの取得、

私はバーコードイメージをデコードするためにZXingに精通しています。

私は高低を検索しましたが、私が探しているライブラリは存在しないと強く疑いますが、その価値はあります。

ここに私の最初の質問があるので、私はそれがはっきりしていることを願っています!

編集:もし存在しなければ、QRコードが検出されたときにウェブカメラからスナップショットを取る方法の正しい方向に私を指摘できますか? :)

ありがとうございました

答えて

0

zxingにはActionscriptへのポートがあり、Flashを介してWebカメラにアクセスできるようになります。港は少し古く、100%完成していませんが、仕事をしなければなりません。

+0

私はActionScriptでの経験がありません。 PHP/Javaとどのように似ていますか?私は、PHPとJavaの適度な能力の非常に良い知識を持っています。 – chrisby

+0

これはJavascriptに最も似ています。 Javaに似ているわけではなく、PHPと少し似ているかもしれませんが、実際にはどちらかとは言えません。 –

+0

よろしくお願いします。私はそれを見てみましょう。 – chrisby

0

カメラとやり取りするにはgstreamerを使用できます。ウィンドウの場合は、再びgstreamerまたはDirectShowになる可能性があります。どちらの場合でも、特別なフィルタを使用してデータをキャプチャする必要があります。DirectShowではSampleGrabberになります。私はgstreamerに類似のプラグインを提供するべきだと思う。

5

This example現在、QRコードデータをZXingと共にWebcam Captureライブラリで読む方法を紹介しています。 Webcam Captureは、32ビットおよび64ビットWindows、Linux、Mac OXと互換性があります。 Linuxの場合、ARMアーキテクチャもサポートしています。

コードは非常に単純です:

Webcam webcam = Webcam.getDefault(); // non-default (e.g. USB) webcam can be used too 
webcam.open(); 

Result result = null; 
BufferedImage image = null; 

if (webcam.isOpen()) { 
    if ((image = webcam.getImage()) == null) { 
     continue; 
    } 

    LuminanceSource source = new BufferedImageLuminanceSource(image); 
    BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source)); 
    try { 
     result = new MultiFormatReader().decode(bitmap); 
    } catch (NotFoundException e) { 
     // fall thru, it means there is no QR code in image 
    } 
} 

if (result != null) { 
    System.out.println("QR code data is: " + result.getText()); 
} 
関連する問題