List <List <Bitmap> > Byte2BitList(List <List <byte[, ]> > input) { List <List <Bitmap> > output = new List <List <Bitmap> >(); for (int i = 0; i < input.Count; i++) { List <Bitmap> temp = new List <Bitmap>(); for (int j = 0; j < input[i].Count; j++) { Matrix2Bitmap = new Accord.Imaging.Converters.MatrixToImage(); Bitmap bitout = new Bitmap(input[i][j].GetLength(0), input[i][j].GetLength(1)); Matrix2Bitmap.Convert(input[i][j], out bitout); Bitmap downbit = new Bitmap(bitout, new Size(input[i][j].GetLength(0) / 10, input[i][j].GetLength(1) / 10)); temp.Add(downbit); } output.Add(temp); } return(output); }