2009-06-01から1ヶ月間の記事一覧

STLについて、今さらだけど。

STLのvectorやlistのメモリ管理ってどうなってるのか、ちょっと気になったので。 Cで配列確保した時は、ちゃんとfree()しないと解放されないけど、STLについては変数のスコープを抜けた時点で自動的に解放してくれるらしい。 Javaに近くなってるのですね。

OpenCV エッジ抽出プログラム

サンプルは載せてませんが、書いていてこれは気をつけなければということだけ。 エッジ抽出を行う元画像をcvLoadImage()で読み込む際に、必ずCV_LOAD_IMAGE_GRAYSCALEで読み込むこと。 色つきで読み込むと、エッジ抽出できませんよねw

OpenCV エッジ抽出プログラム

サンプルは載せてませんが、書いていてこれは気をつけなければということだけ。 エッジ抽出を行う元画像をcvLoadImage()で読み込む際に、必ずCV_LOAD_IMAGE_GRAYSCALEで読み込むこと。 色つきで読み込むと、エッジ抽出できませんよねw

VirtualBoxで開発中。

新しくLenovoのX200を購入したが、Vistaではクロスコンパイルができないので、VirtualBoxにXPを入れてCygwinでOpenCVのコードを書いている。 学校のパソが1TBとかいう無駄なHDDをつけているので、VirtualBoxにUbuntuでも入れようかと思ったが、上手くいかな…

研究で使う便利ツール等々

VC++、Boost。スマートポインタ。 後で詳しいことを調べてまとめておくこと。

三項演算子 ? :

式1?命令1:命令2 式1が真であれば、命令1が実行され、偽であれば命令2が実行される。 ショートコーディングしたくて、よく使おうとするんだけど、使いたいときに限って忘れて出てこないんだよなぁ。 だから、メモメモっと。

OpenCV cvSmooth

cvSmooth(img1,img2,type,param1,param2,param3,param4); img1は入力画像、img2は平滑化された画像を格納する部分。 typeは平滑化するときのフィルタの種類。 param1は平滑化のパラメータ、param2はスケーリングに関係する部分。param3はガウシアンフィルタ…

IplImage構造体

typedef struct _IplImage { int nSize; /* sizeof(IplImage) */ int ID; /* version (=0)*/ int nChannels; /* Most of OpenCV functions support 1,2,3 or 4 channels */ int alphaChannel; /* ignored by OpenCV */ int depth; /* pixel depth in bits: I…

VC2008にて。

画像を確保して使わなくなったメモリ領域をフリーすると怒られる。 原因がつきとめられてない。

pow(int,int)で関数のオーバーロードができません。

CV2005では怒られます。 pow((int)i,(int)j)というようにキャストしてもダメだったので、調べた結果powにdouble型の何かの変数とint型の変数を組み合わせて使うことでエラー回避可能。 なんという無駄なエラー…。 ということで、pow(double,int)でこの手のエ…