作者:翟天保Steven
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处
函数原型
void flip(InputArray src, OutputArray dst, int flipCode);
参数说明
- InputArray类型的src,输入图像,即源图像,Mat类的对象即可。图像类型一般是CV_8U、CV_16U、CV_16S、CV_32F、CV_64F之一。
- OutputArray类型的dst,输出图像,也是目标图像,和输入图像一致的类型和尺寸。
- int型的filpCode,设置翻转类型的参数。filpCode大于0时,代表水平翻转,即沿Y轴翻转;等于0时,代表垂直翻转,即沿X轴翻转;小于0时,代表对角翻转,即沿X和Y轴一起翻转。
注意:OpenCV中,X轴是横轴,即列数;Y轴是竖轴,即行数。Y行X列。别搞反哦~
测试代码
#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
int main()
{
// 读取图片
Mat src = imread("tangsan.jpg");//imread()函数载入图像
// 判断是否为空
if (src.empty())
{
cout << "Can not load image\\n" << endl;//
return -1;
}
//显示图像
imshow("[Original image]filp", src);//imshow()函数显示图像
Mat des_x,des_y,des_xy;
flip(src, des_y, 1);//1代表水平翻转,即沿Y轴翻转
flip(src, des_x, 0);//0代表垂直翻转,即沿X轴翻转
flip(src, des_xy,-1);//-1代表垂直和水平方向同时旋转,即沿X和Y轴翻转
imshow("[Flip along Y]filp", des_y);//imshow()函数显示图像
imshow("[Flip along X]filp", des_x);//imshow()函数显示图像
imshow("[Flip along X&Y]filp", des_xy);//imshow()函数显示图像
waitKey();
return 0;
}
测试效果
沿Y轴翻转:
沿X轴翻转:
沿XY轴翻转:
唐三小舞永远的神!
如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容