Mercurial > pylearn
view image_tools.py @ 458:ed6b0b3be8d2
Polished embeddings module
author | Joseph Turian <turian@iro.umontreal.ca> |
---|---|
date | Tue, 07 Oct 2008 19:13:53 -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