public static double[,] FWT97(double[,] data, int levels) { int w = data.GetLength(0); int h = data.GetLength(1); for (int i = 0; i < levels; i++) { fwt2d(data, w, h); fwt2d(data, w, h); w >>= 1; h >>= 1; } return data; }