SREngine: Sein blog
2008年6月28日土曜日
今のところFirefox 3ではSilverlightが動作せず。
以下の環境で、Silverlightが動作しない。
Silverlightのインストールは2008年6月28日。
バージョンは1.0.30401.0。
OS: Windows XP SP3
Browser: Firefox 3.0
なお、IE6では問題ない。
参考:Wikipedia - Silverlight
追記:Syoichiさんよりコメントをいただき、ベータ版のSilverlight 2ではFirefox3上で動作することを知りました。
ラベル: 互換性
2008年6月25日水曜日
【QRデコーダ】 C/C++のQRコード読み取りライブラリlibdecodeqr
libdecodeqrの紹介。
libdecodeqrはC/C++のライブラリで、QRコードをデコードできる。
また、読み込んだ画像の座標とかの情報にもアクセスできる。
本家はこちら
http://trac.koka-in.org/libdecodeqr
ダウンロードしたファイルにlibファイルは含まれないので、自分でコンパイルして作らないといけない。
また、OpenCVも必要だ。
VC++などでヘッダーファイル、ライブラリファイル、リンカの設定を済ませたら準備完了。
以下、使い方。
ヘッダーの指定。
#include "decodeqr.h"
ハンドラーの宣言と定義。
QrDecoderHandle decoder;
decoder = qr_decoder_open();
QRコードのデコード処理。
qr_decoder_set_image_buffer(decoder, image); // imageはOpenCVのIplImage*
if (!qr_decoder_is_busy(decoder)) {
short sz;
for(sz=25, m_stat=0; (sz>=3) && ((m_stat&QR_IMAGEREADER_DECODED) == 0); sz-=2) {
short stat = qr_decoder_decode(m_decoder, sz);
}
}
デコードに成功したらQRコードの本文を取り出せる。
int text_size = 0;
QrCodeHeader header;
if(qr_decoder_get_header(decoder,&header)) {
if (text_size < header.byte_size+1) {
if(text)
delete text;
text_size=header.byte_size+1;
text=new unsigned char[text_size];
}
qr_decoder_get_body(decoder, text, text_size);
}
他にも情報を取り出せる。
qr_decoder_get_body
CvBox2D boxes = qr_decoder_get_finderpattern_boxes(decoder);
CvPoint *vertexes = qr_decoder_get_coderegion_vertexes(decoder);
終了処理。
qr_decoder_close(decoder);
2008年6月24日火曜日
Macbookをセットアップ:BootcampでWindows XP SP2をインストール
MacbookにWindows XP SP2をインストールしたときのログ。
Macbook(MacBook 2400/13.3 Black MB404J/A)が届いて、電源オン。
とりあえず、LANにつないでシステムアップデート。
ダウンロードが始まって、再起動するかきかれる。
再起動を承認すると、実際にアップデートのインストールが始まる。
結構長い。
次にBootcamp。
Bootcamp2.1なるものがWebサイトに出ていたが、今回は標準の2.0を使った。
FinderからApplication→Utility→Boot Campを起動する。
Windows XPのパーティションを64GBとした。
XP SP2のCDを入れるとしばらくして再起動する。
XPのインストール画面が表れる。
ライセンスなどに同意する。
キーボードの選択では、いったん「S」を押して106 Japanese Keyboardを選ぶ。
次に一番大切なステップであるインストールパーティションの選択だ。
ここは、必ず「C:パーティション3:BOOTCAMP[FAT32]」を選ぶ。
初めに確保したディスク領域も確認する。
フォーマット。
NTFSしか選べなかった。
クイックでもだいじょうぶらしいので、NTFS(クイック)を選択。
デフォルトの「変更なし」はだめらしい。
「F」でフォーマット開始。
15~20分ほどファイルのコピーが続いて、再起動される。
解像度の低いGUIが立ち上がってマウスが動かせる。
しばらく放っておくと「地域と言語のオプション」画面が出る。
適当に入力していく。
また、しばらく放置。
結構長い。
自動で再起動される。
XPのCDはまだ入れっぱなし。
やっとWindows XP SP2が起動する。
解像度が変だがしばらく我慢する。
マイコンピュータからCDを取り出して、Leopard CD Disk1を入れる。
ライセンスなどに同意してセットアップを進める。
途中、ハードウェアウィザードなどのウィンドウが出るが何もしない。
キャンセルボタンは特に押さないように注意する。
再起動するかポップアップがでるので、再起動する。
Optionキーを押しながら起動すると選択画面が出る。
Windows XPを選ぶ。
今度は解像度が正常だ。
次にWindows XP SP3をインストールする。
MSのサイトから、オフラインインストール用(325MB)を落としとく。
以上でMac OS X Leopard + Windows XP SP3の環境が出来上がった。
この後、Visual Studio 2005、Officeなどインストールしていく。
ラベル: Mac
2008年6月23日月曜日
Macbook購入。
IBM Thinkpad R50pの調子がかなり悪い。
画面がよく真っ黒になる。
タッチパットの横を押すと戻るが、画面がかなり乱れる。
特に膝の上など不安定な場所だとひどい。
そこで、新しいノートを購入することにした。
Windowsマシンを探したがこれといってよいマシンがみつからない。
そこで、Apple製のノートを選択肢に加えた。
BootcampでWindowsを起動することも出来る。
Ubuntuも入れて、トリプルブート環境を整えたら良いテスト環境が手に入る。
Macbook Proにしようか悩んだが、初心者が手を出すには高価過ぎる。
Macbook黒で充分だ。
で、MacBook 2400/13.3 Black MB404J/Aをポチッと。
今後のエントリーでWindows環境からの移行などを中心に紹介したい。
ラベル: Mac
OpenCVインストール
ここからopencv-winを選択する。
OpenCV_1.0.exeをダウンロードする。
ダウンロードしたファイルを実行して、セットアップを開始する。
インストール場所とPATHに加える以外に特に変わった選択肢はない。
インストール後、OpenCV\samples\cのフォルダーにいくつかexeファイルがある。
実行すると、サンプルを実行できる。
エラーが出るときはOpenCV\binがPATHに入っているかどうか確認してみる。
注意)VISTAでセットアップしたときはPATHに反映されなかった。
ラベル: OpenCV 画像認識
cvSetCapturePropertyでキャプチャサイズを指定できないので、VideoInputを使ってみた。
OpenCVを使うと簡単にUSBカメラ/WebCamの画像を取り込むことが出来る。
しかし、手持ちのLogicool WebCam Coolで640x480の解像度で取り込むことが出来ない。
以下のどちらも効かない。
cvSetCaptureProperty (capture, CV_CAP_PROP_FRAME_WIDTH, 640);
cvSetCaptureProperty (capture, CV_CAP_PROP_FRAME_HEIGHT, 480);
同じことを訴えている人たちもぐぐるといるので、OpenCVでは無理そうだ。
そこで、VideoInputというライブラリを試した。
結論から言うと、Logicool WebCam Coolで640x480の画像を取り込むことが出来た。
また、動作は軽快だ。
使い方はいたって簡単だ。
VS2005またはVS2008で、ライブラリ、インクルード、そしてリンカ・入力の設定を済ませる。
ヘッダーのインクルード。
#include <videoInput.h>
初期化。
videoInput VI
int numDevices = VI.listDevices()
if(numDevices == 0) {
//初期化失敗処理
}
VI.setupDevice(0, 640, 480);
画像をピクセルで取り出す。
unsigned char *c;
c = VI.getPixels(0, false);
OpenCV形式に取り込む方法。
IplImage *image->imageData = (char *)VI.getPixels(0, false);
終了処理。
VI.stopDevice(0);
ラベル: OpenCV
【OpenCV】 USBカメラ/WebCamから画像を取り込む
OpenCVのライブラリを使うと簡単にUSBカメラ/WebCamから画像を取り込むことが出来る。
まず、ヘッダファイル。
#include <cv.h>
#include <highgui.h>
キャプチャー(WebCam)デバイスの構造体を宣言/初期化。
CvCapture *capture = cvCaptureFromCAM(CV_CAP_ANY);
if(!capture){
//エラー処理
}
ウィンドウの表示。
cvNamedWindow("main window",CV_WINDOW_AUTOSIZE);
画像を取り込む。
IplImage *image = 0;
while(1) {
image=cvQueryFrame(capture);
cvShowImage("main window",image);
if (cvWaitKey(10) >= 0) break;
}
リソース等の開放。
cvReleaseCapture(&capture);
vDestroyWindow("main window");
ラベル: OpenCV
2008年6月17日火曜日
Visual Studio 2008 ExpressはATL/MFCをサポートせず?
VS2008 Expressではまったログです。
環境は以下です。
OS: Vista SP1 (32-bit)
VS: Visual Studio 2008 Express Edition
Platform SDK: Windows Software Development Kit (SDK) for Windows Server 2008 and .NET Framework 3.5
CHttpConnectionを含むコードをコンパイルしたかったけど、結局ダメ。
#include <stdafx.h>
でこける。
エラーは
.\test.cpp(1) : fatal error C1083: include ファイルを開けません。'stdafx.h': No such file or directory
手当たりしだい調べてみたが、ここかここの情報がとどめ。
To workaround this issue, install a non-Express version of Microsoft Visual Studio 2005 or Visual Studio 2008.
ラベル: C/C++, Visual Studio
