/* * 功能:BYTE组转IplImage,并可实现图像的上下倒置 *入参:pImg,BYTE数组指针。byteSize BYTE数组大小,width图像宽,height图像高 *返回:转化后的IplImage指针 */ IplImage * Byte2IplImg( BYTE *pImg,long byteSize,int width,int height) { 正常转化 IplImage *frame =0; IplImage *ds_frame; int stride = (width * sizeof( RGBTRIPLE ) + 3) & -4; ds_frame=cvCreateImageHeader(cvSize(width,height),IPL_DEPTH_8U,3); cvSetData(ds_frame,pImg,stride); return ds_frame; // 转化并倒置 // IplImage *frame =0; // IplImage *ds_frame; // int stride = (width * sizeof( RGBTRIPLE ) + 3) & -4; // ds_frame=cvCreateImageHeader(cvSize(width,height),IPL_DEPTH_8U,3); // cvSetData(ds_frame,pImg,stride); // frame=ds_frame; // /// // IplImage *dst =0; // dst = cvCloneImage (frame); // int count=0; // float m[6]; // CvMat M = cvMat (2, 3, CV_32F, m); // int w = frame->width; // int h = frame->height; // m[0] = (float) (cos (-90 * 2 * CV_PI / 180.)); // m[1] = (float) (sin (-90 * 2 * CV_PI / 180.)); // m[3] = -m[1]; // m[4] = m[0]; // m[2] = w * 0.5f; // m[5] = h * 0.5f; // cvZero (dst); // cvGetQuadrangleSubPix (frame, dst, &M); // return dst; // }