亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rc.c

?? 雷達仿真的c程序
?? C
字號:
//==============================================================================================================================================

#include <math.h>
#include <stdio.h>
#include <stdlib.h>

//==============================================================================================================================================
//              常數定義
//==============================================================================================================================================

#define WLENGTH   0.00875                   //   波長
#define SLANT     7500                      //   作用距離
#define V_plane   90                        //   載機速度

#define PI        3.1415926535897
#define PRF       1000	
#define FS        220                     	//   兆赫
#define T1 	      30                        //   微秒
#define BW	      200                      	//   兆赫

#define ANUM  	  4096                      //   方位
#define RNUM      8192                      //   距離
#define RN        2048                      //   距離向有效數據

#define ZNUM      0                         //   FFT移位
#define YY        2                         //   回波數據2, 回波量化像0

//==============================================================================================================================================

void  rangecompression();
void  turncorner();
void  imageout();
float Max_val();
float Min_val();
void  fft(float *x, float *y, int n, int flag);

//==============================================================================================================================================
//                  全局變量
//==============================================================================================================================================

float   range_datar[ANUM][RNUM],  range_datai[ANUM][RNUM];
float   azimu_datar[RNUM][ANUM];

//==============================================================================================================================================

void main()
{
	printf("Range compressing, waiting...\n");
	rangecompression();

    if(YY>1)   //  回波數據
	{
      printf("Turn corner, waiting...\n\n");
  	  turncorner();
	}
	else       //  回波量化像
	{
	  printf("Imaging, waiting...\n");
	  imageout();
	}
}

//==============================================================================================================================================
//                     距離壓縮
//==============================================================================================================================================

void rangecompression()
{
	int      i,j;
	unsigned char  temp[RNUM];
	int      frnum;
	int      start;
	float    K;
	float    refr[RNUM],refi[RNUM];
	float    dr[RNUM],di[RNUM];
	float    wnd;
	float    t;
	float    re, im;
	float    dianpr, dianpi;

	FILE     *fin;
	fin      = fopen("d:/data/10data/d1208f0-fish.dat","rb");
	start    =  0;

    fseek(fin, (long)((5865*4+18000)*8192*2 + RNUM * start * 2), 0);

//====================================================================================================================================================
//                           原始數據電平校正
//====================================================================================================================================================

	for(j=0;j<ANUM;j++)
	{
	    dianpr = 0.0;
		dianpi = 0.0;

		fread(&temp,sizeof(unsigned char),RNUM,fin);
		for( i=0; i<RNUM; i++ )
		{
			dianpr += temp[i];
		}
		dianpr = dianpr / RNUM;
		
		for(i=0;i<RNUM;i++)
		{
			if(i<8000)
			{
				range_datar[j][i]=(float)temp[i]-dianpr;
			}
			else
			{
				range_datar[j][i]=0;
			}
		}

		fread(&temp,sizeof(unsigned char),RNUM,fin);
		for( i=0; i<RNUM; i++ )
		{
			dianpi += temp[i];
		}
		dianpi = dianpi / RNUM;

		for(i=0;i<RNUM;i++)
		{
			if(i<8000)
			{
				range_datai[j][i]=(float)temp[i]-dianpi;
			}
			else
			{
				range_datai[j][i]=0;
			}
		}	
	}
//====================================================================================================================================================
	
	fclose(fin);
	frnum = (unsigned int)floor(FS*T1);                 // 脈沖寬度
	K     = (float)(BW/T1);                             // 調頻率
	printf("frnum=%d---K=%f\n", frnum, K);

//==============================================================================================================================================
//                    距離壓縮參考函數
//==============================================================================================================================================

	for( i=0; i<RNUM; i++ )
	{
		if( i<frnum)
		{
			t = (float) (i-frnum/2 ) / FS;

			wnd = (float) (0.54 - 0.46*cos( 2.0*PI*i/(frnum) ));
			refr[i] = (float) (wnd * cos( -PI*K*t*t ));
			refi[i] = (float) (wnd * sin( -PI*K*t*t ));
		}
		else
		{
			refr[i] = 0.0;
			refi[i] = 0.0;
		}
	}

	fft( refr, refi, RNUM, 0 );

//==============================================================================================================================================

	for(j=0;j<ANUM;j++)
	{
		for(i=0;i<RNUM;i++)
		{
			dr[i] = range_datar[j][i];
			di[i] = range_datai[j][i];
		}
		fft( dr, di, RNUM, 0 );

		for( i=0; i<RNUM; i++ )
		{
			re = dr[i];
			im = di[i];
			dr[i] = re*refr[i] - im*refi[i];
			di[i] = re*refi[i] + im*refr[i];
		}
		fft( dr, di, RNUM, 1 );

		for(i=0;i<RNUM;i++)
		{
			range_datar[j][i] = dr[i+ZNUM];
			range_datai[j][i] = di[i+ZNUM];
		}

	if(YY<1)     //  回波量化像
	{
	    for( i=0; i<RNUM; i++)  
		{
        	azimu_datar[i][j] = (float)sqrt( range_datar[j][i]*range_datar[j][i] + range_datai[j][i]*range_datai[j][i] );
		}
	}
	}
}

