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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? hyperspectralimagcode.h

?? 改進(jìn)的JPEG-LS算法
?? H
字號(hào):
#include "wfun.h"

//			高光譜圖像編解碼器
/*

	使用方法:		壓縮

		1、加載高光譜數(shù)據(jù)。
			
			  a、支持三種形式的高光譜數(shù)據(jù)文件格式(BSQ_H、BIP_H、BIL_H)及各波段獨(dú)立文件格式。
			  b、從格式文件的頭部獲取數(shù)據(jù)各類參數(shù),獨(dú)立文件形式必須輸入壓縮所需格式信息。
			  c、配置預(yù)測(cè)波段。(配置信息來(lái)自預(yù)先的設(shè)定)

		2、為各波段創(chuàng)建編碼器。

			a、編碼器實(shí)際上是用來(lái)獨(dú)立保存各波段編碼的上下文信息(包括波段預(yù)測(cè)所需上下文)。
			b、創(chuàng)建的同時(shí)要根據(jù)單波段相關(guān)參數(shù)及預(yù)測(cè)配置初始化編碼器。

		3、為壓縮碼流準(zhǔn)備緩沖區(qū)及存放文件。(緩沖區(qū)大小取決于壓縮圖像塊的大小)

		4、執(zhí)行壓縮循環(huán)

			a、建立壓縮塊循環(huán)。
				b、創(chuàng)建壓縮塊信息頭。
				c、建立圖像行循環(huán)
					d、建立波段循環(huán)
						e、取某行某波段數(shù)據(jù)
						f、用相應(yīng)的波段編碼器編碼該圖像行數(shù)據(jù),碼流匯入總碼流。
					g、下一個(gè)波段。
				h、下一個(gè)圖像行
				i、導(dǎo)出壓縮塊碼流。
			j、下一個(gè)壓縮圖像塊

		5、釋放碼流及各波段編碼器緩沖區(qū)。

		
			解壓縮


		1、加載高光譜壓縮碼流。
			
			  a、從碼流中獲取高光譜數(shù)據(jù)文件格式(BSQ_H、BIP_H、BIL_H)及各波段獨(dú)立文件格式。
			  b、從碼流中獲取高光譜數(shù)據(jù)參數(shù)。
			  c、從碼流中獲取配置預(yù)測(cè)波段。

		2、為高光譜圖像準(zhǔn)備緩沖區(qū)

		3、為各波段創(chuàng)建編碼器。

			a、解碼器實(shí)際上是用來(lái)獨(dú)立保存各波段編碼的上下文信息(包括波段預(yù)測(cè)所需上下文)。
			b、創(chuàng)建的同時(shí)要根據(jù)單波段相關(guān)參數(shù)及預(yù)測(cè)配置初始化編碼器(在加載碼流時(shí)已獲得)。

		4、執(zhí)行解壓縮循環(huán)

			a、建立解壓縮塊循環(huán)。
				b、獲取塊信息頭及塊長(zhǎng)度,同時(shí)也可獲得下一個(gè)塊碼流的位置
				c、建立圖像行循環(huán)
					d、建立波段循環(huán)
						e、解壓縮某行某波段壓縮碼流
						f、將解壓縮圖像及輔助數(shù)據(jù)存入到拽定位置。
					g、下一個(gè)波段。
				h、下一個(gè)圖像行
				i、塊碼流指針指向下一個(gè)塊
			j、下一個(gè)圖像塊碼流

		5、釋放碼流及各波段編碼器緩沖區(qū)。

*/
#define BSQ_H		0
#define BIP_H		1
#define BIL_H		2
#define BFILE		3

#define	MAXBANDNUMBER	512
#define MAXBITPERPIXEL	16

struct	stLineAuxData
{
	int	ladWidth;	 //in BYTE.		輔助數(shù)據(jù)每行的個(gè)數(shù)
	int	ladHeight;	//				輔助數(shù)據(jù)的行數(shù)
};

