global.hpp

来自「《Visual C++小波变换技术与工程实践》作者:靳济芳。书上的代码。第11章」· HPP 代码 · 共 813 行 · 第 1/3 页

HPP
813
字号
23130,7282,40960,32768,10923,32768,32768,32768,
27307,32768,32768,32768,32768,32768,32768,32768,
36285,12511,10923,32768,45875,16384,32768,32768,
16384,23831,4369,32768,8192,10923,32768,32768,
10175,2979,18978,10923,54613,32768,6242,6554,
1820,10923,32768,32768,32768,32768,32768,5461,
28459,593,11886,2030,3121,4681,1292,112,
42130,23831,49152,29127,32768,6554,5461,2048,
65331,64600,63811,63314,42130,19661,49152,32768,
65417,64609,62415,64617,64276,44256,61068,36713,
64887,57525,53620,61375,32768,8192,57344,6554,
63608,49809,49152,62623,32768,15851,58982,34162,
55454,51739,64406,64047,32768,32768,7282,32768,
49152,58756,62805,64990,32768,14895,16384,19418,
57929,24966,58689,31832,32768,16384,10923,6554,
54613,42882,57344,64238,58982,10082,20165,20339,
62687,15061,32768,10923,32768,10923,32768,16384,
59578,34427,32768,16384,32768,7825,32768,7282,
58052,23400,32768,5041,32768,2849,32768,32768,
47663,15073,57344,4096,32768,1176,32768,1320,
24858,410,24576,923,32768,16384,16384,5461,
16384,1365,32768,5461,32768,5699,8192,13107,
46884,2361,23559,424,19661,712,655,182,
58637,2094,49152,9362,8192,85,32768,1228,
65486,49152,65186,49152,61320,32768,57088,25206,
65352,63047,62623,49152,64641,62165,58986,18304,
64171,16384,60855,54613,42130,32768,61335,32768,
58254,58982,49152,32768,60985,35289,64520,31554,
51067,32768,64074,32768,40330,32768,34526,4096,
60855,32768,63109,58254,57672,16384,31009,2567,
23406,32768,44620,10923,32768,32768,32099,10923,
49152,49152,54613,60075,63422,54613,46388,39719,
58982,32768,54613,32768,14247,32768,22938,5041,
32768,49152,32768,32768,25321,6144,29127,10999,
41263,32768,46811,32768,267,4096,426,16384,
32768,19275,49152,32768,1008,1437,5767,11275,
5595,5461,37493,6554,4681,32768,6147,1560,
38229,10923,32768,40960,35747,2521,5999,312,
17052,2521,18808,3641,213,2427,574,32,
51493,42130,42130,53053,11155,312,2069,106,
64406,45197,58982,32768,32768,16384,40960,36864,
65336,64244,60075,61681,65269,50748,60340,20515,
58982,23406,57344,32768,6554,16384,19661,61564,
60855,47480,32768,54613,46811,21701,54909,37826,
32768,58982,60855,60855,32768,32768,39322,49152,
57344,45875,60855,55706,32768,24576,62313,25038,
54613,8192,49152,10923,32768,32768,32768,32768,
32768,19661,16384,51493,32768,14043,40050,44651,
59578,5174,32768,6554,32768,5461,23593,5461,
63608,51825,32768,23831,58887,24032,57170,3298,
39322,12971,16384,49152,1872,618,13107,2114,
58982,25705,32768,60075,28913,949,18312,1815,
48188,114,51493,1542,5461,3855,11360,1163,
58982,7215,54613,21487,49152,4590,48430,1421,
28944,1319,6868,324,1456,232,820,7,
61681,1864,60855,9922,4369,315,6589,14
};

//OBSS_SAIT_991015
U16 enh_intra_v_prob [128] = {
 65476, 64428, 62211, 63560, 52253, 58271, 38098, 31981, 50087, 41042,
 54620, 31532,  8382, 10754,  3844,  6917, 63834, 50444, 50140, 63043,
 58093, 45146, 36768, 13351, 17594, 28777, 39830, 38719,  9768, 21447,
 12340,  9786, 60461, 41489, 27433, 53893, 47246, 11415, 13754, 24965,
 51620, 28011, 11973, 29709, 13878, 22794, 24385,  1558, 57065, 41918,
 25259, 55117, 48064, 12960, 19929,  5937, 25730, 22366,  5204, 32865,
  3415, 14814,  6634,  1155, 64444, 62907, 56337, 63144, 38112, 56527,
 40247, 37088, 60326, 45675, 51248, 15151, 18868, 43723, 14757, 11721,
 62436, 50971, 51738, 59767, 49927, 50675, 38182, 24724, 48447, 47316,
 56628, 36336, 12264, 25893, 24243,  5358, 58717, 56646, 48302, 60515,
 36497, 26959, 43579, 40280, 54092, 20741, 10891,  7504,  8109, 30840,
  6772,  4090, 59810, 61410, 53216, 64127, 32344, 12462, 23132, 19270,
 32232, 24774,  9615, 17750,  1714,  6539,  3237,   152 
};