//==============================================================================================================================================
//                     矩陣轉置
//==============================================================================================================================================

void turncorner()
{
	int   i,j;
	FILE  *fout1, *fout2;

	fout1 = fopen("rc-end.r","wb");
	fout2 = fopen("rc-end.i","wb");

	for(j=0; j<ANUM; j++)            // R數據
	{
		for(i=6724;i<RNUM;i++)       //去掉前6724行數據
		{
          azimu_datar[i-6724][j] = range_datar[j][i];
		}
		for (i=1468; i<RN; i++)
		{
          azimu_datar[i][j] = 0.0;
		}
    }
	for(i=0;i<RN;i++)            
    {
		fwrite( azimu_datar[i], sizeof(float), ANUM, fout1 );
	}

	for(j=0; j<ANUM; j++)            // I數據
	{
		for(i=6724;i<RNUM;i++)       //去掉前6724行數據
		{
          azimu_datar[i-6724][j] = range_datai[j][i];
		}
		for (i=1468; i<RN; i++)
		{
          azimu_datar[i][j] = 0.0;
		}
    }
	for(i=0;i<RN;i++)          
    {
		fwrite( azimu_datar[i], sizeof(float), ANUM, fout2 );
	}

	fclose(fout1);
	fclose(fout2);
}

//==============================================================================================================================================
//                                    直方圖量化
//==============================================================================================================================================

float Max_val(float * fp, int a)
{
	int i;
	float x;

	x=fp[0];
	for(i=1;i<a;i++)
	{
		if(fp[i]>x) { x=fp[i]; }
	}
	return x;
}

float Min_val(float * fp, int a)
{
	int i;
	float x;

	x=fp[0];
	for(i=1;i<a;i++)
	{
		if(fp[i]<x){ x=fp[i]; }
	}
	return x;
}

//==============================================================================================================================================

