2 * mlp-mnist is an implementation of a multi-layer neural network.
4 * Copyright (c) 2006 École Polytechnique Fédérale de Lausanne,
7 * Written by Francois Fleuret <francois@fleuret.org>
9 * This file is part of mlp-mnist.
11 * mlp-mnist is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 3 as
13 * published by the Free Software Foundation.
15 * mlp-mnist is distributed in the hope that it will be useful, but
16 * WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with mlp-mnist. If not, see <http://www.gnu.org/licenses/>.
25 // $Id: images.h,v 1.1 2005-12-13 17:19:11 fleuret Exp $
47 int _nb_pics, _nb_obj;
49 PixelMaps *_pixel_maps;
50 unsigned char **_pixels, *_labels;
57 inline int nb_pics() { return _nb_pics; }
58 inline int nb_obj() { return _nb_obj; }
59 inline int width() { return _width; }
60 inline int height() { return _height; }
61 inline unsigned char *pixels(int p) { return _pixels[p]; }
62 inline unsigned char pixel(int p, int x, int y) { return _pixels[p][x + y * _width]; }
63 inline unsigned char label(int p) { return _labels[p]; }
65 void reset_used_pictures();
66 int nb_unused_pictures();
67 int pick_unused_picture();
69 void load_mnist_format(char *picture_file_name, char *label_file_name);
71 void sample_among_unused_pictures(ImageSet &is, int nb);