簡易ビームプロファイラ
SBPW (Simple Beam Profiler for Windows)
WDM対応カメラ(普通のWebカメラやUSBカメラ、多くのPCカメラ)を利用して
レーザー等のビーム断面を見てみるプログラム。
初版のスクリーンショット
この手のフリーソフトとしては
LaseViewという
立派なものがあるが、強度のピーク(重心)を追ったり等自分が欲しい機能を
自分で書けば入れられるので書いてみた。
EWCLIBと
ESPLIBを
利用したので自分で書いたコードはとても短い。XP/7上で動かしているが
2000+DirectXでも動くのではないかな。
ガンマ補正について
ver. 0.12 2011.08.08
・カメラの設定を(プログラムから)行なえるようにした*。
モーダルダイアログボックスでの設定なので使い勝手はよくありませんが。。
バイナリsbpw.exe
ソースsbpw.cpp
sbpw_lib.h
sbpw_lib.cpp
*参考URL:
京大の方の「DirectShowのビデオキャプチャプログラミング」の
フィルタのプロパティページ表示
MSDNの
フィルタのプロパティ ページの表示
ver. 0.11 2011.08.01
・カメラのガンマ補正値の表示が正しくなかったのを修正。
・複数台のカメラがPCに接続されているときにカメラを選べるようにした。
バイナリsbpw.exe
ソースsbpw.cpp
sbpw_lib.h
sbpw_lib.cpp
ver. 0.10 2011.07.29
・カメラのガンマ補正値を設定できるようにした。
・リアルタイムでカメラから取り込んだデータのガンマ補正が
できるようにした。
(↑これとビーム中心を自動で追う機能の実装がそもそもの
SBPWの目的だった)
・saveボタンを押したときに画像以外にx、y方向の断面のデータがテキスト保存
されるようにした。
バイナリsbpw.exe
ソースsbpw.cpp
初版 2011.07.21
バイナリsbpw.exe
ソースsbpw.cpp
カメラの設定について:
今のところカメラを設定をいじる機能を入れていないので
カメラのドライバ等に付属するユーティリティソフトを使って設定するか、
なければAMCap(DirectShowSDK等に付属(ソースコードも)、Webカメラに
ついてくることも多い・例えばフォトロンの
ダウンロードサイト
のampcap.exe)を使ってください。
動作確認をしたWebカメラのリスト
さすがに自動露出はOFFにできないと使えないので私が試した
結果を記録しておく。ただし
ドライバのバージョンにもよるようなので保障はしません。
自動露出をOFFにできるWebカメラ
Logicool Webcam C210
(センサのサイズがせいぜい2.3mm x 1.7mmくらいしかない)
Logicool Qcam Cool QVP-30SV (V-UBQ42) オススメ!
Creative Labs WebCam NX Pro (PD1130)(公式サイトにドライバが無い)
Creative Labs WebCam 5 (PD1000)
自動露出をOFFにできないWebカメラ
I-O DATA USB-CAM30MS
ELECOM UCAM-H1S30M
14814 [ .. 22 Jul 2011]
mm@ils.uec.ac.jp