1. 截取其中一部分的操作可以为:
CvRect roi = cvRect(x1, y1, width1, height1);
inputImage = cvLoadImage(filename);
cvSetImageROI(inputImage, roi);
IplImage* temp = cvCreateImage(cvSize(width1, height1), inputImage->depth, inputImage->nChannels);
cvCopy(inputImage, temp);
2. 注意cvResetImageROI,cvReleaseImage
3. 遍历图像:千万千万注意先height再width!
for(int i = 0 ; i < height; i++)
{
uchar* ptr = (uchar*)(inputImage->imageData + i * inputImage->widthStep);
for(int j = 0 ; j < width; j++)
{
int value = ptr[3*j];
sumgreen += value;
}
}
4. 转灰度图
IplImage* gray = cvCreateImage(cvGetSize(inputImage),inputImage->depth,1);
cvCvtColor(inputImage, gray, CV_BGR2GRAY);