本文整理匯總了Python中numpy.atleast_3d方法的典型用法代碼示例。如果您正苦於以下問題:Python numpy.atleast_3d方法的具體用法?Python numpy.atleast_3d怎麽用?Python numpy.atleast_3d使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類numpy
的用法示例。
在下文中一共展示了numpy.atleast_3d方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: _recmat_smooth
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def _recmat_smooth(presented, recalled, features, distance, match):
if match == 'best':
func = np.argmax
elif match == 'smooth':
func = np.nanmean
simmtx = _similarity_smooth(presented, recalled, features, distance)
if match == 'best':
recmat = np.atleast_3d([func(s, 1) for s in simmtx]).astype(np.float64)
recmat+=1
recmat[np.isnan(simmtx).any(2)]=np.nan
elif match == 'smooth':
recmat = np.atleast_3d([func(s, 0) for s in simmtx]).astype(np.float64)
return recmat
示例2: _normalize_user_result
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def _normalize_user_result(self, compute_fp, res):
if not isinstance(res, np.ndarray): # pragma: no cover
raise ValueError("Result of recipe's `compute_array` have type {}, it should be ndarray".format(
type(res)
))
res = np.atleast_3d(res)
y, x, c = res.shape
if (y, x) != tuple(compute_fp.shape): # pragma: no cover
raise ValueError("Result of recipe's `compute_array` have shape `{}`, should start with {}".format(
res.shape,
compute_fp.shape,
))
if c != len(self._raster): # pragma: no cover
raise ValueError("Result of recipe's `compute_array` have shape `{}`, should have {} bands".format(
res.shape,
len(self._raster),
))
res = res.astype(self._raster.dtype, copy=False)
return res
# ******************************************************************************************* **
示例3: _normalize_user_result
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def _normalize_user_result(self, cache_fp, res):
try:
res = np.atleast_3d(res)
except: # pragma: no cover
raise ValueError("Result of recipe's `merge_arrays` has type {}, it can't be converted to ndarray".format(
type(res)
))
y, x, c = res.shape
if (y, x) != tuple(cache_fp.shape): # pragma: no cover
raise ValueError("Result of recipe's `merge_arrays` has shape `{}`, should start with {}".format(
res.shape,
cache_fp.shape,
))
if c != len(self._raster): # pragma: no cover
raise ValueError("Result of recipe's `merge_arrays` has shape `{}`, should have {} bands".format(
res.shape,
len(self._raster),
))
res = res.astype(self._raster.dtype, copy=False)
return res
# ******************************************************************************************* **
示例4: rotate_points
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def rotate_points(image, obj_list, angle):
'''
Rotates the points of the given objects by the given angle. The points will be translated
into absolute coordinates. Therefore the image (resp. its shape) is needed.
'''
rotated_obj_list = []
cosOfAngle = np.cos(2 * np.pi / 360 * -angle)
sinOfAngle = np.sin(2 * np.pi / 360 * -angle)
image_shape = np.array(np.atleast_3d(image).shape[0:2][::-1])
rot_mat = np.array([[cosOfAngle, -sinOfAngle], [sinOfAngle, cosOfAngle]])
for obj in obj_list:
obj_name = obj[0]
point = obj[1] * image_shape
rotated_point = AugmentationCreator._rotate_vector_around_point(image_shape/2, point, rot_mat) / image_shape
rotated_obj_list.append((obj_name, (rotated_point[0], rotated_point[1])))
return rotated_obj_list
示例5: rotate_bboxes
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def rotate_bboxes(image, obj_list, angle):
'''
Rotates the bounding boxes of the given objects by the given angle. The bounding box will be
translated into absolute coordinates. Therefore the image (resp. its shape) is needed.
'''
rotated_obj_list = []
cosOfAngle = np.cos(2 * np.pi / 360 * -angle)
sinOfAngle = np.sin(2 * np.pi / 360 * -angle)
image_shape = np.array(np.atleast_3d(image).shape[0:2][::-1])
rot_mat = np.array([[cosOfAngle, -sinOfAngle], [sinOfAngle, cosOfAngle]])
for obj in obj_list:
obj_name = obj[0]
upper_left = obj[1]['upper_left'] * image_shape
lower_right = obj[1]['lower_right'] * image_shape
upper_left = AugmentationCreator._rotate_vector_around_point(image_shape/2, upper_left, rot_mat) / image_shape
lower_right = AugmentationCreator._rotate_vector_around_point(image_shape/2, lower_right, rot_mat) / image_shape
rotated_obj_list.append((obj_name, {'upper_left' : upper_left, 'lower_right' : lower_right}))
return rotated_obj_list
示例6: to_rgb
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def to_rgb(img):
"""
Converts the given array into a RGB image. If the number of channels is not
3 the array is tiled such that it has 3 channels. Finally, the values are
rescaled to [0,255)
:param img: the array to convert [nx, ny, channels]
:returns img: the rgb image [nx, ny, 3]
"""
img = np.atleast_3d(img)
channels = img.shape[2]
if channels < 3:
img = np.tile(img, 3)
img[np.isnan(img)] = 0
img -= np.amin(img)
if np.amax(img) != 0:
img /= np.amax(img)
img *= 255
return img
示例7: _binarize_mask
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def _binarize_mask(cls, mask, arr_height, arr_width):
# Average over channels, resize to heatmap/segmap array size
# (+clip for cubic interpolation). We can use none-NN interpolation
# for segmaps here as this is just the mask and not the segmap
# array.
mask_3d = np.atleast_3d(mask)
# masks with zero-sized axes crash in np.average() and cannot be
# upscaled in imresize_single_image()
if mask.size == 0:
mask_rs = np.zeros((arr_height, arr_width),
dtype=np.float32)
else:
mask_avg = (
np.average(mask_3d, axis=2) if mask_3d.shape[2] > 0 else 1.0)
mask_rs = ia.imresize_single_image(mask_avg,
(arr_height, arr_width))
mask_arr = iadt.clip_(mask_rs, 0, 1.0)
mask_arr_binarized = (mask_arr >= 0.5)
return mask_arr_binarized
# Added in 0.4.0.
示例8: draw_color_image
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def draw_color_image(self, gl):
self._call_on_changed()
gl.Clear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
# use face colors if given
# FIXME: this won't work for 2 channels
draw_colored_verts(gl, self.v.r, self.f, self.vc.r)
result = np.asarray(deepcopy(gl.getImage()[:,:,:self.num_channels].squeeze()), np.float64)
if hasattr(self, 'background_image'):
bg_px = np.tile(np.atleast_3d(self.visibility_image) == 4294967295, (1,1,self.num_channels)).squeeze()
fg_px = 1 - bg_px
result = bg_px * self.background_image + fg_px * result
return result
示例9: color_image
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def color_image(self):
gl = self.glf
gl.PolygonMode(GL_FRONT_AND_BACK, GL_FILL)
no_overdraw = self.draw_color_image(gl)
if not self.overdraw:
return no_overdraw
gl.PolygonMode(GL_FRONT_AND_BACK, GL_LINE)
overdraw = self.draw_color_image(gl)
gl.PolygonMode(GL_FRONT_AND_BACK, GL_FILL)
boundarybool_image = self.boundarybool_image
if self.num_channels > 1:
boundarybool_image = np.atleast_3d(boundarybool_image)
return np.asarray((overdraw*boundarybool_image + no_overdraw*(1-boundarybool_image)), order='C')
示例10: nangradients
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def nangradients(arr):
dy = np.expand_dims(arr[:-1,:,:] - arr[1:,:,:], axis=3)
dx = np.expand_dims(arr[:,:-1,:] - arr[:, 1:, :], axis=3)
dy = np.concatenate((dy[1:,:,:], dy[:-1,:,:]), axis=3)
dy = nanmean(dy, axis=3)
dx = np.concatenate((dx[:,1:,:], dx[:,:-1,:]), axis=3)
dx = nanmean(dx, axis=3)
if arr.shape[2] > 1:
gy, gx, _ = np.gradient(arr)
else:
gy, gx = np.gradient(arr.squeeze())
gy = np.atleast_3d(gy)
gx = np.atleast_3d(gx)
gy[1:-1,:,:] = -dy
gx[:,1:-1,:] = -dx
return gy, gx
示例11: corr2
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def corr2(X):
""" computes correlations between all variable pairs in a segmented time series
.. note:: this feature is expensive to compute with the current implementation, and cannot be
used with univariate time series
"""
X = np.atleast_3d(X)
N = X.shape[0]
D = X.shape[2]
if D == 1:
return np.zeros(N, dtype=np.float)
trii = np.triu_indices(D, k=1)
DD = len(trii[0])
r = np.zeros((N, DD))
for i in np.arange(N):
rmat = np.corrcoef(X[i]) # get the ith window from each signal, result will be DxD
r[i] = rmat[trii]
return r
示例12: __init__
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def __init__(self, directory, filepath, image_size):
"""
Constructor for an JAFFEInstance object.
Args:
directory (str): Base directory where the example lives.
filename (str): The name of the file of the example.
image_size (tuple<int>): Size to resize the image to.
"""
filename = filepath.split('/')[-1]
self.image = misc.imread( os.path.join(directory, filepath) )
# some of the jaffe images are 3-channel greyscale, some are 1-channel!
self.image = np.atleast_3d(self.image)[...,0] # make image 2d for sure
# Resize and scale values to [0 1]
self.image = misc.imresize( self.image, image_size )
self.image = self.image / 255.0
ident, _, N, _ = filename.split('.')
# Note: the emotion encoded in the filename is the dominant
# scoring emotion, but we ignore this and use precise emotion scores
# from the semantic ratings table
self.identity, self.N = ident, int(N) - 1 # 0-based instance numbering
示例13: __getitem__
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def __getitem__(self, idx):
if self.train:
img_path, gt_path = self.train_set_path[idx]
img = imread(img_path)
img = img[0:self.nRow, 0:self.nCol]
img = np.atleast_3d(img).transpose(2, 0, 1).astype(np.float32)
img = (img - img.min()) / (img.max() - img.min())
img = torch.from_numpy(img).float()
gt = imread(gt_path)[0:self.nRow, 0:self.nCol]
gt = np.atleast_3d(gt).transpose(2, 0, 1)
gt = gt / 255.0
gt = torch.from_numpy(gt).float()
return img, gt
示例14: range
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def range(cls, obj, dim):
dim_idx = obj.get_dimension_index(dim)
if dim_idx in [0, 1] and obj.bounds:
l, b, r, t = obj.bounds.lbrt()
if dim_idx:
(low, high) = (b, t)
density = obj.ydensity
else:
low, high = (l, r)
density = obj.xdensity
halfd = (1./density)/2.
if isinstance(low, util.datetime_types):
halfd = np.timedelta64(int(round(halfd)), obj._time_unit)
drange = (low+halfd, high-halfd)
elif 1 < dim_idx < len(obj.vdims) + 2:
dim_idx -= 2
data = np.atleast_3d(obj.data)[:, :, dim_idx]
drange = (np.nanmin(data), np.nanmax(data))
else:
drange = (None, None)
return drange
示例15: write
# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import atleast_3d [as 別名]
def write(fname, data, psz=1, origin=None, fast=False):
"""
Write a MRC file. Fortran axes order is assumed.
:param fname: Destination path.
:param data: Array to write.
:param psz: Pixel size in Å for MRC header.
:param origin: Coordinate of origin voxel.
:param fast: Skip computing density statistics in header. Default is False.
"""
data = np.atleast_3d(data)
if fast:
header = mrc_header(data.shape, dtype=data.dtype, psz=psz)
else:
header = mrc_header_complete(data, psz=psz, origin=origin)
with open(fname, 'wb') as f:
f.write(header.tobytes())
f.write(np.require(data, dtype=np.float32).tobytes(order="F"))