cpp opencv 图像旋转-90度
时间: 2024-08-13 07:02:20 浏览: 64
在 OpenCV (计算机视觉库) 中,如果你想要将一个图像逆时针旋转90度,你可以使用 `cv::rotate()` 函数。以下是一个简单的步骤:
```cpp
#include <opencv2/opencv.hpp>
#include <opencv2/imgproc.hpp>
// 加载图片
cv::Mat img = cv::imread("input.jpg", cv::IMREAD_COLOR); // 使用适当路径替换 "input.jpg"
// 检查图片是否加载成功
if (!img.data)
{
std::cout << "Could not open or find the image." << std::endl;
return;
}
// 设置旋转中心点,通常选择原点(0,0),如果图片有背景,可以设置在图片的中心
cv::Point2f center(img.cols / 2.0, img.rows / 2.0);
// 计算旋转矩阵
cv::Mat rotationMatrix = getRotationMatrix2D(center, -90, 1.0); // -90度旋转
// 旋转图片
cv::Mat rotated_img;
cv::warpAffine(img, rotated_img, rotationMatrix, img.size());
// 显示原始图和旋转后的图
cv::imshow("Original Image", img);
cv::imshow("Rotated Image", rotated_img);
// 等待用户按键,然后关闭窗口
cv::waitKey(0);
cv::destroyAllWindows();
```
这里我们首先读取图像,然后创建一个旋转矩阵,接着使用 `warpAffine()` 函数实际应用旋转,最后显示原始图像和旋转后的图像。
阅读全文