U16 enh_intra_h_prob [128] = {
 65510, 63321, 63851, 62223, 64959, 62202, 63637, 48019, 57072, 33553, 
 37041,  9527, 53190, 50479, 54232, 12855, 62779, 63980, 49604, 31847, 
 57591, 64385, 40657,  8402, 33878, 54743, 17873,  8707, 34470, 54322, 
 16702,  2192, 58325, 48447,  7345, 31317, 45687, 44236, 16685, 24144, 
 34327, 18724, 10591, 24965,  9247,  7281,  3144,  5921, 59349, 33539, 
 11447,  5543, 58082, 48995, 35630, 10653,  7123, 15893, 23830,   800,  
  3491, 15792,  8930,   905, 65209, 63939, 52634, 62194, 64937, 53948, 
 60081, 46851, 56157, 50930, 35498, 24655, 56331, 59318, 32209,  6872, 
 59172, 64273, 46724, 41200, 53619, 59022, 37941, 20529, 55026, 52858, 
 26402, 45073, 57740, 55485, 20533,  6288, 64286, 55438, 16454, 55656, 
 61175, 45874, 28536, 53762, 58056, 21895,  5482, 39352, 32635, 21633,  
  2137,  4016, 58490, 14100, 18724, 10461, 53459, 15490, 57992, 15128, 
 12034,  4340,  6761,  1859,  5794,  6785,  2412,    35
};

U16 SI_bab_type_prob[1] = { 59808 };
//~OBSS_SAIT_991015

U8 grgchFirstShpCd [243] = {
	0, 3, 2, 3, 2, 0, 2, 3, 0, 0, 3, 2, 0, 2, 3, 0, 2, 3, 
	0, 3, 2, 0, 2, 3, 2, 3, 0, 3, 2, 0, 0, 2, 3, 0, 2, 3, 
	3, 2, 0, 0, 2, 3, 2, 0, 3, 3, 2, 0, 0, 2, 3, 0, 2, 3, 
	2, 3, 0, 0, 2, 3, 3, 2, 0, 2, 3, 0, 0, 2, 3, 3, 2, 0, 
	2, 3, 0, 3, 2, 0, 3, 2, 0, 0, 2, 3, 0, 2, 3, 0, 2, 3, 
	0, 2, 3, 0, 2, 3, 0, 2, 3, 0, 2, 3, 0, 2, 3, 3, 2, 0, 
	0, 2, 3, 3, 2, 0, 3, 2, 0, 0, 2, 3, 3, 0, 2, 3, 2, 0, 
	0, 2, 3, 3, 0, 2, 3, 2, 0, 0, 2, 3, 3, 2, 0, 2, 3, 0, 
	0, 2, 3, 3, 2, 0, 2, 3, 0, 0, 3, 2, 3, 0, 2, 2, 3, 0, 
	0, 3, 2, 2, 3, 0, 2, 3, 0, 0, 2, 3, 0, 2, 3, 0, 2, 3, 
	0, 2, 3, 0, 2, 3, 2, 3, 0, 0, 2, 3, 3, 2, 0, 3, 2, 0, 
	2, 3, 0, 3, 0, 2, 3, 0, 2, 2, 3, 0, 3, 0, 2, 3, 2, 0, 
	0, 3, 2, 3, 2, 0, 2, 3, 0, 2, 3, 0, 3, 0, 2, 3, 2, 0, 
	0, 3, 2, 3, 0, 2, 3, 2, 0 
};

