JS技术

【OpenCV入门教程之三】 图像的载入,显示和输出 一站式完全解析 - 【C++游戏编程】微软最有价值专家—毛星云(浅(3)

字号+ 作者:H5之家 来源:H5之家 2015-12-13 10:14 我要评论( )

//-----------------------------------【程序说明】----------------------------------------------// 程序名称::【OpenCV入门教程之三】图像的载入,显示与输出 一站式完全解析 博文配套源码// VS2010版 OpenCV

 

//-----------------------------------【程序说明】---------------------------------------------- // 程序名称::【OpenCV入门教程之三】图像的载入,显示与输出 一站式完全解析 博文配套源码 // VS2010版 OpenCV版本:2.4.8 // 2014年3月5日 Create by 浅墨 // 描述: 图像的载入,显示与输出 一站式剖析 配套源码 // 图片素材出处:dota2原画圣堂刺客 dota2 logo 动漫人物 //------------------------------------------------------------------------------------------------ #include<opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> using namespace cv; int main( ) { //-----------------------------------【一、图像的载入和显示】-------------------------------------- // 描述:以下三行代码用于完成图像的载入和显示 //-------------------------------------------------------------------------------------------------- Mat girl=imread("girl.jpg"); //载入图像到Mat namedWindow("【1】动漫图"); //创建一个名为 "【1】动漫图"的窗口 imshow("【1】动漫图",girl);//显示名为 "【1】动漫图"的窗口 //-----------------------------------【二、初级图像混合】-------------------------------------- // 描述:二、初级图像混合 //----------------------------------------------------------------------------------------------- //载入图片 Mat image= imread("dota.jpg",199); Mat logo= imread("dota_logo.jpg"); //载入后先显示 namedWindow("【2】原画图"); imshow("【2】原画图",image); namedWindow("【3】logo图"); imshow("【3】logo图",logo); //定义一个Mat类型,用于存放,图像的ROI Mat imageROI; //方法一 imageROI=image(Rect(800,350,logo.cols,logo.rows)); //方法二 //imageROI=image(Range(350,350+logo.rows),Range(800,800+logo.cols)); //将logo加到原图上 addWeighted(imageROI,0.5,logo,0.3,0.,imageROI); //显示结果 namedWindow("【4】原画+logo图"); imshow("【4】原画+logo图",image); //-----------------------------------【三、图像的输出】-------------------------------------- // 描述:将一个Mat图像输出到图像文件 //----------------------------------------------------------------------------------------------- //输出一张jpg图片到工程目录下 imwrite("我喜欢打dota2 by浅墨.jpg",image); waitKey(); return 0; }



运行这个程序,会弹出四个我们在OpenCV中创建的窗口。

下面是运行截图。首先是图像载入和显示的演示,我们载入了一张动漫人物图:

 

 


接着是载入一张dota2原画和dota2logo图,为图像融合做准备:

 


logo图:


最终,经过处理,得到dota2原画+logo的融合,并输出一张名为我喜欢打dota2 by浅墨.jpg的图片到工程目录下。

 

 

 嗯,本篇文章到这里就基本结束了,最后放出本篇文章配套示例程序的下载地址。


本篇文章的配套源代码请点击这里下载:



【浅墨OpenCV入门教程之三】图像的载入,显示和输出配套源代码下载


OK,本节的内容大概就是这些,我们下篇文章见:)

 

  • 上一篇【OpenCV入门教程之二】 一览众山小:OpenCV 2.4.8 or OpenCV 2.4.9组件结构全解析
  • 下一篇【OpenCV入门教程之四】 ROI区域图像叠加&初级图像混合 全剖析
  • 顶 92 踩 0

    我的同类文章

    猜你在找

    查看评论

    * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

    个人资料


    zhmxy555

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 正式使用opencv里的训练和检测 - opencv_createsamples、opencv_traincascade

      正式使用opencv里的训练和检测 - opencv_createsamples、opencv_trai

      2015-12-15 08:44

    • 2015年最新Android基础入门教程目录(完结版) - coder-pig的猪栏 - 博客频道 - CSDN.NET

      2015年最新Android基础入门教程目录(完结版) - coder-pig的猪栏 - 博

      2015-12-14 15:12

    • JavaScript入门教程(二)_javascript教程教程

      JavaScript入门教程(二)_javascript教程教程

      2015-10-10 14:25

    • JavaScript入门教程(五)_javascript教程教程

      JavaScript入门教程(五)_javascript教程教程

      2015-10-10 14:21

    网友点评
    e