struct stAuxMsg
{	
	int	iImageWidth;		//		圖象寬度----每行的圖象象素?cái)?shù)
	int	iImageHeight;		//		圖象高度----圖象的行數(shù)
	int	iImageBand;			//		圖象的波段數(shù)
	int	iFlyingSpeed;		//		飛機(jī)的飛行地速
	int	iFlyingAltitude;	//		航高
	int	iScanSpeed;			//		線掃描速率
	int	iBitPerPixel;		//8bit or 12 bit	數(shù)據(jù)記錄的位數(shù)(每個(gè)象素的數(shù)據(jù)所占的數(shù)據(jù)位數(shù))
	int	iFOV;				//	瞬時(shí)視場(chǎng)
	stLineAuxData stLineAuxDataInfo;	//輔助數(shù)據(jù)信息 
	int iDataStartPosition;	//		文件中圖象數(shù)據(jù)的起始位置
	int	iImageFormat;		//format of image.  圖象文件格式
	int iReserved1;			//	保留
	int iReserved2;			//	保留
	int iReserved3;			//	保留
	int iReserved4;			//	保留
	int iReserved5;			//	保留
	int iReserved6;			//	保留
	int iReserved7;			//	保留
	int iReserved8;			//	保留
	int iReserved9;			//	保留
	BYTE byteUnknow[512-21*4];//   保留
};
class CAdvanceJepgLSOneLineCode;
class CHyperspectralImageCode
{
public:
	//基本數(shù)據(jù)格式
	BYTE HyperspectralDataFormat;//高光譜數(shù)據(jù)格式
	short int BandNumber;//波段數(shù)
	short int Height;//單波段圖像總行數(shù)
	short int Width;//單波段圖像每行象素?cái)?shù)
	short int OnePixelBytes;//單波段圖像每象素字節(jié)數(shù)
	short int OnePixelBits;//單波段圖像每象素比特?cái)?shù)
	//高光譜數(shù)據(jù)格式
	CMapFile HMF;//文件映射內(nèi)存
	stAuxMsg *lpHead;
	CString HFileName;
	LPBYTE lpImageData;
	int	HImageWidth;		//		圖象寬度----每行的圖象象素?cái)?shù)
	int	HImageHeight;		//		圖象高度----圖象的行數(shù)
	int	HImageBand;			//		圖象的波段數(shù)
	int	HBitPerPixel;		//8bit or 12 bit	數(shù)據(jù)記錄的位數(shù)(每個(gè)象素的數(shù)據(jù)所占的數(shù)據(jù)位數(shù))
	int HDataStartPosition;	//		文件中圖象數(shù)據(jù)的起始位置
	int	HImageFormat;		//format of image.  圖象文件格式
	int OneLineAuxDataWidth;//in Pixel
	//純圖像
	LPBYTE *lpImageIndex;//各波段圖像地址表
	CMapFile **lpIMF;//單波段文件映射內(nèi)存
	//最小壓縮模塊
	CAdvanceJepgLSOneLineCode **lpCompressUnit;
	//碼流緩沖區(qū)
	LPBYTE lpCodeStreamBuf,lpBlockHead;
	int StreamBufLength;
	//中間控制變量
	short int AllowMaxError;//允許的最大誤差
	short int LinesPerCompressBlock;//每塊圖像行數(shù)
	//碼流文件
	CString CompressFile;
	CMapFile CMF;
	//波段預(yù)測(cè)配置表
	short int *lpPredictTable;
	
	CHyperspectralImageCode();
	~CHyperspectralImageCode();
	//壓縮過(guò)程及公共過(guò)程
	BOOL LoadHyperspectralImageFile(LPCTSTR pHFile,int OneLineImageAuxDataL);//OMIS相關(guān)圖像格式時(shí)
	//純圖像格式時(shí),任何高光譜數(shù)據(jù)都可以先轉(zhuǎn)化為單波段純圖像格式再行壓縮.
	BOOL LoadHyperspectralImageFile(LPCTSTR *lpIFileList,int BandN,int H,int W,int Bytes,int Bits);
	//直接從原始數(shù)據(jù)中取得指針
	LPBYTE GetOneLineImageData(int Band,int Line);
	//從原始數(shù)據(jù)中取得數(shù)據(jù)裝入到指定緩沖
	void GetOneLineImageData(LPBYTE lpOneLineBuf,int Band,int Line);
	//從原始數(shù)據(jù)中取得每行輔助數(shù)據(jù)裝入到指定緩沖
	int GetOneLineAuxData(LPBYTE lpOneLineBuf,int Band,int Line);
	//為輸出碼流準(zhǔn)備緩沖
	void PrepareCodeStreamBuf(int OneBlockLines,LPCTSTR CodeFileName,int AllowError=0);
	void ClearCodeStreamBuf();
	//根據(jù)波段數(shù)創(chuàng)建相應(yīng)數(shù)量的壓縮對(duì)象
	void CreatCompressObject();
	//從輸入的字符串中裝入
	void LoadPredictTable(LPCTSTR lpAsc);
	//創(chuàng)建高光譜數(shù)據(jù)壓縮信息頭,返回頭字節(jié)數(shù)
	int CreatHyperspectralCompressHead(LPBYTE lpBuf,LPBYTE &lpAuxBuf,int &AuxBufL);
	//創(chuàng)建高光譜數(shù)據(jù)塊壓縮信息頭,返回頭字節(jié)數(shù)
	int CreatBlockCompressHead(LPBYTE lpBuf,int Maxerr,int LineBG,int LineN);
	//執(zhí)行壓縮操作
	void DoCompress(int AllowMaxErr,double *lpErrMsePerPixel=NULL,double *lpBitPerPixel=NULL);
	void AppendDataToFile(void *lpBuf,int Bytes);//將數(shù)據(jù)附加到文件尾部
	void WriteDataToFile(void *lpBuf,int Bytes);//寫數(shù)據(jù)到文件
	void EndHyperspectralCode();//中止高光譜編碼器