// 10/11/97 Threshold for shape upsampling filter : added by dscho@dspsun.sait.samsung.co.kr
U8 grgchInterpolationFilterTh [256] = {
       3, 6, 6, 7,  4, 7, 7, 8,  6, 7, 5, 8,  7, 8, 8, 9,
       6, 5, 5, 8,  5, 6, 8, 9,  7, 6, 8, 9,  8, 7, 9,10,
       6, 7, 7, 8,  7, 8, 8, 9,  7,10, 8, 9,  8, 9, 9,10,
       7, 8, 6, 9,  6, 9, 9,10,  8, 9, 9,10, 11,10,10,11,
       6, 9, 5, 8,  5, 6, 8, 9,  7,10,10, 9,  8, 7, 9,10,
       7, 6, 8, 9,  8, 7, 7,10,  8, 9, 9,10,  9, 8,10, 9,
       7, 8, 8, 9,  6, 9, 9,10,  8, 9, 9,10,  9,10,10, 9,
       8, 9,11,10,  7,10,10,11,  9,12,10,11, 10,11,11,12,
       6, 7, 5, 8,  5, 6, 8, 9,  5, 6, 6, 9,  8, 9, 9,10,
       5, 8, 8, 9,  6, 7, 9,10,  6, 7, 9,10,  9,10,10,11,
       7, 8, 6, 9,  8, 9, 9,10,  8, 7, 9,10,  9,10,10,11,
       8, 9, 7,10,  9,10, 8,11,  9,10,10,11, 10,11, 9,12,
       7, 8, 6, 9,  8, 9, 9,10, 10, 9, 7,10,  9,10,10,11,
       8, 7, 7,10,  7, 8, 8, 9,  9,10,10,11, 10,11,11,12,
       8, 9, 9,10,  9,10,10, 9,  9,10,10,11, 10,11,11,12,
       9,10,10,11, 10,11,11,12, 10,11,11,12, 11,12,12,13
};
//	Added for error resilient mode by Toshiba(1997-11-14)
Int	g_iMaxHeading;
Int	g_iMaxMiddle;
Int 	g_iMaxTrailing;
// End Toshiba(1997-11-14)

//	Added for error resilience mode By Toshiba(1998-1-16:DP+RVLC)
UInt grgiInterRVLCYAVCLHashingTable [169] = {
   1,   2,   3,   4,   5,   6,   7,   8,   9,  10,
  11,  12,  13,  14,  15,  16,  17,  18,  19,  33,
  34,  35,  36,  37,  38,  39,  40,  41,  42,  65,
  66,  67,  68,  69,  70,  71,  97,  98,  99, 100,
 101, 102, 103, 129, 130, 131, 132, 133, 161, 162,
 163, 164, 193, 194, 195, 196, 225, 226, 227, 228,
 257, 258, 259, 289, 290, 291, 321, 322, 353, 354,
 385, 386, 417, 418, 449, 450, 481, 482, 513, 514,
 545, 546, 577, 609, 641, 673, 705, 737, 769, 801,
 833, 865, 897, 929, 961, 993,1025,1057,1089,1121,
1153,1185,1217,2049,2050,2051,2052,2053,2081,2082,
2083,2084,2085,2113,2114,2115,2145,2146,2177,2178,
2209,2210,2241,2242,2273,2274,2305,2306,2337,2338,
2369,2370,2401,2402,2433,2434,2465,2466,2497,2529,
2561,2593,2625,2657,2689,2721,2753,2785,2817,2849,
2881,2913,2945,2977,3009,3041,3073,3105,3137,3169,
3201,3233,3265,3297,3329,3361,3393,3425,3457
};

UInt grgiIntraRVLCYAVCLHashingTable [169] = {
   1,   2,   3,   4,   5,   6,   7,   8,   9,  10,
  11,  12,  13,  14,  15,  16,  17,  18,  19,  20,
  21,  22,  23,  24,  25,  26,  27,  33,  34,  35,
  36,  37,  38,  39,  40,  41,  42,  43,  44,  45,
  65,  66,  67,  68,  69,  70,  71,  72,  73,  74,
  75,  97,  98,  99, 100, 101, 102, 103, 104, 105,
 129, 130, 131, 132, 133, 134, 161, 162, 163, 164,
 165, 166, 193, 194, 195, 196, 197, 225, 226, 227,
 228, 229, 257, 258, 259, 260, 289, 290, 291, 292,
 321, 322, 353, 354, 385, 386, 417, 449, 481, 513,
 545, 577, 609,2049,2050,2051,2052,2053,2081,2082,
2083,2084,2085,2113,2114,2115,2145,2146,2177,2178,
2209,2210,2241,2242,2273,2274,2305,2306,2337,2338,
2369,2370,2401,2402,2433,2434,2465,2466,2497,2529,
2561,2593,2625,2657,2689,2721,2753,2785,2817,2849,
2881,2913,2945,2977,3009,3041,3073,3105,3137,3169,
3201,3233,3265,3297,3329,3361,3393,3425,3457
};

