資源簡介
淺墨出品,分享精神至上~
利用OpenCV載入了dota2英雄劍圣的原畫和dota2 logo,進(jìn)行多通道圖像混合操作。
博文《【OpenCV入門教程之五】 分離顏色通道&多通道圖像混合》的配套詳細(xì)注釋源代碼。
博文鏈接:
http://blog.csdn.net/poem_qianmo/article/details/21176257
1.Release文件夾下的exe可以直接看到運行結(jié)果.
2.源代碼運行需要進(jìn)行OpenCV+VS開發(fā)環(huán)境的配置。可以參看我寫的配置博文:
http://blog.csdn.net/poem_qianmo/article/details/19809337
3.寫作當(dāng)前代碼時配套使用的OpenCV版本: 2.4.8
4.推薦代碼結(jié)合博文一起看,學(xué)習(xí)效果更佳。
by淺墨

代碼片段和文件信息
//-----------------------------------【程序說明】----------------------------------------------
//??程序名稱::【OpenCV入門教程之四】分離顏色通道&多通道圖像混合???配套源碼?
//?VS2010版???OpenCV版本:2.4.8
// ?2014年3月13?日?Create?by?淺墨
//??圖片素材出處:dota2原畫?dota2logo??
// ?配套博文鏈接:http://blog.csdn.net/poem_qianmo/article/details/20537737
// ?淺墨的微博:@淺墨_毛星云
//------------------------------------------------------------------------------------------------
//-----------------------------------【頭文件包含部分】---------------------------------------
// 描述:包含程序所依賴的頭文件
//----------------------------------------------------------------------------------------------?????????????????????????????????????????????????????????????????????????????????????
#include?
#include?
#include?
//-----------------------------------【命名空間聲明部分】---------------------------------------
// 描述:包含程序所使用的命名空間
//-----------------------------------------------------------------------------------------------???
using?namespace?cv;
using?namespace?std;
//-----------------------------------【全局函數(shù)聲明部分】--------------------------------------
// 描述:全局函數(shù)聲明
//-----------------------------------------------------------------------------------------------
bool??MultiChannelBlending();
//-----------------------------------【main(?)函數(shù)】--------------------------------------------
// 描述:控制臺應(yīng)用程序的入口函數(shù),我們的程序從這里開始
//-----------------------------------------------------------------------------------------------
int?main(???)
{
system(“color?5E“);
if(MultiChannelBlending(?))
{
cout< }
waitKey(0);
return?0;
}
//-----------------------------【MultiChannelBlending(?)函數(shù)】--------------------------------
// 描述:多通道混合的實現(xiàn)函數(shù)
//-----------------------------------------------------------------------------------------------
bool??MultiChannelBlending()
{
//【0】定義相關(guān)變量
Mat?srcImage;
Mat?logoImage;
vector?channels;
Mat??imageBlueChannel;
//=================【藍(lán)色通道部分】=================
// 描述:多通道混合-藍(lán)色分量部分
//============================================
//?【1】讀入圖片
logoImage=?imread(“dota_logo.jpg“0);
srcImage=?imread(“dota_jugg.jpg“);
if(?!logoImage.data?)?{?printf(“Oh,no,讀取logoImage錯誤~!?\n“);?return?false;?}
if(?!srcImage.data?)?{?printf(“Oh,no,讀取srcImage錯誤~!?\n“);?return?false;?}
//【2】把一個3通道圖像轉(zhuǎn)換成3個單通道圖像
split(srcImagechannels);//分離色彩通道
//【3】將原圖的藍(lán)色通道引用返回給imageBlueChannel,注意是引用,相當(dāng)于兩者等價,修改其中一個另一個跟著變
imageBlueChannel=?channels.at(0);
//【4】將原圖的藍(lán)色通道的(500250)坐標(biāo)處右下方的一塊區(qū)域和logo圖進(jìn)行加權(quán)操作,將得到的混合結(jié)果存到imageBlueChannel中
addWeighted(imageBlueChannel(Rect(500250logoImage.colslogoImage.rows))1.0
logoImage0.50imageBlueChannel(Rect(500250logoImage.colslogoImage.rows)));
//【5】將三個單通道重新合并成一個三通道
merge(channelssrcImage);
//【6】顯示效果圖
namedWindow(“?<1>游戲原畫+logo藍(lán)色通道?by淺墨“);
imshow(“?<1>游戲原畫+logo藍(lán)色通道?by淺墨“srcImage);
//=================【綠色通道部分】=================
// 描述:多通道混合-綠色分量部分
//==================
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????49680??2014-03-09?19:33??OpenCVdemo3\OpenCVdemo3\dota_jugg.jpg
?????文件??????43709??2014-02-26?09:28??OpenCVdemo3\OpenCVdemo3\dota_logo.jpg
?????文件???????5718??2014-03-13?16:12??OpenCVdemo3\OpenCVdemo3\main.cpp
?????文件???????3921??2014-03-09?23:05??OpenCVdemo3\OpenCVdemo3\OpenCVdemo3.vcxproj
?????文件????????942??2014-03-09?23:05??OpenCVdemo3\OpenCVdemo3\OpenCVdemo3.vcxproj.filters
?????文件????????143??2014-03-09?23:02??OpenCVdemo3\OpenCVdemo3\OpenCVdemo3.vcxproj.user
?????文件????2098688??2013-12-29?12:09??OpenCVdemo3\OpenCVdemo3\opencv_core248.dll
?????文件????2080768??2013-12-29?12:10??OpenCVdemo3\OpenCVdemo3\opencv_highgui248.dll
?????文件????1905664??2013-12-29?12:10??OpenCVdemo3\OpenCVdemo3\opencv_imgproc248.dll
?????文件????????674??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\cl.command.1.tlog
?????文件??????????2??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\cl.read.1.tlog
?????文件????????230??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\cl.write.1.tlog
?????文件???????2262??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\li
?????文件????1704035??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\main.obj
?????文件????????381??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\OpenCVdemo3.exe.intermediate.manifest
?????文件?????????65??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\OpenCVdemo3.lastbuildstate
?????文件???????2574??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\OpenCVdemo3.log
?????文件?????757760??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release\vc100.pdb
?????文件????????900??2014-03-09?23:02??OpenCVdemo3\OpenCVdemo3.sln
????..A..H.?????17408??2014-03-12?23:00??OpenCVdemo3\OpenCVdemo3.suo
?????文件??????49680??2014-03-09?19:33??OpenCVdemo3\Release\dota_jugg.jpg
?????文件??????43709??2014-02-26?09:28??OpenCVdemo3\Release\dota_logo.jpg
?????文件??????17920??2014-03-13?16:13??OpenCVdemo3\Release\OpenCVdemo3.exe
?????文件?????953344??2014-03-13?16:13??OpenCVdemo3\Release\OpenCVdemo3.pdb
?????文件????2098688??2013-12-29?12:09??OpenCVdemo3\Release\opencv_core248.dll
?????文件????2080768??2013-12-29?12:10??OpenCVdemo3\Release\opencv_highgui248.dll
?????文件????1905664??2013-12-29?12:10??OpenCVdemo3\Release\opencv_imgproc248.dll
?????目錄??????????0??2014-03-13?16:13??OpenCVdemo3\OpenCVdemo3\Release
?????目錄??????????0??2014-03-13?17:12??OpenCVdemo3\OpenCVdemo3
?????目錄??????????0??2014-03-13?17:12??OpenCVdemo3\Release
............此處省略4個文件信息
- 上一篇:Code_Note_2
- 下一篇:手機(jī)繳費系統(tǒng)
評論
共有 條評論