	//解壓縮過(guò)程
	BOOL LoadCompressBitStream(LPCTSTR CompressFile);//加載壓縮碼流
	int LoadBlockCompressHead(LPBYTE lpCodeStream,int &AllowMaxErr,int &LineBG,int &LineN);
	//準(zhǔn)備壓縮圖像緩沖
	BOOL PrepareConstructionImageBuf(LPCTSTR lpHyperspectralImageFile);
	BOOL PrepareConstructionImageBuf(LPCTSTR *lpBandImageFile);
	//設(shè)置一行重建圖像數(shù)據(jù)
	void SetOneLineImageData(LPBYTE lpOneLineBuf,int Band,int Line);
	//設(shè)置一行輔助數(shù)據(jù)
	int SetOneLineAuxData(LPBYTE lpOneLineBuf,int Band,int Line);
	//完成解壓縮全過(guò)程
	void DoUnCompress();
};
//含預(yù)測(cè)的多波段圖像壓縮實(shí)例
BOOL HyperspectralImageCompress(LPCTSTR lpHyperspectralImageFile,
								LPCTSTR lpPredictBandConfig,
								LPCTSTR CompressFile,
								int AllowMaxError,
								int LinesPerBlock,
								int OneLineImageAuxDataL,
								double *lpErrMsePerPixel,
								double *lpBitPerPixel);
BOOL HyperspectralImageCompress(LPCTSTR *lpHyperspectralImageFile,
								LPCTSTR lpPredictBandConfig,
								LPCTSTR CompressFile,
								int BandNumber,
								int Height,
								int Width,
								int BitsPerPixel,
								int BytesPerPixel,
								int AllowMaxError,
								int LinesPerBlock,
								double *lpErrMsePerPixel,
								double *lpBitPerPixel);
//含預(yù)測(cè)的多波段圖像解壓縮實(shí)例
BOOL HyperspectralImageUnCompress(LPCTSTR lpHyperspectralImageFile,
									LPCTSTR CompressFile);

