好記性不如爛筆頭,紀錄工作與生活上遭遇的點點滴滴。
#include #include #include #include using namespace std;int His_Arr_src[256]={0};int His_Arr_dst[256]={0};int main(){ int img_num=0; cout<<"請輸入圖片號碼"<>img_num; IplImage *src,*dst,*com_img_src,*com_img_dst; if(img_num==1) { src=cvLoadImage("D:\\img\\Airport1.bmp",-1); dst=cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1); } if(img_num==2) { src=cvLoadImage("D:\\img\\Airport2.bmp",-1); dst=cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1); } if(img_num==3) { src=cvLoadImage("D:\\img\\Airport3.bmp",-1); dst=cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1); } com_img_src=cvCreateImage(cvSize(512,512),IPL_DEPTH_8U,1); com_img_dst=cvCreateImage(cvSize(512,512),IPL_DEPTH_8U,1); CvScalar His_src,His_dst; int com; cvEqualizeHist(src,dst); for(int i=0;iheight;i++) { for(int j=0;jwidth;j++) { His_src=cvGet2D(src,i,j); His_dst=cvGet2D(dst,i,j); com=His_src.val[0]; His_Arr_src[com]++; com=His_dst.val[0]; His_Arr_dst[com]++; } } for(int i=0;i<255;i++) { cvRectangle(com_img_src,cvPoint(i,512-(His_Arr_src[i]/100)),cvPoint(i+2,512),cvScalar(255,255,255),CV_FILLED,8,0); cvRectangle(com_img_dst,cvPoint(i,512-(His_Arr_dst[i]/100)),cvPoint(i+2,512),cvScalar(255,255,255),CV_FILLED,8,0); } cvNamedWindow("src",CV_WINDOW_AUTOSIZE); cvNamedWindow("dst",CV_WINDOW_AUTOSIZE); cvShowImage("src",src); cvShowImage("dst",dst); cvNamedWindow("com_img_src",CV_WINDOW_AUTOSIZE); cvShowImage("com_img_src",com_img_src); cvNamedWindow("com_img_dst",CV_WINDOW_AUTOSIZE); cvShowImage("com_img_dst",com_img_dst); cvWaitKey(0); cvDestroyWindow("src"); cvReleaseImage(&src); cvDestroyWindow("dst"); cvReleaseImage(&dst); cvDestroyWindow("com_img_src"); cvReleaseImage(&com_img_src); cvDestroyWindow("com_img_dst"); cvReleaseImage(&com_img_dst);}
#include
回覆刪除#include
#include
#include
using namespace std;
int His_Arr_src[256]={0};
int His_Arr_dst[256]={0};
int main()
{
int img_num=0;
cout<<"請輸入圖片號碼"<>img_num;
IplImage *src,*dst,*com_img_src,*com_img_dst;
if(img_num==1)
{
src=cvLoadImage("D:\\img\\Airport1.bmp",-1);
dst=cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1);
}
if(img_num==2)
{
src=cvLoadImage("D:\\img\\Airport2.bmp",-1);
dst=cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1);
}
if(img_num==3)
{
src=cvLoadImage("D:\\img\\Airport3.bmp",-1);
dst=cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1);
}
com_img_src=cvCreateImage(cvSize(512,512),IPL_DEPTH_8U,1);
com_img_dst=cvCreateImage(cvSize(512,512),IPL_DEPTH_8U,1);
CvScalar His_src,His_dst;
int com;
cvEqualizeHist(src,dst);
for(int i=0;iheight;i++)
{
for(int j=0;jwidth;j++)
{
His_src=cvGet2D(src,i,j);
His_dst=cvGet2D(dst,i,j);
com=His_src.val[0];
His_Arr_src[com]++;
com=His_dst.val[0];
His_Arr_dst[com]++;
}
}
for(int i=0;i<255;i++)
{
cvRectangle(com_img_src,cvPoint(i,512-(His_Arr_src[i]/100)),cvPoint(i+2,512),cvScalar(255,255,255),CV_FILLED,8,0);
cvRectangle(com_img_dst,cvPoint(i,512-(His_Arr_dst[i]/100)),cvPoint(i+2,512),cvScalar(255,255,255),CV_FILLED,8,0);
}
cvNamedWindow("src",CV_WINDOW_AUTOSIZE);
cvNamedWindow("dst",CV_WINDOW_AUTOSIZE);
cvShowImage("src",src);
cvShowImage("dst",dst);
cvNamedWindow("com_img_src",CV_WINDOW_AUTOSIZE);
cvShowImage("com_img_src",com_img_src);
cvNamedWindow("com_img_dst",CV_WINDOW_AUTOSIZE);
cvShowImage("com_img_dst",com_img_dst);
cvWaitKey(0);
cvDestroyWindow("src");
cvReleaseImage(&src);
cvDestroyWindow("dst");
cvReleaseImage(&dst);
cvDestroyWindow("com_img_src");
cvReleaseImage(&com_img_src);
cvDestroyWindow("com_img_dst");
cvReleaseImage(&com_img_dst);
}