使用opencv拉伸图像扩大分辨率示例

 更新时间:2014年04月11日 10:52:54   作者:  
这篇文章主要介绍了使用opencv拉伸图像扩大分辨率示例,需要的朋友可以参考下

使用OPENCV图像处理库,拉伸图像扩大分辨率

复制代码 代码如下:

//缩放图像文件
#include <opencv2/opencv.hpp>
using namespace std;
//隐藏控制台窗口
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
int main()
{
 const char *pstrImageName = "airplane.jpg";
 const char *pstrSaveImageName = "airplane缩放图.jpg";
 const char *pstrWindowsSrcTitle = "原图";
 const char *pstrWindowsDstTitle = "缩放图";

 double fScale = 2;//缩放倍数
 CvSize czSize; //目标图像尺寸

 //从文件中读取图像 
 IplImage *pSrcImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);
 IplImage *pDstImage = NULL; 

 //计算目标图像大小
 czSize.width = pSrcImage->width * fScale;
 czSize.height = pSrcImage->height * fScale;

 //创建图像并缩放
 pDstImage = cvCreateImage(czSize, pSrcImage->depth, pSrcImage->nChannels);
 cvResize(pSrcImage, pDstImage, CV_INTER_AREA);
 

 //创建窗口
 cvNamedWindow(pstrWindowsSrcTitle, CV_WINDOW_AUTOSIZE);
 cvNamedWindow(pstrWindowsDstTitle, CV_WINDOW_AUTOSIZE);

 //在指定窗口中显示图像
 cvShowImage(pstrWindowsSrcTitle, pSrcImage);
 cvShowImage(pstrWindowsDstTitle, pDstImage);

 //等待按键事件
 cvWaitKey();

 //保存图片
 cvSaveImage(pstrSaveImageName, pDstImage);

 cvDestroyWindow(pstrWindowsSrcTitle);
 cvDestroyWindow(pstrWindowsDstTitle);
 cvReleaseImage(&pSrcImage);
 cvReleaseImage(&pDstImage);
 return 0;
}

相关文章

  • C++使用string的大数取模运算(5)

    C++使用string的大数取模运算(5)

    这篇文章主要为大家详细介绍了C++使用string的大数取模运算,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • 仿现代C++智能指针实现引用计数

    仿现代C++智能指针实现引用计数

    这篇文章主要为大家详细介绍了如何仿现代C++智能指针实现引用计数,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下
    2024-03-03
  • 深入了解C++优先队列(priority_queue)的使用方法

    深入了解C++优先队列(priority_queue)的使用方法

    在计算机科学中,优先队列是一种抽象数据类型,它与队列相似,但是每个元素都有一个相关的优先级。C++中的优先队列是一个容器适配器(container adapter),它提供了一种在元素之间维护优先级的方法。本文带你深入了解C++优先队列的使用方法,需要的可以参考下
    2023-05-05
  • OpenCV实现二值图像的边缘光滑处理

    OpenCV实现二值图像的边缘光滑处理

    这篇文章主要为大家详细介绍了OpenCV实现二值图像的边缘光滑处理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • C语言巧用二分查找实现猜数游戏

    C语言巧用二分查找实现猜数游戏

    二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列,本篇文章教你用二分查找编写猜数字游戏
    2022-02-02
  • OpenCV 通过Mat遍历图像的方法汇总

    OpenCV 通过Mat遍历图像的方法汇总

    对图像中的所有点或特殊点进行运算,所以遍历图像就显得很重要,如何高效的遍历图像是一个很值得探讨的问题,本文给大家带来了多种方法操作OpenCV 通过Mat遍历图像,感兴趣的朋友一起看看吧
    2022-02-02
  • 老程序员教你一天时间完成C语言扫雷游戏

    老程序员教你一天时间完成C语言扫雷游戏

    这篇文章主要为大家详细介绍了C语言实现扫雷游戏初级版,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Atom安装配置C/C++详细教程

    Atom安装配置C/C++详细教程

    Atom (一款开源的代码编辑器)是github专门为程序员推出的一个跨平台文本编辑器。这篇文章主要介绍了Atom安装配置C/C++教程,需要的朋友可以参考下
    2020-05-05
  • C语言模拟实现学生学籍管理系统

    C语言模拟实现学生学籍管理系统

    这篇文章主要为大家详细介绍了C语言模拟实现学生学籍管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • Qt实现SqlRelationalTable关联表组件

    Qt实现SqlRelationalTable关联表组件

    在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍SqlRelationalTable关联表组件的常用方法及灵活运用,感兴趣的可以了解一下
    2023-12-12

最新评论