BOOL HyperspectralImageUnCompress(LPCTSTR *lpHyperspectralImageFile,
									LPCTSTR CompressFile);

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人午夜在线视频| 亚洲高清在线视频| 国产不卡在线播放| 欧美经典一区二区三区| 国产精品18久久久久久vr | 色老汉av一区二区三区| 国产精品久久久久aaaa樱花 | 91啦中文在线观看| 波多野结衣中文字幕一区二区三区| 久久新电视剧免费观看| 成人黄色软件下载| 亚洲一区二区三区视频在线播放| 欧美年轻男男videosbes| 老司机精品视频线观看86 | 成+人+亚洲+综合天堂| 亚洲欧美日韩在线播放| 欧美三片在线视频观看| 麻豆一区二区99久久久久| 国产亚洲精品福利| 日本丰满少妇一区二区三区| 日日摸夜夜添夜夜添精品视频 | 久久久久高清精品| 成人aaaa免费全部观看| 亚洲成a人v欧美综合天堂 | 国产欧美一区二区三区网站| 91免费在线看| 久久99精品国产.久久久久| 国产精品短视频| 欧美一区二区精美| 色综合天天综合网天天狠天天| 丝袜美腿亚洲色图| 国产欧美精品国产国产专区| 欧美丝袜丝交足nylons图片| 国产一区二区不卡在线| 一区二区不卡在线播放| 久久久久久久精| 欧美主播一区二区三区美女| 国产剧情一区二区| 亚洲福利电影网| 国产精品色眯眯| 日韩一级片网站| 色综合久久88色综合天天6| 免费成人av资源网| 亚洲高清三级视频| 国产精品久久精品日日| 欧美一级xxx| 在线视频一区二区三区| 国产999精品久久久久久| 人禽交欧美网站| 亚洲与欧洲av电影| 国产精品盗摄一区二区三区| 精品久久99ma| 欧美日本免费一区二区三区| 99久久精品99国产精品| 国产精品影视在线观看| 美女在线观看视频一区二区| 一级精品视频在线观看宜春院| 国产日韩一级二级三级| 欧美电视剧在线观看完整版| 欧美日韩精品一区视频| 在线精品视频小说1| 久久久精品天堂| 欧美人伦禁忌dvd放荡欲情| 91毛片在线观看| aaa国产一区| 成人激情电影免费在线观看| 国产一区二区美女| 国内不卡的二区三区中文字幕| 日韩中文字幕麻豆| 五月婷婷久久综合| 午夜精品福利一区二区三区蜜桃| 一区二区三区久久| 一区二区三区精品在线观看| 亚洲理论在线观看| 亚洲免费av网站| 亚洲免费伊人电影| 一区二区欧美精品| 亚洲综合一区二区三区| 一个色在线综合| 亚洲成人自拍网| 丝袜美腿亚洲色图| 美国十次综合导航| 国产一区二区三区视频在线播放| 麻豆91在线观看| 国产一区二区在线电影| 国产乱对白刺激视频不卡| 国产成人精品影院| 成人深夜在线观看| 99久精品国产| 欧美三级乱人伦电影| 欧美日韩五月天| 日韩欧美电影在线| 久久久综合精品| 综合精品久久久| 亚洲成人av一区| 久久er99热精品一区二区| 国产做a爰片久久毛片| 国产不卡在线一区| 在线视频欧美区| 3d动漫精品啪啪| 国产亚洲一本大道中文在线| 日韩一区欧美一区| 亚洲成av人片在线观看无码| 日本欧美韩国一区三区| 国产精品一二三在| 在线中文字幕一区二区| 7777精品伊人久久久大香线蕉经典版下载 | 国产精品不卡在线观看| 亚洲品质自拍视频| 日韩精品亚洲专区| 国产精品一区二区三区四区| av毛片久久久久**hd| 欧美性色综合网| 久久久99精品免费观看| 亚洲精品免费在线观看| 免费成人av资源网| 91一区二区在线| 日韩视频123| 亚洲天堂a在线| 久久99精品国产.久久久久| 91蜜桃免费观看视频| 日韩一区二区三区视频| 1024精品合集| 激情综合网av| 精品视频999| 国产精品日产欧美久久久久| 天天爽夜夜爽夜夜爽精品视频| 国产精品一品二品| 在线综合+亚洲+欧美中文字幕| 欧美经典一区二区三区| 奇米影视一区二区三区| 91在线国内视频| 26uuu精品一区二区三区四区在线| 亚洲丝袜美腿综合| 国产精品自在在线| 91麻豆精品国产91久久久使用方法 | 91精品婷婷国产综合久久竹菊| 国产精品女主播在线观看| 成人免费观看av| 日韩一区二区在线观看视频播放| 亚洲人成7777| 成人黄色国产精品网站大全在线免费观看| 欧美精品久久久久久久久老牛影院| 国产精品欧美综合在线| 极品美女销魂一区二区三区免费| 欧美自拍偷拍午夜视频| 中文字幕中文字幕在线一区 | 久久免费电影网| 免费在线看一区| 欧美三级中文字幕在线观看| 国产精品久久久久久久久图文区| 国产一二三精品| 欧美白人最猛性xxxxx69交| 日日摸夜夜添夜夜添国产精品| 在线观看国产精品网站| 亚洲天堂a在线| 99久久精品免费| 亚洲欧美一区二区视频| 成人免费毛片片v| 欧美激情一区二区三区蜜桃视频| 狠狠狠色丁香婷婷综合久久五月| 欧美一区二区福利视频| 日本vs亚洲vs韩国一区三区 | 亚洲色图清纯唯美| 99re在线视频这里只有精品| 国产精品久久久久影院色老大 | 国产成人aaaa| 中文字幕巨乱亚洲| 成人免费毛片片v| 国产精品久久久久一区二区三区| 成人一道本在线| 国产精品美女一区二区在线观看| 国产不卡视频在线观看| 国产精品久久影院| 99久久婷婷国产综合精品电影 | 91精品午夜视频| 免费在线看一区| www激情久久| 成人一区二区三区在线观看| 中文无字幕一区二区三区| 本田岬高潮一区二区三区| 亚洲日本成人在线观看| 色老综合老女人久久久| 亚洲成人在线网站| 日韩一区二区三区av| 国产一区二区精品在线观看| 日本一区二区三区免费乱视频| 国产成人在线免费观看| 中文字幕亚洲区| 欧美美女一区二区在线观看| 美脚の诱脚舐め脚责91| 国产日本一区二区| 色综合天天天天做夜夜夜夜做| 亚洲国产成人精品视频| 日韩一区二区三区四区五区六区| 国产一区视频导航| 亚洲天堂中文字幕| 555www色欧美视频| 国产成人免费av在线| 亚洲午夜激情av|