The following are code examples for showing how to use . They are extracted from open source Python projects. You can vote up the examples you like or vote down the exmaples you don’t like. You can also save this page to your account.
Example 1
def compress_image(img, num_clusters): # Convert input image into (num_samples, num_features) # array to run kmeans clustering algorithm X = img.reshape((-1, 1)) # Run kmeans on input data kmeans = cluster.KMeans(n_clusters=num_clusters, n_init=4, random_state=5) kmeans.fit(X) centroids = kmeans.cluster_centers_.squeeze() labels = kmeans.labels_ # Assign each value to the nearest centroid and # reshape it to the original image shape input_image_compressed = np.choose(labels, centroids).reshape(img.shape) return input_image_compressed
Example 2
def hsv2rgb(hsv): hsv = np.array(hsv) input_shape = hsv.shape hsv = hsv.reshape(-1, 3) h, s, v = hsv[:, 0] / 255, hsv[:, 1] / 255, hsv[:, 2] i = np.uint32(h * 6.0) # pylint: disable=no-member f = (h * 6.0) - i p = v * (1.0 - s) q = v * (1.0 - s * f) t = v * (1.0 - s * (1.0 - f)) i = i % 6 rgb = np.zeros_like(hsv, np.uint8) v, t, p, q = v.reshape(-1, 1), t.reshape(-1, 1), p.reshape(-1, 1), q.reshape(-1, 1) # This could probably be much faster if replaced with np.choose rgb[i == 0] = np.hstack([v, t, p])[i == 0] rgb[i == 1] = np.hstack([q, v, p])[i == 1] rgb[i == 2] = np.hstack([p, v, t])[i == 2] rgb[i == 3] = np.hstack([p, q, v])[i == 3] rgb[i == 4] = np.hstack([t, p, v])[i == 4] rgb[i == 5] = np.hstack([v, p, q])[i == 5] rgb[s == 0.0] = np.hstack([v, v, v])[s == 0.0] return rgb.reshape(input_shape)
Example 3
def find_ray_grids(self, coord, axis): """ Returns the (objects, indices) of grids that an (x,y) ray intersects along *axis* """ # Let's figure out which grids are on the slice mask=np.ones(self.num_grids) # So if gRE > coord, we get a mask, if not, we get a zero # if gLE > coord, we get a zero, if not, mask # Thus, if the coordinate is between the two edges, we win! xax = self.ds.coordinates.x_axis[axis] yax = self.ds.coordinates.y_axis[axis] np.choose(np.greater(self.grid_right_edge[:,xax],coord[0]),(0,mask),mask) np.choose(np.greater(self.grid_left_edge[:,xax],coord[0]),(mask,0),mask) np.choose(np.greater(self.grid_right_edge[:,yax],coord[1]),(0,mask),mask) np.choose(np.greater(self.grid_left_edge[:,yax],coord[1]),(mask,0),mask) ind = np.where(mask == 1) return self.grids[ind], ind
Example 4
def forward(self, inputs): x, t = inputs if chainer.is_debug(): if not ((0 <= t).all() and (t < x.shape[1]).all()): msg = 'Each label `t` need to satisfty `0 <= t < x.shape[1]`' raise ValueError(msg) xp = cuda.get_array_module(x) if xp is numpy: # This code is equivalent to `t.choose(x.T)`, but `numpy.choose` # does not work when `x.shape[1] > 32`. return x[six.moves.range(t.size), t], else: y = cuda.elementwise( 'S t, raw T x', 'T y', 'int ind[] = {i, t}; y = x[ind];', 'getitem_fwd' )(t, x) return y,
Example 5
def raster_copy_with_nodata( s_fh, s_xoff, s_yoff, s_xsize, s_ysize, s_band_n, t_fh, t_xoff, t_yoff, t_xsize, t_ysize, t_band_n, nodata ): try: import numpy as Numeric except ImportError: import Numeric s_band = s_fh.GetRasterBand( s_band_n ) t_band = t_fh.GetRasterBand( t_band_n ) data_src = s_band.ReadAsArray( s_xoff, s_yoff, s_xsize, s_ysize, t_xsize, t_ysize ) data_dst = t_band.ReadAsArray( t_xoff, t_yoff, t_xsize, t_ysize ) nodata_test = Numeric.equal(data_src,nodata) to_write = Numeric.choose( nodata_test, (data_src, data_dst) ) t_band.WriteArray( to_write, t_xoff, t_yoff ) return 0 # =============================================================================
Example 6
def raster_copy_with_mask( s_fh, s_xoff, s_yoff, s_xsize, s_ysize, s_band_n, t_fh, t_xoff, t_yoff, t_xsize, t_ysize, t_band_n, m_band ): try: import numpy as Numeric except ImportError: import Numeric s_band = s_fh.GetRasterBand( s_band_n ) t_band = t_fh.GetRasterBand( t_band_n ) data_src = s_band.ReadAsArray( s_xoff, s_yoff, s_xsize, s_ysize, t_xsize, t_ysize ) data_mask = m_band.ReadAsArray( s_xoff, s_yoff, s_xsize, s_ysize, t_xsize, t_ysize ) data_dst = t_band.ReadAsArray( t_xoff, t_yoff, t_xsize, t_ysize ) mask_test = Numeric.equal(data_mask, 0) to_write = Numeric.choose( mask_test, (data_src, data_dst) ) t_band.WriteArray( to_write, t_xoff, t_yoff ) return 0 # =============================================================================
Example 7
def test_broadcasted(self): a = tensor.scalar(dtype='int32') b = tensor.matrix(dtype='float32') # Test when a is broadcastable A = 3 B = numpy.asarray(numpy.random.rand(4, 4), dtype='float32') for m in self.modes: f = function([a, b], choose(a, b, mode=m)) t_c = f(A, B) n_c = numpy.choose(A, B, mode=m) assert numpy.allclose(t_c, n_c) # Test when the result should be broadcastable b = theano.tensor.col(dtype='float32') B = numpy.asarray(numpy.random.rand(4, 1), dtype='float32') for m in self.modes: f = function([a, b], choose(a, b, mode=m)) assert choose(a, b, mode=m).broadcastable[0] t_c = f(A, B) n_c = numpy.choose(A, B, mode=m) assert numpy.allclose(t_c, n_c)
Example 8
def ___test_infer_shape_tuple(self): a = tensor.tensor3(dtype='int32') b = tensor.tensor3(dtype='int32') c = tensor.tensor3(dtype='int32') A = numpy.asarray([1, 0], dtype='int32').reshape((2, 1, 1)) B = numpy.asarray(numpy.random.rand(1, 4, 1), dtype='int32') C = numpy.asarray(numpy.random.rand(1, 1, 7), dtype='int32') f = function([a, b, c], choose(a, (b, c))) shape = (2, 4, 7) assert numpy.allclose(f(A, B, C).shape, shape) self._compile_and_check([a, b, c], # theano.function inputs [self.op(a, (b, c))], # theano.function outputs # Always use not square matrix! # inputs data [A, B, C], # Op that should be removed from the graph. self.op_class)
Example 9
def th_external_dG(self, seqs): # Make a boolean vector representing which toeholds' external 3' context dG # is further from the target dG than than their external 5' context dG dG_external3 = self.th_external_3_dG(seqs) dG_external5 = self.th_external_5_dG(seqs) external_further_bool = np.abs(dG_external3 - self.targetdG) >\ np.abs(dG_external5 - self.targetdG) return np.choose(external_further_bool, [dG_external5, dG_external3])
Example 10
def matching_uniform(self, seqs): # Make a boolean vector representing which toeholds' external context dG # is further from the target dG than than their internal context dG dG_external = self.th_external_dG(seqs) dG_internal = self.th_internal_dG(seqs) external_further_bool = np.abs(dG_external - self.targetdG) >\ np.abs(dG_internal - self.targetdG) return np.choose(external_further_bool, [dG_internal, dG_external])
Example 11
def matching_uniform(self, seqs): # Make a boolean vector representing which toeholds' external context dG # is further from the target dG than than their internal context dG dG_external = self.th_external_dG(seqs) dG_internal = self.th_internal_dG(seqs) external_further_bool = np.abs(dG_external - self.targetdG) >\ np.abs(dG_internal - self.targetdG) return np.choose(external_further_bool, [dG_internal, dG_external])
Example 12
def _get_hidden_layer_connectivity(self, layerIdx): layer_size = self._hidden_sizes[layerIdx] if layerIdx == 0: p_vals = self._get_p(T.min(self.layers_connectivity[layerIdx])) else: p_vals = self._get_p(T.min(self.layers_connectivity_updates[layerIdx-1])) # #Implementations of np.choose in theano GPU # return T.nonzero(self._mrng.multinomial(pvals=[self._p_vals] * layer_size, dtype=theano.config.floatX))[1].astype(dtype=theano.config.floatX) # return T.argmax(self._mrng.multinomial(pvals=[self._p_vals] * layer_size, dtype=theano.config.floatX), axis=1) return T.sum(T.cumsum(self._mrng.multinomial(pvals=T.tile(p_vals[::-1][None, :], (layer_size, 1)), dtype=theano.config.floatX), axis=1), axis=1)
Example 13
def test_choose(self): choices = [[0, 1, 2], [3, 4, 5], [5, 6, 7]] tgt = [5, 1, 5] a = [2, 0, 1] out = np.choose(a, choices) assert_equal(out, tgt)
Example 14
def clip(self, a, m, M, out=None): # use slow-clip selector = np.less(a, m) + 2*np.greater(a, M) return selector.choose((a, m, M), out=out) # Handy functions
Example 15
def test_mixed(self): c = np.array([True, True]) a = np.array([True, True]) assert_equal(np.choose(c, (a, 1)), np.array([1, 1]))
Example 16
def test_choose(self): x = 2*np.ones((3,), dtype=int) y = 3*np.ones((3,), dtype=int) x2 = 2*np.ones((2, 3), dtype=int) y2 = 3*np.ones((2, 3), dtype=int) ind = np.array([0, 0, 1]) A = ind.choose((x, y)) assert_equal(A, [2, 2, 3]) A = ind.choose((x2, y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]]) A = ind.choose((x, y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 17
def test_all(self): a = np.random.normal(0, 1, (4, 5, 6, 7, 8)) for i in range(a.ndim): amax = a.max(i) aargmax = a.argmax(i) axes = list(range(a.ndim)) axes.remove(i) assert_(np.all(amax == aargmax.choose(*a.transpose(i,*axes))))
Example 18
def test_basic(self): A = np.choose(self.ind, (self.x, self.y)) assert_equal(A, [2, 2, 3])
Example 19
def test_broadcast1(self): A = np.choose(self.ind, (self.x2, self.y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 20
def test_broadcast2(self): A = np.choose(self.ind, (self.x, self.y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 21
def _next_frame(self): sources = np.random.randint(0, 6, len(self.my_pixels)) colors = np.array([RED, BLUE, GREEN, BLACK, BLACK, BLACK]) for i in range(3): c = np.choose(sources, colors[:, i]) self.my_pixels[:, i] = c
Example 22
def _next_frame(self): sources = np.random.randint(0, 7, len(self.my_pixels)) colors = np.concatenate((self.colors, [BLACK, BLACK, BLACK])) for i in range(3): c = np.choose(sources, colors[:, i]) self.my_pixels[:, i] = c
Example 23
def _next_frame(self): self.colors[:, 0] = self.colors[:, 0] + 119 self.sources = np.random.randint(0, 7, len(self.my_pixels)) colors = np.concatenate((self.colors, [BLACK, BLACK, BLACK])) for i in range(3): c = np.choose(self.sources, colors[:, i]) self.my_pixels[:, i] = c
Example 24
def test_choose(self): choices = [[0, 1, 2], [3, 4, 5], [5, 6, 7]] tgt = [5, 1, 5] a = [2, 0, 1] out = np.choose(a, choices) assert_equal(out, tgt)
Example 25
def clip(self, a, m, M, out=None): # use slow-clip selector = np.less(a, m) + 2*np.greater(a, M) return selector.choose((a, m, M), out=out) # Handy functions
Example 26
def test_mixed(self): c = np.array([True, True]) a = np.array([True, True]) assert_equal(np.choose(c, (a, 1)), np.array([1, 1]))
Example 27
def test_choose(self): x = 2*np.ones((3,), dtype=int) y = 3*np.ones((3,), dtype=int) x2 = 2*np.ones((2, 3), dtype=int) y2 = 3*np.ones((2, 3), dtype=int) ind = np.array([0, 0, 1]) A = ind.choose((x, y)) assert_equal(A, [2, 2, 3]) A = ind.choose((x2, y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]]) A = ind.choose((x, y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 28
def test_all(self): a = np.random.normal(0, 1, (4, 5, 6, 7, 8)) for i in range(a.ndim): amax = a.max(i) aargmax = a.argmax(i) axes = list(range(a.ndim)) axes.remove(i) assert_(np.all(amax == aargmax.choose(*a.transpose(i,*axes))))
Example 29
def test_basic(self): A = np.choose(self.ind, (self.x, self.y)) assert_equal(A, [2, 2, 3])
Example 30
def test_broadcast1(self): A = np.choose(self.ind, (self.x2, self.y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 31
def test_broadcast2(self): A = np.choose(self.ind, (self.x, self.y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 32
def _read_particles(self): if not os.path.exists(self.particle_filename): return with open(self.particle_filename, 'r') as f: lines = f.readlines() self.num_stars = int(lines[0].strip().split(' ')[0]) for num, line in enumerate(lines[1:]): particle_position_x = float(line.split(' ')[1]) particle_position_y = float(line.split(' ')[2]) particle_position_z = float(line.split(' ')[3]) coord = [particle_position_x, particle_position_y, particle_position_z] # for each particle, determine which grids contain it # copied from object_finding_mixin.py mask = np.ones(self.num_grids) for i in range(len(coord)): np.choose(np.greater(self.grid_left_edge.d[:,i],coord[i]), (mask,0), mask) np.choose(np.greater(self.grid_right_edge.d[:,i],coord[i]), (0,mask), mask) ind = np.where(mask == 1) selected_grids = self.grids[ind] # in orion, particles always live on the finest level. # so, we want to assign the particle to the finest of # the grids we just found if len(selected_grids) != 0: grid = sorted(selected_grids, key=lambda grid: grid.Level)[-1] ind = np.where(self.grids == grid)[0][0] self.grid_particle_count[ind] += 1 self.grids[ind].NumberOfParticles += 1 # store the position in the *.sink file for fast access. try: self.grids[ind]._particle_line_numbers.append(num + 1) except AttributeError: self.grids[ind]._particle_line_numbers = [num + 1]
Example 33
def _read_particle_file(self, fn): """actually reads the orion particle data file itself. """ if not os.path.exists(fn): return with open(fn, 'r') as f: lines = f.readlines() self.num_stars = int(lines[0].strip()[0]) for num, line in enumerate(lines[1:]): particle_position_x = float(line.split(' ')[1]) particle_position_y = float(line.split(' ')[2]) particle_position_z = float(line.split(' ')[3]) coord = [particle_position_x, particle_position_y, particle_position_z] # for each particle, determine which grids contain it # copied from object_finding_mixin.py mask = np.ones(self.num_grids) for i in range(len(coord)): np.choose(np.greater(self.grid_left_edge.d[:,i],coord[i]), (mask,0), mask) np.choose(np.greater(self.grid_right_edge.d[:,i],coord[i]), (0,mask), mask) ind = np.where(mask == 1) selected_grids = self.grids[ind] # in orion, particles always live on the finest level. # so, we want to assign the particle to the finest of # the grids we just found if len(selected_grids) != 0: grid = sorted(selected_grids, key=lambda grid: grid.Level)[-1] ind = np.where(self.grids == grid)[0][0] self.grid_particle_count[ind] += 1 self.grids[ind].NumberOfParticles += 1 # store the position in the particle file for fast access. try: self.grids[ind]._particle_line_numbers.append(num + 1) except AttributeError: self.grids[ind]._particle_line_numbers = [num + 1] return True
Example 34
def find_point(self, coord): """ Returns the (objects, indices) of grids containing an (x,y,z) point """ mask=np.ones(self.num_grids) for i in range(len(coord)): np.choose(np.greater(self.grid_left_edge[:,i],coord[i]), (mask,0), mask) np.choose(np.greater(self.grid_right_edge[:,i],coord[i]), (0,mask), mask) ind = np.where(mask == 1) return self.grids[ind], ind
Example 35
def find_slice_grids(self, coord, axis): """ Returns the (objects, indices) of grids that a slice intersects along *axis* """ # Let's figure out which grids are on the slice mask = np.ones(self.num_grids) # So if gRE > coord, we get a mask, if not, we get a zero # if gLE > coord, we get a zero, if not, mask # Thus, if the coordinate is between the edges, we win! np.choose(np.greater(self.grid_right_edge[:,axis],coord),(0,mask),mask) np.choose(np.greater(self.grid_left_edge[:,axis],coord),(mask,0),mask) ind = np.where(mask == 1) return self.grids[ind], ind
Example 36
def forward_cpu(self, x): col = conv.im2col_cpu( x[0], self.kh, self.kw, self.sy, self.sx, self.ph, self.pw, pval=-float('inf'), cover_all=self.cover_all) n, c, kh, kw, out_h, out_w = col.shape col = col.reshape(n, c, kh * kw, out_h, out_w) # We select maximum twice, since the implementation using numpy.choose # hits its bug when kh * kw >= 32. self.indexes = col.argmax(axis=2) y = col.max(axis=2) return y,
Example 37
def select_item(x, t): """Select elements stored in given indices. This function returns ``t.choose(x.T)``, that means ``y[i] == x[i, t[i]]`` for all ``i``. Args: x (Variable): Variable storing arrays. t (Variable): Variable storing index numbers. Returns: ~chainer.Variable: Variable that holds ``t``-th element of ``x``. """ return SelectItem()(x, t)
Example 38
def test_mixed(self): c = np.array([True, True]) a = np.array([True, True]) assert_equal(np.choose(c, (a, 1)), np.array([1, 1]))
Example 39
def test_all(self): a = np.random.normal(0, 1, (4, 5, 6, 7, 8)) for i in range(a.ndim): amax = a.max(i) aargmax = a.argmax(i) axes = list(range(a.ndim)) axes.remove(i) assert_(np.all(amax == aargmax.choose(*a.transpose(i,*axes))))
Example 40
def test_all(self): a = np.random.normal(0, 1, (4, 5, 6, 7, 8)) for i in range(a.ndim): amin = a.min(i) aargmin = a.argmin(i) axes = list(range(a.ndim)) axes.remove(i) assert_(np.all(amin == aargmin.choose(*a.transpose(i,*axes))))
Example 41
def test_basic(self): A = np.choose(self.ind, (self.x, self.y)) assert_equal(A, [2, 2, 3])
Example 42
def test_broadcast1(self): A = np.choose(self.ind, (self.x2, self.y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 43
def array_colorkey (surface): """pygame.numpyarray.array_colorkey (Surface): return array copy the colorkey values into a 2d array Create a new array with the colorkey transparency value from each pixel. If the pixel matches the colorkey it will be fully tranparent; otherwise it will be fully opaque. This will work on any type of Surface format. If the image has no colorkey a solid opaque array will be returned. This function will temporarily lock the Surface as pixels are copied. """ colorkey = surface.get_colorkey () if colorkey == None: # No colorkey, return a solid opaque array. array = numpy.empty (surface.get_width () * surface.get_height (), numpy.uint8) array.fill (0xff) array.shape = surface.get_width (), surface.get_height () return array # Taken from from Alex Holkner's pygame-ctypes package. Thanks a # lot. array = array2d (surface) # Check each pixel value for the colorkey and mark it as opaque or # transparent as needed. val = surface.map_rgb (colorkey) array = numpy.choose (numpy.equal (array, val), (numpy.uint8 (0xff), numpy.uint8 (0))) array.shape = surface.get_width (), surface.get_height () return array
Example 44
def test_mixed(self): c = np.array([True, True]) a = np.array([True, True]) assert_equal(np.choose(c, (a, 1)), np.array([1, 1]))
Example 45
def test_all(self): a = np.random.normal(0, 1, (4, 5, 6, 7, 8)) for i in range(a.ndim): amax = a.max(i) aargmax = a.argmax(i) axes = list(range(a.ndim)) axes.remove(i) assert_(np.all(amax == aargmax.choose(*a.transpose(i,*axes))))
Example 46
def test_all(self): a = np.random.normal(0, 1, (4, 5, 6, 7, 8)) for i in range(a.ndim): amin = a.min(i) aargmin = a.argmin(i) axes = list(range(a.ndim)) axes.remove(i) assert_(np.all(amin == aargmin.choose(*a.transpose(i,*axes))))
Example 47
def test_basic(self): A = np.choose(self.ind, (self.x, self.y)) assert_equal(A, [2, 2, 3])
Example 48
def test_broadcast1(self): A = np.choose(self.ind, (self.x2, self.y2)) assert_equal(A, [[2, 2, 3], [2, 2, 3]])
Example 49
def test_choose(self): choices = [[0, 1, 2], [3, 4, 5], [5, 6, 7]] tgt = [5, 1, 5] a = [2, 0, 1] out = np.choose(a, choices) assert_equal(out, tgt)
Example 50
def clip(self, a, m, M, out=None): # use slow-clip selector = np.less(a, m) + 2*np.greater(a, M) return selector.choose((a, m, M), out=out) # Handy functions