OpenCV C++进行图像缩放的方法

发布时间:2024-08-26 18:43:36 作者:小樊
来源:亿速云 阅读:219

在 OpenCV 中,可以使用 resize() 函数来对图像进行缩放

#include <opencv2/opencv.hpp>
#include<iostream>

int main(int argc, char** argv) {
    // 读取图像
    cv::Mat src_image = cv::imread("input.jpg");

    if (!src_image.data) {
        std::cout << "No image data."<< std::endl;
        return -1;
    }

    // 设置缩放因子
    double scale_factor = 0.5;

    // 计算缩放后的图像尺寸
    int width = static_cast<int>(src_image.cols * scale_factor);
    int height = static_cast<int>(src_image.rows * scale_factor);

    // 创建目标图像
    cv::Mat dst_image = cv::Mat::zeros(height, width, src_image.type());

    // 调整图像大小
    cv::resize(src_image, dst_image, cv::Size(width, height));

    // 显示原始图像和缩放后的图像
    cv::imshow("Original Image", src_image);
    cv::imshow("Resized Image", dst_image);

    // 等待按键,然后关闭窗口
    cv::waitKey(0);
    cv::destroyAllWindows();

    return 0;
}

在这个示例中,我们首先读取一张名为 “input.jpg” 的图像。接下来,我们设置缩放因子(例如,0.5 表示将图像缩小到原始大小的一半)。然后,我们根据缩放因子计算缩放后的图像尺寸,并创建一个新的 cv::Mat 对象作为目标图像。最后,我们使用 resize() 函数将原始图像缩放到目标图像,并显示两个图像。当用户按下任意键时,程序将关闭窗口并退出。

推荐阅读:
  1. 基于Opencv怎么实现双目摄像头拍照程序
  2. C++如何利用opencv实现人脸检测

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c++

上一篇:OpenCV库在C++中的图像处理优化

下一篇:OpenCV与C++结合在VR中的应用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》