void imageout()
{
	float tmpval;
	float *MaxArray,*MinArray;
	int i,j,z,height,width, N, idx_bottom, idx_top, num;
	int * hisg;
	unsigned char *out;
	float  x,y;
	FILE   *fidw;
	
	height=RNUM;
	width=ANUM;

	fidw=fopen("output2.raw","wb");
	
	// hisgram level
	N = width;
	
	MaxArray=calloc(height,sizeof(float));
	MinArray=calloc(height,sizeof(float));
	hisg = calloc( N, sizeof(int) );
	out=calloc(width,sizeof(unsigned char));

	for( i=0; i<N; i++ )
	{
		hisg[i] = 0;
	}

	for(i=0;i<height;i++)
	{
		MaxArray[i]=Max_val(azimu_datar[i],width);
		MinArray[i]=Min_val(azimu_datar[i],width);
	}
	x = Max_val(MaxArray,height);
	y = Min_val(MinArray,height);
	free(MaxArray);
	free(MinArray);

	// for hisgram
	for(i=0;i<height;i++)
	{
		for(j=0;j<width;j++)
		{
			z= (int) floor((azimu_datar[i][j]-y)*N/(x-y));
			if( z>= N )
				z = N-1;
			if( z<0 )
				z = 0;
			hisg[z] ++;
		}
	}

	// for 最小值 直方圖的索引
	num = ( int ) floor( width*height*0.015 );
	z = 0;
	i = 0;
	while( z<num )
	{
		z += hisg[i];
		i ++ ;
	}
	idx_bottom = i - 1 ;
	
	// for 最大值 直方圖的索引
	num = ( int ) floor( width*height*0.015 );
	z = 0;
	i = N-1;
	while( z<num )
	{
		z += hisg[ i ];
		i --;
	}
	idx_top = i + 1 ;

	// 確定用于量化的最大值和最小值
	tmpval = idx_top * ( x - y ) / N + y ;
	y = idx_bottom * ( x - y ) / N + y ;
	x = tmpval ;

	// 量化成256級灰度
	for(i=0;i<height;i++)
	{
		for(j=0;j<width;j++)
		{
			z=(int) floor( (azimu_datar[i][j]-y)*256/(x-y) );
			if( z>255 )
				z = 255;
			if( z<0 )
				z = 0;
			out[j]=(unsigned char)z;
		}
		fwrite(&out[0],sizeof(unsigned char),width,fidw);
	}

	free(out);
	free(hisg);
	fclose(fidw);	
}
//==============================================================================================================================================
//                    FILE           END
//==============================================================================================================================================

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品亚洲免费视频| 午夜激情一区二区三区| 久久亚洲一区二区三区明星换脸 | ㊣最新国产の精品bt伙计久久| 精品国精品国产| 久久奇米777| 欧美激情一区二区在线| 国产精品免费久久久久| 亚洲色图欧美在线| 亚洲激情自拍视频| 日日欢夜夜爽一区| 麻豆免费看一区二区三区| 麻豆成人在线观看| 国产传媒久久文化传媒| 成人免费视频网站在线观看| 91网址在线看| 欧美挠脚心视频网站| 精品少妇一区二区三区免费观看 | 欧美三级韩国三级日本一级| 欧美日韩一级二级三级| 日韩视频123| 亚洲国产精品t66y| 亚洲国产日韩综合久久精品| 另类人妖一区二区av| 成人精品gif动图一区| 色噜噜狠狠成人中文综合| 制服视频三区第一页精品| 欧美精品一区二区蜜臀亚洲| 日韩美女视频19| 人妖欧美一区二区| 成人午夜精品一区二区三区| 欧美午夜不卡视频| 国产视频一区不卡| 亚洲成人av一区二区| 国产精品一级片在线观看| 欧美中文字幕不卡| www激情久久| 亚洲成人在线免费| 成人激情动漫在线观看| 91精品国产综合久久国产大片| 国产午夜精品在线观看| 日韩黄色小视频| 色综合久久综合| 精品成人一区二区三区| 亚洲国产成人porn| 粉嫩av一区二区三区粉嫩| 7777精品伊人久久久大香线蕉经典版下载 | 久久精品国产久精国产爱| 91蜜桃视频在线| 久久久亚洲精品一区二区三区 | 丰满少妇在线播放bd日韩电影| 欧美日韩午夜精品| 亚洲男同性视频| 成人性生交大片| 精品福利一区二区三区免费视频| 性久久久久久久久| 91小视频在线免费看| 中文字幕欧美日韩一区| 狠狠色丁香婷综合久久| 日韩亚洲国产中文字幕欧美| 亚洲在线中文字幕| 日本久久电影网| 1024成人网| 99精品视频在线观看免费| 久久久精品日韩欧美| 九九精品一区二区| 日韩精品一区二区三区在线 | 亚洲成人手机在线| 91精品福利视频| 一区二区三区四区五区视频在线观看| 国产精品911| 国产日韩欧美不卡在线| 国产成人精品免费在线| 国产亚洲精品bt天堂精选| 国产成人午夜片在线观看高清观看| 欧美zozozo| 经典三级在线一区| 久久久亚洲精华液精华液精华液 | 粉嫩欧美一区二区三区高清影视 | 成人app软件下载大全免费| 久久久久久久久久久久电影| 国产福利91精品一区二区三区| 久久久久久9999| 成人免费电影视频| 亚洲人成网站影音先锋播放| 在线视频国内自拍亚洲视频| 亚洲成人av电影在线| 日韩免费观看高清完整版| 国产在线播精品第三| 欧美国产禁国产网站cc| 99re在线精品| 视频一区在线播放| 久久这里只精品最新地址| 成人av电影在线| 亚洲福中文字幕伊人影院| 日韩一区二区不卡| 成人免费视频视频| 午夜视黄欧洲亚洲| 欧美变态tickling挠脚心| 成人av在线一区二区| 一二三四区精品视频| 精品日本一线二线三线不卡| 成人综合婷婷国产精品久久免费| 亚洲精品国产视频| 日韩一区二区三| www.综合网.com| 日韩和欧美的一区| 欧美激情一区二区三区蜜桃视频| 欧美在线视频日韩| 国产一区二区三区综合| 一区二区免费在线播放| 2020国产精品| 欧美日韩精品欧美日韩精品一 | 国产精品色呦呦| 欧美精品在线观看一区二区| 福利一区二区在线| 视频在线观看一区二区三区| 国产精品久久久久久久久动漫 | 亚洲精品一卡二卡| 精品女同一区二区| 欧美日韩激情一区二区| 东方欧美亚洲色图在线| 蜜臀精品久久久久久蜜臀 | 欧美一区二区视频网站| 99国产精品一区| 国产麻豆日韩欧美久久| 天堂一区二区在线| 中文字幕人成不卡一区| 久久久久久久综合色一本| 欧美日韩激情一区| 色噜噜狠狠色综合中国| 成人午夜精品在线| 国产精品自拍毛片| 麻豆精品在线播放| 亚洲成人一区二区在线观看| 亚洲激情男女视频| 中文字幕一区二区视频| 国产日韩在线不卡| 久久久亚洲高清| 欧美精品一区二区三区在线| 91精品婷婷国产综合久久性色| 欧美在线你懂得| 在线日韩一区二区| 色综合久久99| 色婷婷av一区二区三区软件| 成人av网站免费观看| 国产不卡视频在线播放| 国产盗摄一区二区三区| 激情偷乱视频一区二区三区| 捆绑调教一区二区三区| 蜜臀久久久久久久| 久久成人免费电影| 狠狠色狠狠色综合| 国产成人亚洲精品青草天美| 国产精品一区免费在线观看| 国产一区二区三区美女| 国产精品99久久久久| 东方aⅴ免费观看久久av| 不卡的电视剧免费网站有什么| 成人午夜视频网站| 色香色香欲天天天影视综合网| 91浏览器在线视频| 欧美性大战久久久| 在线观看91av| 久久综合99re88久久爱| 国产精品久久久久久久久晋中| 综合亚洲深深色噜噜狠狠网站| 亚洲精品乱码久久久久久| 亚洲国产精品久久人人爱蜜臀| 丝袜美腿高跟呻吟高潮一区| 美女国产一区二区| 丁香婷婷综合激情五月色| 91在线看国产| 制服丝袜av成人在线看| 久久综合色之久久综合| 亚洲欧美另类小说| 日产国产欧美视频一区精品| 看国产成人h片视频| 国产成人aaa| 欧美日韩一区高清| 久久一区二区三区国产精品| 日韩伦理电影网| 免费在线视频一区| 风流少妇一区二区| 欧美日韩国产在线观看| 久久久国产午夜精品| 亚洲一区二区三区在线| 久久不见久久见免费视频7| caoporen国产精品视频| 3atv一区二区三区| 国产精品高清亚洲| 麻豆精品国产传媒mv男同 | 欧美性受xxxx| 久久久久久一二三区| 亚洲 欧美综合在线网络| 高清不卡一区二区| 日韩三级.com| 亚洲国产aⅴ天堂久久| 成人国产免费视频| 精品少妇一区二区三区日产乱码|