Windows7 64bitでDirectShow+OpenCVを使う

結論から言うと、DirectShowまでは32bit版と
さほど違いがないです。

Windows SDKのインストール

ここからダウンロードします。
正式名称は Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1 です。


Download details: Microsoft Windows 7 SDK (ISO)
http://www.microsoft.com/downloads/details.aspx?familyid=71DEB800-C591-4F97-A900-BEA146E4FAE1&displaylang=en#filelist


注意しなくてはいけないのは、この中で64bit版のISOはAMD64というやつということ。
Itaniumも64bitのチップなんですが、命令セット系が違うんですって。注意注意。
逆にItanium系を使ってる方は、こっちになるのかなぁ。

DirectX SDKのインストール

これも恐るるにたらず。


DirectX ホーム
http://msdn.microsoft.com/ja-jp/directx/default.aspx


上記DirectXのページからだとNovember 2008版しかダウンロードできませんが、
実は…


ホイール欲しい ハンドル欲しい » DirectX SDK August 2009 の解説と Direct3D 11 RTM
http://wlog.flatlib.jp/item/1388


というように、August 2009があったりします。


Download details: DirectX SDK - (August 2009)
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=b66e14b8-8505-4b17-bf80-edb2df5abad4


自分はAugust 2009をいれましたが、今のところ問題なく動いています。


ここまで来たら、まずはDirectShowの動作をチェックします。
サンプルなりなんなりを持ってきて動かしてみます。

OpenCVがくせ者!

OpenCVはバージョンが上がり、2.0になりました。
しかし…結論から言うと、Windows7(x64)+OpenCV2.0+VS2008だと、
うまく動作しません。


OpenCV 2.0 リリースノートなど - BiBoLoG
http://d.hatena.ne.jp/Guernsey/20091001/1254402879


OpenCV 2.0 Release版が公開されました。 画像処理ソリューション
http://imagingsolution.blog107.fc2.com/blog-entry-176.html


いろいろと情報源はあるのですが、どうしてもエラーが出ます。
なんていうエラーか忘れてしまったのですが、VS2005の再頒布可能ライブラリを入れたら直るエラーらしい。
…なんですが、そのエラーは出続け…。うーん。


OpenCV1.1preで対応するとうまくいきます。
まぁ仕方ないですねー…。