基于HSV空间,逐个像素点处理图像,求图像的平均亮度。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 19352576 2013-11-15 18:26 averagelightaveragelight.ncb
文件 902 2013-11-15 17:59 averagelightaveragelight.sln
..A..H. 15360 2013-11-15 18:26 averagelightaveragelight.suo
文件 4004 2013-11-12 14:22 averagelightaveragelightaveragelight.vcproj
文件 1401 2013-11-15 18:26 averagelightaveragelightaveragelight.vcproj.GX.JN.user
文件 2342 2013-11-15 18:24 averagelightaveragelightmain.cpp
文件 663 2013-11-15 18:08 averagelightaveragelightDebugaveragelight.exe.embed.manifest
文件 728 2013-11-15 18:25 averagelightaveragelightDebugaveragelight.exe.embed.manifest.res
文件 621 2013-11-15 18:25 averagelightaveragelightDebugaveragelight.exe.intermediate.manifest
文件 12960 2013-11-15 18:08 averagelightaveragelightDebugBuildLog.htm
文件 96559 2013-11-15 18:25 averagelightaveragelightDebugmain.obj
文件 67 2013-11-15 18:25 averagelightaveragelightDebugmt.dep
文件 592896 2013-11-15 18:25 averagelightaveragelightDebugvc90.idb
文件 552960 2013-11-15 18:25 averagelightaveragelightDebugvc90.pdb
文件 55808 2013-11-15 18:25 averagelightDebugaveragelight.exe
文件 459096 2013-11-15 18:25 averagelightDebugaveragelight.ilk
文件 1002496 2013-11-15 18:25 averagelightDebugaveragelight.pdb
目录 0 2013-11-15 18:25 averagelightaveragelightDebug
目录 0 2013-11-15 18:24 averagelightaveragelight
目录 0 2013-11-15 18:08 averagelightDebug
目录 0 2013-11-12 15:09 averagelight
----------- --------- ---------- ----- ----
22151439 21
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
ostringstream oss[36];
int main(int argcchar **argv)
{
for(int k=0;k<35;k=k+2)
{
IplImage *img1=0;
IplImage *img2=0;
float Pre_15Day_V=0;
float Pro_15Day_V=0.0;
float P_V=0.0;
int count=0;
unsigned char* phtr=new unsigned char [3*(5616)*(3744)];
unsigned char* qhtr=new unsigned char [3*(5616)*(3744)];
// unsigned char* phtr1=new unsigned char [3*(5616)*(3744)];
// unsigned char* qhtr1=new unsigned char [3*(5616)*(3744)];
string strstr1str2s1s2;
str=“.\17\PB“;
oss[k]< oss[k+1]< s1=oss[k].str();
s2=oss[k+1].str();
str1=str+s1;
str2=str+s2;
str1=str1+“.JPG“;
str2=str2+“.JPG“;
img1=cvLoadImage(str1.c_str()-1);
img2=cvLoadImage(str2.c_str()-1);
IplImage *imghsv1=cvCreateImage(cvGetSize(img1)83); //全开
IplImage *imghsv2=cvCreateImage(cvGetSize(img2)83); //单开
cvCvtColor(img1imghsv1CV_RGB2HSV);
cvCvtColor(img2imghsv2CV_RGB2HSV);
for(int y=0;yheight;y++)
{
for(int x=0;xwidth;x++)
{
int Index =y * (img1->width) + x;
phtr[3*Index+1]=((uchar*)(imghsv1->imageData+y*imghsv1->widthStep))[x*imghsv1->nChannels+1]; //全开 亮度
qhtr[3*Index+2]=((uchar*)(imghsv2->imageData+y*imghsv2->widthStep))[x*imghsv2->nChannels+2]; //单开
qhtr[3*Index+1]=((uchar*)(imghsv2->imageData+y*imghsv2->widthStep))[x*imghsv2->nChannels+1]; //单开 饱和度
Pre_15Day_V=Pre_15Day_V + phtr[3*Index+1]; //全开亮度
Pro_15Day_V=Pro_15Day_V + qhtr[3*Index+1]; //单开饱和度
P_V=P_V+qhtr[3*Index+2];
}
}
count=img1->width*img1->height;
cout<<(k/2)*15<<“ “;
cout<
cout<
cout<<((Pre_15Day_V/count)-(Pro_15Day_V/count))< delete phtr;
delete qhtr;
cvReleaseImage(&img1);
cvReleaseImage(&img2);
cvReleaseImage(&imghsv1);
cvReleaseImage(&imghsv2);
}
system(“pause“);
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 19352576 2013-11-15 18:26 averagelightaveragelight.ncb
文件 902 2013-11-15 17:59 averagelightaveragelight.sln
..A..H. 15360 2013-11-15 18:26 averagelightaveragelight.suo
文件 4004 2013-11-12 14:22 averagelightaveragelightaveragelight.vcproj
文件 1401 2013-11-15 18:26 averagelightaveragelightaveragelight.vcproj.GX.JN.user
文件 2342 2013-11-15 18:24 averagelightaveragelightmain.cpp
文件 663 2013-11-15 18:08 averagelightaveragelightDebugaveragelight.exe.em
文件 728 2013-11-15 18:25 averagelightaveragelightDebugaveragelight.exe.em
文件 621 2013-11-15 18:25 averagelightaveragelightDebugaveragelight.exe.intermediate.manifest
文件 12960 2013-11-15 18:08 averagelightaveragelightDebugBuildLog.htm
文件 96559 2013-11-15 18:25 averagelightaveragelightDebugmain.obj
文件 67 2013-11-15 18:25 averagelightaveragelightDebugmt.dep
文件 592896 2013-11-15 18:25 averagelightaveragelightDebugvc90.idb
文件 552960 2013-11-15 18:25 averagelightaveragelightDebugvc90.pdb
文件 55808 2013-11-15 18:25 averagelightDebugaveragelight.exe
文件 459096 2013-11-15 18:25 averagelightDebugaveragelight.ilk
文件 1002496 2013-11-15 18:25 averagelightDebugaveragelight.pdb
目录 0 2013-11-15 18:25 averagelightaveragelightDebug
目录 0 2013-11-15 18:24 averagelightaveragelight
目录 0 2013-11-15 18:08 averagelightDebug
目录 0 2013-11-12 15:09 averagelight
----------- --------- ---------- ----- ----
22151439 21
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)