UInt grgIfNotLastNumOfLevelAtRunInterRVLC [39] = {
	19, 10, 7, 7, 5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2,
	1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
};

UInt grgIfLastNumOfLevelAtRunInterRVLC [45] = {
	5, 5, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 
	1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
};

UInt grgIfNotLastNumOfLevelAtRunIntraRVLC [20] = {
	27, 13, 11, 9, 6, 6, 5, 5, 4, 4, 2, 2, 2, 
	1, 1, 1, 1, 1, 1, 1
};

UInt grgIfLastNumOfLevelAtRunIntraRVLC [45] = {
	5, 5, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 
	1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
};
//	End Toshiba(1998-1-16:DP+RVLC)

#else

// NEWPRED
	class	CNewPredEncoder;
	class	CNewPredDecoder;
	extern	CNewPredEncoder*	g_pNewPredEnc;
	extern	CNewPredDecoder*	g_pNewPredDec;
// ~NEWPRED

extern UInt gWghtC[8][8];
extern UInt gWghtT[8][8];
extern UInt gWghtB[8][8];
extern UInt gWghtR[8][8];
extern UInt gWghtL[8][8];
// RRV insertion
extern UInt gWghtC_RRV[16][16];
extern UInt gWghtT_RRV[16][16];
extern UInt gWghtB_RRV[16][16];
extern UInt gWghtR_RRV[16][16];
extern UInt gWghtL_RRV[16][16];
// ~RRV
extern Int grgiMvRound16 [16];
extern Int grgiMvRound12 [12];
extern Int grgiMvRound8 [8];
extern Int grgiMvRound4 [4];
extern BlockNum gIndexOfCandBlk[5][3];
extern Int rgiDefaultIntraQMatrix [BLOCK_SQUARE_SIZE];
extern Int rgiDefaultInterQMatrix [BLOCK_SQUARE_SIZE]; 
extern Int rgiDefaultIntraQMatrixAlpha [BLOCK_SQUARE_SIZE]; // added by mwi
extern Int rgiDefaultInterQMatrixAlpha [BLOCK_SQUARE_SIZE];  // added by mwi
extern Int grgiStandardZigzag [BLOCK_SQUARE_SIZE];
extern Int grgiHorizontalZigzag [BLOCK_SQUARE_SIZE];
extern Int grgiVerticalZigzag [BLOCK_SQUARE_SIZE];
extern UInt grgIfNotLastNumOfLevelAtRun [27];
extern UInt grgIfLastNumOfLevelAtRun [41];
extern UInt grgiIntraYAVCLHashingTable [102];
extern Int grgiDCSwitchingThreshold [8];
extern Int g_rgiLMAXintra [128]; 
extern Int g_rgiRMAXintra [32];
extern Int g_rgiLMAXinter [128];
extern Int g_rgiRMAXinter [32];
extern U16 gCAEintraProb [1024];
extern U16 gCAEinterProb [512];
//OBSS_SAIT_991015
extern U16 enh_intra_v_prob [128];	
extern U16 enh_intra_h_prob [128];	
extern U16 SI_bab_type_prob [1];	
//~OBSS_SAIT_991015
extern U8 grgchFirstShpCd [243];
extern U8 grgchInterpolationFilterTh [256];
//	Added for error resilient mode by Toshiba(1997-11-14)
extern Int	g_iMaxHeading;
extern Int	g_iMaxMiddle;
extern Int 	g_iMaxTrailing;
// End Toshiba(1997-11-14)
//	Added for error resilience mode By Toshiba(1998-1-16:DP+RVLC)
extern UInt grgiIntraRVLCYAVCLHashingTable [169];
extern UInt grgiInterRVLCYAVCLHashingTable [169];
extern UInt grgIfNotLastNumOfLevelAtRunInterRVLC [39];
extern UInt grgIfLastNumOfLevelAtRunInterRVLC [45];
extern UInt grgIfNotLastNumOfLevelAtRunIntraRVLC [20];
extern UInt grgIfLastNumOfLevelAtRunIntraRVLC [45];
//	End Toshiba(1998-1-16:DP+RVLC)
#endif

#ifdef __GLOBAL_VAR_
#undef __GLOBAL_VAR_
#endif

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?