zoukankan      html  css  js  c++  java
  • 图像的尺寸调整

    本次使用opencv中的API函数resize()和pyrup()和pyrdown()进行图像尺寸的放大和缩小。

    程序的功能说明如下:

      按键的功能 按下1键:用resize()把图片放大
         按下2键 :用resize()把图片缩小
      按下3键: 用pyrup()把图片放大
      按下4键:用pyrdown()把图片缩小

    #include<opencv2/opencv.hpp>
    #include<opencv2/highgui/highgui.hpp>
    #include<opencv2/imgproc/imgproc.hpp>
    
    using namespace std;
    using namespace cv;
    
    Mat src, temp, dst;
    static void ShowHelpText();
    
    int main()
    {   
        //显示原图
        src = imread("D:/meinv.jpg");
        namedWindow("原图", CV_WINDOW_AUTOSIZE);
        imshow("原图", src);
    
        //参数赋值
        temp = src;
        dst = temp;
        
        //按键的功能 按下1键:用resize()把图片放大
                   // 按下2键 :用resize()把图片缩小
                  //按下3键: 用pyrup()把图片放大
                  //按下4键:用pyrdown()把图片缩小
        int key = 0;
        while (1)
        {  
            key = waitKey(9);   //读取键值
            switch (key)
            {
                case 27:      //按下ESC,退出程序
                    return 0;
                    break;
                case '1':
                    resize(temp, dst, Size(temp.cols * 2, temp.rows * 2));
                    printf("按键1按下,将图片放大
    ");
                    break;
    
                case '2':
                    resize(temp, dst, Size(temp.cols / 2, temp.rows / 2));
                    printf("按键2按下,将图片缩小
    ");
                    break;
    
                case '3':
                    pyrUp(temp, dst, Size(temp.cols * 2, temp.rows * 2));
                    printf("按键3按下,将图片放大
    ");
                    break;
    
                case '4':
                    pyrDown(temp, dst, Size(temp.cols / 2, temp.rows / 2));
                    printf("按键4按下,将图片缩小
    ");
                    break;
            }
            imshow("原图", dst);
            temp = dst;
        }
        
        return 0;
    }

    由于放大和缩小变换是在上一幅图像的操作基础上操作的,所以图像会变得越来越模糊。

    显示效果:

  • 相关阅读:
    python使用消息队列RabbitMq(入门)
    python Condition类(锁)
    python锁
    python多线程的几种情形分析-三种情况
    git基本使用
    python学习笔记之数据类型、字符编码、文件处理
    NOIP2018提高组模拟题(五)
    10.28模拟赛
    差分+树状数组【p4868】Preprefix sum
    线段树【p2706】贪婪大陆
  • 原文地址:https://www.cnblogs.com/carlber/p/9661354.html
Copyright © 2011-2022 走看看