我正在用OpenCV編程一些圖像轉換代碼,我不知道如何創建圖像內存緩衝區來在每次迭代中加載圖像。我有迭代次數(maxImNumber),我有一個輸入圖像。在每個循環中,程序都必須創建被調整大小和修改後的輸入圖像的圖像。這是一些基本的代碼(概念)。使用OpenCV在循環中創建新圖像
for (int imageIndex = 0; imageIndex < maxImNumber; imageIndex++){
cvCopy(inputImage, images[imageIndex], 0);
cvReleaseImage(&inputImage);
images[imageIndex+1] = cvCreateImage(cvSize((image[imageIndex]->width)/2, image[imageIndex]->height), IPL_DEPTH_8U, 1);
for (i=1; i < image[imageIndex]->height; i++) {
index = 0; //
for(j=0; j < image[imageIndex]->width ; j=j+2){
// doing some basic matematical operation on image content and store it to new image
images[imageIndex+1][i][index] = (image[imageIndex][i][j] + image[imageIndex][i][j+2])/2;
index++
}
}
inputImage = cvCreateImage(cvSize((image[imageIndex+1]->width), image[imageIndex]->height), IPL_DEPTH_8U, 1);
cvCopy(images[imageIndex+1], inputImage, 0);
}
有人可以請解釋我該如何創建這個圖像緩衝區(圖像[])併爲它分配內存。我怎樣才能訪問這個緩衝區中的任何圖像?
非常感謝您提前!
開始使用OpenCV的C++ API! – ypnos 2011-01-07 15:52:15