hinekure.net が http://hspdev-wiki.net/ から自動クローリングした結果を表示しています。画像やリソースなどのリンクが切れています。予めご了承ください。 |
最近普及しているネットブックのほとんどはUSBカメラ(WEBカメラ)を標準搭載しているようです。
HSPでは標準で搭載されているHSPCV.DLLを使用することで、このWEBカメラの画像を取得することが出来るようになります。
ということで、とりあえず使ってみましょう。
HSPCVはまだ未成熟な部分があるDLLです。
環境によっては正常に動作しないことがあるので注意してください。
掲載されたスクリプトを実行して、もし何か問題が発生しても自己責任でお願いします。
HSPCVでは、CVバッファという領域を使用します。
CVバッファ … buffer命令で作成する仮想領域のように実際には表示されないウィンドウ。screen/buffer命令のウィンドウIDとはまったく別の「CVバッファID」で管理される。HSPCVだけが利用できる。
CVバッファ内で描画・画像処理などした後に、CVバッファからHSPのウィンドウバッファ(screen/buffer)に画像を転送。この画像をようやくユーザーが目視出来るようになります。
「CVバッファ」
・画像の描画や読み込み
・画像処理命令の実行
↓(転送)
「HSPのウィンドウバッファ(screen/buffer)」
・HSP標準命令での追加描画など
・redraw 1で描画など
↓
ユーザーの目に見える
CVバッファをまとめると次のような感じです。
CVバッファを確保するためには、CVバッファの初期化が必要です。
cvbuffer命令かcvload命令でCVバッファの初期化が可能です。
しかしここではUSBカメラの画像を取得するだけならcvbuffer命令だけで十分ですね。
通常、次のような手順でUSBカメラの画像を取得・表示することが出来ます。
cvgetcapture命令を使用したら、必ずcvendcapture命令でキャプチャを終了させる必要があります。
と言うことで、サンプルを見てみましょう。
+ | サンプルスクリプト |
|
USBカメラが使える環境で実行すると、ウィンドウ内にカメラの映像が表示されるはずです。
環境によっては上下反転や左右反転などしているかもしれませんが、ここではとりあえず気にしないでください。