當前位置:
首頁 >
OpenCV图像翻转:flip()函数的使用
發布時間:2024/9/21
38
豆豆
生活随笔
收集整理的這篇文章主要介紹了
OpenCV图像翻转:flip()函数的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
功能描述
flip()函數翻轉一個二維的矩陣,包含垂直翻轉,水平翻轉,以及垂直水平翻轉,
函數 cv::flip 以以下三種方式之一翻轉矩陣(行和列索引從0開始):
函數使用示例方案如下:
-
flipCode =0,垂直翻轉圖像,是源圖像的top-left(左上)和bottom-left(左下)的交換,也就是說左上變成了左下,左下變成了左上,這是一個典型在的 Microsoft Windows操作系統里的視頻處理操作。
-
flipCode > 0,圖像的水平翻轉,隨后的水平位移和絕對方差計算,是為了檢查圖像是否y軸對稱。
-
(flipCode < 0),圖像同時垂直翻轉和水平翻轉,是為了以后的位移和絕對方差計算去檢查圖像是否是中心對稱。
-
反轉點陣隊列的順序(flipCode > 0 或flipCode == 0).
原型
CV_EXPORTS_W void flip(InputArray src, OutputArray dst, int flipCode);參數釋義
-
參數 src 輸入矩陣.
-
參數 dst 輸出矩陣,和輸入矩陣一樣大小。
-
參數 flipCode 一個標志,決定怎么翻轉矩陣; 0 是圍繞著x軸翻轉,正直是圍繞著y軸翻轉,負值是圍繞著兩個軸一起翻轉。 around both axes.
-
參考 transpose , repeat , completeSymm
源碼示例
#include <iostream> #include <opencv2/opencv.hpp> ? int main() {cv::Mat image = cv::imread("D:\\OpenCVtest\\images\\juice.png");cv::Mat image_fliped;cv::flip(image, image_fliped, 0); ?cv::imshow("原圖 juice", image);cv::imshow("垂直翻轉 圍繞x軸 juice", image_fliped); ?cv::flip(image, image_fliped, 1);cv::imshow("水平翻轉 圍繞Y軸 juice", image_fliped); ?cv::flip(image, image_fliped, -1);cv::imshow("水平翻轉、垂直翻轉同時 圍繞X、Y軸 juice", image_fliped); ?cv::waitKey(0);return 0; }運行結果
垂直翻轉 圍繞x軸:
?
水平翻轉 圍繞Y軸
?
水平翻轉、垂直翻轉同時 圍繞X、Y軸
?
總結
以上是生活随笔為你收集整理的OpenCV图像翻转:flip()函数的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: opencv透视变换:GetPerspe
- 下一篇: OpenCV数据类型转换:cnvertT