#include <stdio.h>
#include <opencv2\opencv.hpp>
int main(int argc ,char* argv[])
{
//读取图像
IplImage* src1 = cvLoadImage("2.jpg");
//创建两个图像空间
IplImage* srcX = cvCreateImage(cvGetSize(src1),8,3);
IplImage* srcY = cvCreateImage(cvGetSize(src1),8,3);
IplImage* srcZ = cvCreateImage(cvGetSize(src1),8,3);
//flip_mode为0时,图像绕X轴旋转
cvFlip(src1,srcX,0);
//flip_mode为正值时,图像绕Y轴旋转
cvFlip(src1,srcY,1);
//flip_mode为负值时,图像绕X轴和Y轴旋转,即原点对称
cvFlip(src1,srcZ,-1);
//创建窗口并显示
cvNamedWindow("src",1);
cvShowImage("src",src1);
cvNamedWindow("cvFlipX",1);
cvShowImage("cvFlipX",srcX);
cvNamedWindow("cvFlipY",1);
cvShowImage("cvFlipY",srcY);
cvNamedWindow("cvFlipZ",1);
cvShowImage("cvFlipZ",srcZ);
cvWaitKey(0);
cvReleaseImage(&src1);
cvDestroyWindow("src");
cvReleaseImage(&srcX);
cvDestroyWindow("cvFlipX");
cvReleaseImage(&srcY);
cvDestroyWindow("cvFlipY");
cvReleaseImage(&srcZ);
cvDestroyWindow("cvFlipZ");
return 0;
}
原图像:
x轴旋转:
y轴旋转:
原点旋转: