2. flip

程式範例

  1. 翻轉處理利用flip函數實現,能夠水平翻轉,垂直翻轉,水平垂直同時翻轉。

  2. 其語法結構為以下:

void cv::flip(
                InputArray src, 
                OutputArray dst, 
                int flipCode);

flipCode

意義

1

水平翻轉

0

垂直翻轉

-1

水平垂直翻轉

水平翻轉

#include <opencv2/opencv.hpp>  

int main(int argc, char** argv) 
{  
    cv::Mat srcImage, dstImage;  
    srcImage = cv::imread("original_me.jpg", 1);  
    dstImage = cv::imwrite("modify_me.jpg", 1);
    cv::namedWindow("Display Image", cv::WINDOW_NORMAL);  
    cv::imshow("Original Image", srcImage); 
    cv::flip(srcImage, dstImage, 1);
    cv::imshow("Modify Image", dstImage); 
    cv::waitKey(0); 
     
    return 0;  
} 

垂直翻轉

#include <opencv2/opencv.hpp>  

int main(int argc, char** argv) 
{  
    cv::Mat srcImage, dstImage;  
    srcImage = cv::imread("original_me.jpg", 0);  
    dstImage = cv::imwrite("modify_me.jpg", 1);
    cv::namedWindow("Display Image", cv::WINDOW_NORMAL);  
    cv::imshow("Original Image", srcImage); 
    cv::flip(srcImage, dstImage, 0);
    cv::imshow("Modify Image", dstImage); 
    cv::waitKey(0); 
     
    return 0;  
} 

水平垂直

#include <opencv2/opencv.hpp>  

int main(int argc, char** argv) 
{  
    cv::Mat srcImage, dstImage;  
    srcImage = cv::imread("original_me.jpg", 0);  
    dstImage = cv::imwrite("modify_me.jpg", 1);
    cv::namedWindow("Display Image", cv::WINDOW_NORMAL);  
    cv::imshow("Original Image", srcImage); 
    cv::flip(srcImage, dstImage, -1);
    cv::imshow("Modify Image", dstImage); 
    cv::waitKey(0); 
     
    return 0;  
} 

Last updated

Was this helpful?