最終更新: mikk_ni3_92 2007年05月14日(月) 14:28:56履歴
現在地 >> メニュー >> 基本編06 >> OpenCVで読み込む
OpenCVで読み込むと
【メモ】
ヘッダファイルによっては、「GL_BGR」が定義されていない場合がある。
そのような場合は、例えば以下のようにして、色を入れ替えて「GL_RGB」を指定すればよい。
サンプル >> OpenCVとテクスチャ作成
OpenCVで読み込むと
- 色データは「BGR」の順で格納されている
- 左上原点で読み込まれている
//---------- 画像を読み込んでコンバート ----------------// bool LoadGLTextures() { IplImage *image1=cvLoadImage("test2.jpg",CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR); if(image1==NULL){ return false; } cvFlip(image1,NULL,0); //上下ひっくり返す /******* テクスチャ作成 ****************/ glGenTextures(1, &texture[0]); glBindTexture(GL_TEXTURE_2D, texture[0]); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR); //GL_BGRを指定 gluBuild2DMipmaps(GL_TEXTURE_2D, 3, image1->width,image1->height, GL_BGR,GL_UNSIGNED_BYTE,image1->imageData); cvReleaseImage( &image1 ); //IplImageの解放 return true; };
【メモ】
ヘッダファイルによっては、「GL_BGR」が定義されていない場合がある。
そのような場合は、例えば以下のようにして、色を入れ替えて「GL_RGB」を指定すればよい。
cvCvtColor(image1,image1,CV_BGR2RGB);
サンプル >> OpenCVとテクスチャ作成