📄 adaptive_filter_orig.h
字号:
#ifdef DIRECTIONAL_FILTER
int TwoDEquationPattern_orig[15][SQR_FILTER] = // get equation number for symmetric filter coefficients
{
{ 0, 1, 2, 3, 4, 5,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, // a_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 1, 2, 2, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, // b_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 5, 4, 3, 2, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, // c_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 1, 2, 3, 4, 5,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, // d_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 1, 2, 3, 4, 5,
1, 6, 7, 8, 9, 10,
2, 7, 11, 12, 13, 14, // e_pos
3, 8, 12, 15, 16, 17,
4, 9, 13, 16, 18, 19,
5, 10, 14, 17, 19, 20 },
{ 0, 1, 2, 2, 1, 0,
3, 4, 5, 5, 4, 3,
6, 7, 8, 8, 7, 6, // f_pos
9, 10, 11, 11, 10, 9,
12, 13, 14, 14, 13, 12,
15, 16, 17, 17, 16, 15 },
{ 5, 4, 3, 2, 1, 0,
10, 9, 8, 7, 6, 1,
14, 13, 12, 11, 7, 2, // g_pos
17, 16, 15, 12, 8, 3,
19, 18, 16, 13, 9, 4,
20, 19, 17, 14, 10, 5 },
{ 0, 1, 2, 2, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, // h_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 3, 6, 9, 12, 15,
1, 4, 7, 10, 13, 16,
2, 5, 8, 11, 14, 17, // i_pos
2, 5, 8, 11, 14, 17,
1, 4, 7, 10, 13, 16,
0, 3, 6, 9, 12, 15 },
{ 0, 1, 2, 2, 1, 0,
1, 3, 4, 4, 3, 1,
2, 4, 5, 5, 4, 2, // j_pos
2, 4, 5, 5, 4, 2,
1, 3, 4, 4, 3, 1,
0, 1, 2, 2, 1, 0 },
{15, 12, 9, 6, 3, 0,
16, 13, 10, 7, 4, 1,
17, 14, 11, 8, 5, 2, // k_pos
17, 14, 11, 8, 5, 2,
16, 13, 10, 7, 4, 1,
15, 12, 9, 6, 3, 0 },
{ 5, 4, 3, 2, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, // l_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 5, 10, 14, 17, 19, 20,
4, 9, 13, 16, 18, 19,
3, 8, 12, 15, 16, 17, // m_pos
2, 7, 11, 12, 13, 14,
1, 6, 7, 8, 9, 10,
0, 1, 2, 3, 4, 5 },
{15, 16, 17, 17, 16, 15,
12, 13, 14, 14, 13, 12,
9, 10, 11, 11, 10, 9, // n_pos
6, 7, 8, 8, 7, 6,
3, 4, 5, 5, 4, 3,
0, 1, 2, 2, 1, 0 },
{20, 19, 17, 14, 10, 5,
19, 18, 16, 13, 9, 4,
17, 16, 15, 12, 8, 3, // o_pos
14, 13, 12, 11, 7, 2,
10, 9, 8, 7, 6, 1,
5, 4, 3, 2, 1, 0 }
};
double STANDARD_2D_FILTER_orig[15][SQR_FILTER] =
{
{ 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
1.0/64.0 , -5.0/64.0 , 52.0/64.0 , 20.0/64.0 , -5.0/64.0 , 1.0/64.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0
}, // a_pos
{ 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
1.0/32.0 , -5.0/32.0 , 20.0/32.0 , 20.0/32.0 , -5.0/32.0 , 1.0/32.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0
}, // b_pos
{ 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
1.0/64.0 , -5.0/64.0 , 20.0/64.0 , 52.0/64.0 , -5.0/64.0 , 1.0/64.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0
}, // c_pos
{ 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 52.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 20.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0
}, // d_pos
{ 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
1.0/64.0 , -5.0/64.0 , 40.0/64.0 , 20.0/64.0 , -5.0/64.0 , 1.0/64.0 ,
0.0 , 0.0 , 20.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0
}, // e_pos
{ 1.0/2048.0, -5.0/2048.0, 20.0/2048.0, 20.0/2048.0, -5.0/2048.0, 1.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -100.0/2048.0, -100.0/2048.0, 25.0/2048.0, -5.0/2048.0,
52.0/2048.0, -260.0/2048.0, 1040.0/2048.0, 1040.0/2048.0, -260.0/2048.0, 52.0/2048.0,
20.0/2048.0, -100.0/2048.0, 400.0/2048.0, 400.0/2048.0, -100.0/2048.0, 20.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -100.0/2048.0, -100.0/2048.0, 25.0/2048.0, -5.0/2048.0,
1.0/2048.0, -5.0/2048.0, 20.0/2048.0, 20.0/2048.0, -5.0/2048.0, 1.0/2048.0
}, // f_pos
{ 0.0 , 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 ,
1.0/64.0 , -5.0/64.0 , 20.0/64.0 , 40.0/64.0 , -5.0/64.0 , 1.0/64.0 ,
0.0 , 0.0 , 0.0 , 20.0/64.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0
}, // g_pos
{ 0.0 , 0.0 , 1.0/32.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/32.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 20.0/32.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 20.0/32.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/32.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 1.0/32.0 , 0.0 , 0.0 , 0.0
}, // h_pos
{ 1.0/2048.0, -5.0/2048.0, 52.0/2048.0, 20.0/2048.0, -5.0/2048.0, 1.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -260.0/2048.0, -100.0/2048.0, 25.0/2048.0, -5.0/2048.0,
20.0/2048.0, -100.0/2048.0, 1040.0/2048.0, 400.0/2048.0, -100.0/2048.0, 20.0/2048.0,
20.0/2048.0, -100.0/2048.0, 1040.0/2048.0, 400.0/2048.0, -100.0/2048.0, 20.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -260.0/2048.0, -100.0/2048.0, 25.0/2048.0, -5.0/2048.0,
1.0/2048.0, -5.0/2048.0, 52.0/2048.0, 20.0/2048.0, -5.0/2048.0, 1.0/2048.0
}, // i_pos
{ 1.0/1024.0, -5.0/1024.0, 20.0/1024.0, 20.0/1024.0, -5.0/1024.0, 1.0/1024.0,
-5.0/1024.0, 25.0/1024.0, -100.0/1024.0, -100.0/1024.0, 25.0/1024.0, -5.0/1024.0,
20.0/1024.0, -100.0/1024.0, 400.0/1024.0, 400.0/1024.0, -100.0/1024.0, 20.0/1024.0,
20.0/1024.0, -100.0/1024.0, 400.0/1024.0, 400.0/1024.0, -100.0/1024.0, 20.0/1024.0,
-5.0/1024.0, 25.0/1024.0, -100.0/1024.0, -100.0/1024.0, 25.0/1024.0, -5.0/1024.0,
1.0/1024.0, -5.0/1024.0, 20.0/1024.0, 20.0/1024.0, -5.0/1024.0, 1.0/1024.0
}, // j_pos
{ 1.0/2048.0, -5.0/2048.0, 20.0/2048.0, 52.0/2048.0, -5.0/2048.0, 1.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -100.0/2048.0, -260.0/2048.0, 25.0/2048.0, -5.0/2048.0,
20.0/2048.0, -100.0/2048.0, 400.0/2048.0, 1040.0/2048.0, -100.0/2048.0, 20.0/2048.0,
20.0/2048.0, -100.0/2048.0, 400.0/2048.0, 1040.0/2048.0, -100.0/2048.0, 20.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -100.0/2048.0, -260.0/2048.0, 25.0/2048.0, -5.0/2048.0,
1.0/2048.0, -5.0/2048.0, 20.0/2048.0, 52.0/2048.0, -5.0/2048.0, 1.0/2048.0
}, // i_pos
{ 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 20.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 52.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0
}, // l_pos
{ 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 20.0/64.0 , 0.0 , 0.0 , 0.0 ,
1.0/64.0 , -5.0/64.0 , 40.0/64.0 , 20.0/64.0 , -5.0/64.0 , 1.0/64.0 ,
0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 , 0.0
}, // m_pos
{ 1.0/2048.0, -5.0/2048.0, 20.0/2048.0, 20.0/2048.0, -5.0/2048.0, 1.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -100.0/2048.0, -100.0/2048.0, 25.0/2048.0, -5.0/2048.0,
20.0/2048.0, -100.0/2048.0, 400.0/2048.0, 400.0/2048.0, -100.0/2048.0, 20.0/2048.0,
52.0/2048.0, -260.0/2048.0, 1040.0/2048.0, 1040.0/2048.0, -260.0/2048.0, 52.0/2048.0,
-5.0/2048.0, 25.0/2048.0, -100.0/2048.0, -100.0/2048.0, 25.0/2048.0, -5.0/2048.0,
1.0/2048.0, -5.0/2048.0, 20.0/2048.0, 20.0/2048.0, -5.0/2048.0, 1.0/2048.0
}, // n_pos
{ 0.0 , 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 20.0/64.0 , 0.0 , 0.0 ,
1.0/64.0 , -5.0/64.0 , 20.0/64.0, 40.0/64.0 , -5.0/64.0 , 1.0/64.0 ,
0.0 , 0.0 , 0.0 , -5.0/64.0 , 0.0 , 0.0 ,
0.0 , 0.0 , 0.0 , 1.0/64.0 , 0.0 , 0.0
} // o_pos
};
int TwoDSymmetricPattern_orig[15][SQR_FILTER] = // get one filter from another one, if symmetry properties are used (used e.g. in ExtendFilterCoefficients)
{
{ 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
12, 13, 14, 15, 16, 17, // a_pos - not used actually
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
12, 13, 14, 14, 13, 12, // b_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
17, 16, 15, 14, 13, 12, // c_pos
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0 },
{ 0, 0, 12, 0, 0, 0,
0, 0, 13, 0, 0, 0,
0, 0, 14, 0, 0, 0, // d_pos
0, 0, 15, 0, 0, 0,
0, 0, 16, 0, 0, 0,
0, 0, 17, 0, 0, 0 },
{ 0, 1, 2, 3, 4, 5,
1, 7, 8, 9, 10, 11,
2, 8, 14, 15, 16, 17, // e_pos
3, 9, 15, 21, 22, 23,
4, 10, 16, 22, 28, 29,
5, 11, 17, 23, 29, 35 },
{ 0, 1, 2, 2, 1, 0,
6, 7, 8, 8, 7, 6,
12, 13, 14, 14, 13, 12, // f_pos
18, 19, 20, 20, 19, 18,
24, 25, 26, 26, 25, 24,
30, 31, 32, 32, 31, 30 },
{ 5, 4, 3, 2, 1, 0,
11, 10, 9, 8, 7, 1,
17, 16, 15, 14, 8, 2, // g_pos
23, 22, 21, 15, 9, 3,
29, 28, 22, 16, 10, 4,
35, 29, 23, 17, 11, 5 },
{ 0, 0, 12, 0, 0, 0,
0, 0, 13, 0, 0, 0,
0, 0, 14, 0, 0, 0, // h_pos
0, 0, 14, 0, 0, 0,
0, 0, 13, 0, 0, 0,
0, 0, 12, 0, 0, 0 },
{ 0, 6, 12, 18, 24, 30,
1, 7, 13, 19, 25, 31,
2, 8, 14, 20, 26, 32, // i_pos
2, 8, 14, 20, 26, 32,
1, 7, 13, 19, 25, 31,
0, 6, 12, 18, 24, 30 },
{ 0, 1, 2, 2, 1, 0,
1, 7, 8, 8, 7, 1,
2, 8, 14, 14, 8, 2, // j_pos
2, 8, 14, 14, 8, 2,
1, 7, 8, 8, 7, 1,
0, 1, 2, 2, 1, 0 },
{30, 24, 18, 12, 6, 0,
31, 25, 19, 13, 7, 1,
32, 26, 20, 14, 8, 2, // k_pos
32, 26, 20, 14, 8, 2,
31, 25, 19, 13, 7, 1,
30, 24, 18, 12, 6, 0 },
{ 0, 0, 17, 0, 0, 0,
0, 0, 16, 0, 0, 0,
0, 0, 15, 0, 0, 0, // l_pos
0, 0, 14, 0, 0, 0,
0, 0, 13, 0, 0, 0,
0, 0, 12, 0, 0, 0 },
{ 5, 11, 17, 23, 29, 35,
4, 10, 16, 22, 28, 29,
3, 9, 15, 21, 22, 23, // m_pos
2, 8, 14, 15, 16, 17,
1, 7, 8, 9, 10, 11,
0, 1, 2, 3, 4, 5 },
{30, 31, 32, 32, 31, 30,
24, 25, 26, 26, 25, 24,
18, 19, 20, 20, 19, 18, // n_pos
12, 13, 14, 14, 13, 12,
6, 7, 8, 8, 7, 6,
0, 1, 2, 2, 1, 0 },
{35, 29, 23, 17, 11, 5,
29, 28, 22, 16, 10, 4,
23, 22, 21, 15, 9, 3, // o_pos
17, 16, 15, 14, 8, 2,
11, 10, 9, 8, 7, 1,
5, 4, 3, 2, 1, 0 }
};
int SymmetryPosition_orig[15] = {1,1,0,0,1,1,0,0,0,1,0,0,0,0,0}; // if 0, the position is copied from another one
int Is1DPosition_orig[15] = {1,1,1,1,0,0,0,1,0,0,0,1,0,0,0}; // if 0, the position is a 2D one
int IsDiagonal1D_orig[15] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // if 1, the filter alighned NW-SE, 2 - NE-SW
//int POS_EQUATION_NUMBER_orig[15] = {6,3,6,6,18, 6, 3,18, 6,18, 6,6,18,6};
int POS_EQUATION_NUMBER_orig[15] = { 6,3,6,
6,21,18,21,
3, 18,6,18,
6,21,18,21 };
int FILTER_NEW_SUB_POS_orig[15] = { a_pos, b_pos, a_pos,
a_pos, e_pos, f_pos, e_pos,
b_pos, f_pos, j_pos, f_pos,
a_pos, e_pos, f_pos, e_pos };
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -