資源簡介
對兩幅遙感影像進行非加權融合,一副高分辨率但是是全色,一副低分辨率但是是多光譜
代碼片段和文件信息
#include?“opencv.hpp“
#include??
#include?
#include??
#include?“math.h“
using?namespace?std;
using?namespace?cv;
extern?“C“?__declspec(dllexport)void?non_weighted_merge();
Mat?_merge2(Mat?high_picMat?mul_picint?heightint?width)
{
Mat?output(heightwidthCV_8UC3);
unsigned?char?*?pBmp?=?output.data;
unsigned?char?*?pmul?=?mul_pic.data;
unsigned?char?*?ph?=?high_pic.data;
for?(int?i=0;i {
for?(int?j=0;j {
if?(pmul[(i*width+j)*3+0]==0&&pmul[(i*width+j)*3+1]==0&&pmul[(i*width+j)*3+2]==0)
{
pBmp[(i*width+j)*3+0]?=ph[(i*width+j)*3+0];???//B
pBmp[(i*width+j)*3+1]?=?ph[(i*width+j)*3+1];??//G
pBmp[(i*width+j)*3+2]?=ph[(i*width+j)*3+2];????//R
}
else{
pBmp[(i*width+j)*3+0]?=0.5*(pmul[(i*width+j)*3+0]+ph[(i*width+j)*3+0]);???//B
pBmp[(i*width+j)*3+1]?=?0.5*(pmul[(i*width+j)*3+1]+ph[(i*width+j)*3+0]);??//G
pBmp[(i*width+j)*3+2]?=0.5*(pmul[(i*width+j)*3+2]+ph[(i*width+j)*3+0]);????//R
}
}
}
return?output;
}
void?non_weighted_merge()
{
Mat?high_pic=imread(“sp_yc.bmp“1);
Mat?mul_pic_1=imread(“tm1.bmp“0);
Mat?mul_pic_3=imread(“tm3.bmp“0);
Mat?mul_pic_4=imread(“tm4.bmp“0);
Mat?mul_pic;
Mat?channel[3];
channel[0]=mul_pic_1;
channel[1]=mul_pic_3;
channel[2]=mul_pic_4;
merge(channel3mul_pic);
//imshow(“1“mul_pic);
Mat?dstImage_mul;
resize(mul_picdstImage_mulSize(mul_pic.cols*3mul_pic.rows*3));
//imshow(“2“dstImage_mul);
Mat?img(15801500CV_8UC3);
unsigned?char?*pdata=img.data;
unsigned?char?*pdstImage_mul=dstImage_mul.data;
//初始化
for?(int?i=0;i {
for?(int?j=0;j {
img.at(ij)?=0;?
}
}
for?(int?i=0;i<80;i++)
{
for?(int?j=0;j<1341;j++)
{
img.at(ij+84)?=dstImage_mul.at(ij);?
}
}
for?(int?i=0;i<1500;i++)
{
for?(int?j=0;j<1500;j++)
{
img.at(i+80j)?=high_pic.at(ij);?
}
}
Mat?high_com(14801338CV_8UC3);
Mat?mul_com(14801338CV_8UC3);
for?(int?i=0;i<1480;i++)
{
for?(int?j=0;j<1338;j++)
{
high_com.at(ij)?=high_pic.at(ij+84);
mul_com.at(ij)?=dstImage_mul.at(i+80j);
}
}
Mat?output=_merge2(high_commul_com14801338);
for?(int?i=0;i<1480;i++)
{
for?(int?j=0;j<1338;j++)
{
img.at(i+80j+84)?=output.at(ij);
}
}
imwrite(“7.bmp“img);
imwrite(“4.bmp“high_com);
imwrite(“5.bmp“mul_com);
namedWindow(“output“0);
cvResizeWindow(“output“?800?600);
imshow(“output“img);
imwrite(“result.bmp“output);
waitKey(0);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-06-01?15:46??非加權融合\ipch\
?????目錄???????????0??2019-06-01?15:46??非加權融合\ipch\非加權融合-baf3449f\
?????文件????69206016??2019-06-01?15:46??非加權融合\ipch\非加權融合-baf3449f\非加權融合-3e00ec60.ipch
?????目錄???????????0??2019-06-01?11:28??非加權融合\x64\
?????目錄???????????0??2019-06-01?11:28??非加權融合\x64\Debug\
?????文件??????105984??2019-06-01?11:28??非加權融合\x64\Debug\非加權融合.dll
?????文件?????????735??2019-06-01?11:28??非加權融合\x64\Debug\非加權融合.exp
?????文件??????581248??2019-06-01?11:28??非加權融合\x64\Debug\非加權融合.ilk
?????文件????????1874??2019-06-01?11:28??非加權融合\x64\Debug\非加權融合.lib
?????文件?????1838080??2019-06-01?11:28??非加權融合\x64\Debug\非加權融合.pdb
?????文件????17846272??2019-06-01?17:22??非加權融合\非加權融合.sdf
?????文件????????1266??2019-06-01?11:27??非加權融合\非加權融合.sln
?????文件???????15872??2019-06-01?17:22??非加權融合\非加權融合.suo
?????目錄???????????0??2019-06-01?11:28??非加權融合\非加權融合\
?????目錄???????????0??2019-06-01?11:28??非加權融合\非加權融合\x64\
?????目錄???????????0??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\
?????文件?????????652??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\cl.command.1.tlog
?????文件???????33404??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\CL.read.1.tlog
?????文件?????????266??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\CL.write.1.tlog
?????文件???????????2??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件???????????2??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件???????????2??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件???????????2??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件????????1482??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件????????3968??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件?????????612??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件???????????2??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件???????????2??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\li
?????文件?????????370??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\mt.command.1.tlog
?????文件?????????266??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\mt.read.1.tlog
?????文件?????????266??2019-06-01?11:28??非加權融合\非加權融合\x64\Debug\mt.write.1.tlog
............此處省略18個文件信息
- 上一篇:倍福PLC從入門到精通
- 下一篇:遙感圖像融合之加權融合
評論
共有 條評論