タグ

2012年1月27日のブックマーク (4件)

  • 【OpenCV】IplImageの輝度値を参照、設定する 画像処理ソリューション

    メインページ > OpenCV IplImageの輝度値(画素値)を直接参照、設定したい場合はIplImage構造体のimageDataのポインタを参照するばいいのですが、このポインタが符号付き8Bitのポインタ(char*)なので、ちょっと分かりづらいかもしれません。 と、その前に、IplImageの画像データがどのように格納させているか?のおさらいです。 モノクロ8Bit(8Bit、1Channnel)の場合、下図のように画像の左上を原点として、輝度値が格納されています。 画像のメモリ的にはwidtStepバイトの幅で確保され、必ずしも画像の幅(width)と一致しないので、注意して下さい。 (メモリの幅は4の倍数のバイト数になるように調整されています。) この辺は.NETのBitmapと同じです。 24Bitカラー(8Bit、3Channnel)の場合は、同じように画像の左上を原点と

    inriver1429
    inriver1429 2012/01/27
    iplimage
  • opencvのインストール(opencv1.0) - cslabの日記

    Visual C++ 2008 Express Edition を使って無料で環境を作る。openCVは既に1.1,2.0, 2.1と版を重ねているが、Webでダウンロードできる過去の研究のサンプルコードは、昔(Opencvが1.0のころ)に作られ、動作確認されているので、アルゴリズムの確認のためにはいまだにopencv1.0の環境を作っておく必要がある。ので、やってみたメモを残す。 材料をそろえる OpenCV1.0 http://opencv.jp/ で、OpenCV_1.0.exe をダウンロード Visual C++ visual studio 2008 express で検索。場所は時折変わる。 インストール vstudio 2008 visual studio 2008 express のインストーラーを起動(isoイメージをダウンロードして、仮想CDドライブなどを使うと便利

    opencvのインストール(opencv1.0) - cslabの日記
  • C++ チートシート — opencv v2.1 documentation

    // どこかで IplImage *iplimg; が宣言され,確保されており, // さらに cv::Mat Mimg が定義されていることを仮定しています. Mat img(iplimg); // IplImage から Mat 画像 "img" を作成します. Mimg = iplimg; // または,あらかじめ定義された cv::Mat Mimg ヘッダに // iplimg のデータをセットします(コピーはされません). // IplImage または CvMat への変換.データはコピーされません IplImage ipl_img = img; CvMat cvmat = img; // cv::Mat -> CvMat の変換

  • 【OpenCV2.0】cv::Matクラス 画像処理ソリューション

    ※注1 widthStepでは画像1行あたりのバイト数はビットマップファイルと同様に4バイト単位になるように調整されていましたが、画像ファイルをcv::imread()関数を使って読み込むと、stepの値は(メモリも?)4バイト単位に調整されません。(画像の幅×チャンネル数になるのみ) そのため、その他もろもろの互換性を考慮すると、cvLoadImageを使って画像ファイルを読み込み、cv::Matに変換した方が良さそうです。 (例) //画像ファイルの読み込み cv::Ptr<IplImage> iplimg = cvLoadImage("test.bmp", CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR); //cv::Matへ変換 cv::Mat img(iplimg); ※注2 cv::Matから取得するdepth()は以下のように