画像の複数表示
Posted: 2010年12月03日(金) 17:23
C++でOpenCVの勉強をしていてわからないことがあったので質問しました。
同一画像を同一ウインドウに同時に表示するプログラムを作成したいと思い、以下のようなプログラムを
試しに作ってみたのですが画像が1枚しか表示されませんでした。
ちなみに画像のサイズは300*450です。
原因が分からず困っています。よろしくお願いします。
同一画像を同一ウインドウに同時に表示するプログラムを作成したいと思い、以下のようなプログラムを
試しに作ってみたのですが画像が1枚しか表示されませんでした。
ちなみに画像のサイズは300*450です。
原因が分からず困っています。よろしくお願いします。
#include <stdio.h>
#include <math.h>
#include <cv.h>
#include <highgui.h>
int main(){
IplImage* c3 = cvLoadImage("face2.bmp", CV_LOAD_IMAGE_COLOR);
IplImage* faceImg;
int WIDTH = c3->width;
int HEIGHT = c3->height;
c3 = cvLoadImage("face2.bmp", CV_LOAD_IMAGE_COLOR);
CvRect roi = cvRect(0, 0, 0, 0);
faceImg = cvCreateImage(cvSize(WIDTH*3, HEIGHT*3), IPL_DEPTH_8U, 3);
cvZero(faceImg);
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
roi.x = j * WIDTH;
roi.y = i * HEIGHT;
roi.width = c3->width;
roi.height = c3->height;
cvSetImageROI(faceImg, roi);
cvCopy(c3, faceImg);
//cvResetImageROI(faceImg);
}
}
//cvNamedWindow("Skinfilter",CV_WINDOW_AUTOSIZE);
cvShowImage("image",faceImg);
cvWaitKey(0);
cvResetImageROI(faceImg);
return(0);
}