Mercurial > pylearn
view image_tools.py @ 507:b8e6de17eaa6
modifs to smallNorb
author | James Bergstra <bergstrj@iro.umontreal.ca> |
---|---|
date | Wed, 29 Oct 2008 18:06:49 -0400 |
parents | d7ed780364b3 |
children |
line wrap: on
line source
import numpy def make_weights_image(mat, xres, yres, i, j, nrow, ncol): """ Displays the filters implemented by a weight matrix. Each filter corresponds to a row of mat and will be represented by a xres*yres image. Units from i to j will be included in the picture. The picture will have nrow rows of filters and ncol columns of filters. Unused spots for filters will be filled with zeros. The return value is a matrix suitable for display with matplotlib's imshow. """ assert j > i n = j - i result = numpy.zeros((ncol * xres, nrow * yres)) submat = mat[i:j] for k, row in enumerate(submat): x = (k % ncol)*xres y = (k / ncol)*yres entry = row.reshape((xres, yres)) lmin, lmax = numpy.min(entry), numpy.max(entry) ldiff = lmax - lmin #entry = (entry - lmin) / ldiff result[x:x + xres, y:y + yres] = entry return result.T