當前位置:編程學習大全網 - 源碼下載 - opencv如何實現光照補償

opencv如何實現光照補償

光照補償,整體調整灰度值即可,cvNormalize可以用;

參考示例如下:

# include & ltcv.h & gt

# include & lthighgui.h & gt

# include & ltstdio.h & gt

# include & lt字符串& gt

使用命名空間std

void main()

{

int I;

ipimage * pimage channel[4]= { 0,0,0,0 };

int count = 15;

char * name = new char

while(count & lt;=17)

{

string FileName = " s 010 _ 001 _ 015942 ";

itoa(計數,名稱,10);

文件名=文件名+名稱;

文件名=文件名+字符串("。png”);

ipimage * PSR image = cvLoadImage(filename . c _ str());

ipimage * pImage = cvCreateImage(cvGetSize(PSR image),PSR image-& gt;深度,PSR image-& gt;nChannels);

if(PSR image)

{

for(I = 0;我& ltPSR image-& gt;n通道;i++)

{

pimage channel[I]= cvCreateImage(cvGetSize(PSR image),PSR image-& gt;深度,1);

}

//通道分離

cvSplit(PSR image,pImageChannel[0],pImageChannel[1],pImageChannel[2],NULL);

for(I = 0;我& ltpImage->;n通道;i++)

{

//直方圖均衡化

cvEqualizeHist(pimage channel[I],pimage channel[I]);

}

//頻道組合

cvMerge( pImageChannel[0],pImageChannel[1],pImageChannel[2],NULL,pImage);

//...圖像顯示代碼(略)

//釋放資源

for(I = 0;我& ltPSR image-& gt;n通道;i++)

{

if(pImageChannel[i])

{

cvReleaseImage(& amp;pimage channel[I]);

pimage channel[I]= 0;

}

}

cvNamedWindow(" 1 ");

cvShowImage("1 ",pImage);

cvWaitKey();

cvDestroyWindow(" 1 ");

//

字符串保存文件= "。\ \ 002 \ \ hist gram \ \ ";

save file = save file+name;

saveFile = saveFile +"。BMP”;

cvSaveImage(saveFile.c_str(),pImage);

count++;

cvReleaseImage(& amp;pImage);

}

}

}

  • 上一篇:Android快速啟動和恢復和刷機
  • 下一篇:說出我國著名的植物病理學家10名,並介紹其主要成就!!!
  • copyright 2024編程學習大全網