前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python d用法_Python numpy.dsplit() 使用实例

python d用法_Python numpy.dsplit() 使用实例

作者头像
用户7886150
修改2021-01-06 17:47:15
修改2021-01-06 17:47:15
6450
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: Python中的numpy.less

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 dsplit(ary, indices_or_sections):

 """Splits an array into multiple sub arrays along the third axis.

 This is equivalent to ``split`` with ``axis=2``.

 .. seealso:: :func:`cupy.split` for more detail, :func:`numpy.dsplit`

 """

 if ary.ndim <= 2:

 raise ValueError('Cannot dsplit an array with less than 3 dimensions')

 return split(ary, indices_or_sections, 2)

 Example 2

 def vsplit(ary, indices_or_sections):

 """Splits an array into multiple sub arrays along the first axis.

 This is equivalent to ``split`` with ``axis=0``.

 .. seealso:: :func:`cupy.split` for more detail, :func:`numpy.dsplit`

 """

 if ary.ndim <= 1:

 raise ValueError('Cannot vsplit an array with less than 2 dimensions')

 return split(ary, indices_or_sections, 0)

 Example 3

 def char2wordBB(self, charBB, text):

 """

 Converts character bounding-boxes to word-level

 bounding-boxes.

 charBB : 2x4xn matrix of BB coordinates

 text : the text string

 output : 2x4xm matrix of BB coordinates,

 where, m == number of words.

 """

 wrds = text.split()

 bb_idx = np.r_[0, np.cumsum([len(w) for w in wrds])]

 wordBB = np.zeros((2,4,len(wrds)), 'float32')

 for i in xrange(len(wrds)):

 cc = charBB[:,:,bb_idx[i]:bb_idx[i+1]]

 # fit a rotated-rectangle:

 # change shape from 2x4xn_i -> (4*n_i)x2

 cc = np.squeeze(np.concatenate(np.dsplit(cc,cc.shape[-1]),axis=1)).T.astype('float32')

 rect = cv2.minAreaRect(cc.copy())

 box = np.array(cv2.cv.BoxPoints(rect))

 # find the permutation of box-coordinates which

 # are "aligned" appropriately with the character-bb.

 # (exhaustive search over all possible assignments):

 cc_tblr = np.c_[cc[0,:],

 cc[-3,:],

 cc[-2,:],

 cc[3,:]].T

 perm4 = np.array(list(itertools.permutations(np.arange(4))))

 dists = []

 for pidx in xrange(perm4.shape[0]):

 d = np.sum(np.linalg.norm(box[perm4[pidx],:]-cc_tblr,axis=1))

 dists.append(d)

 wordBB[:,:,i] = box[perm4[np.argmin(dists)],:].T

 return wordBB

 Example 4

 def dsplit(ary, indices_or_sections):

 """Splits an array into multiple sub arrays along the third axis.

 This is equivalent to ``split`` with ``axis=2``.

 .. seealso:: :func:`cupy.split` for more detail, :func:`numpy.dsplit`

 """

 if ary.ndim <= 2:

 raise ValueError('Cannot dsplit an array with less than 3 dimensions')

 return split(ary, indices_or_sections, 2)

 Example 5

 def vsplit(ary, indices_or_sections):

 """Splits an array into multiple sub arrays along the first axis.

 This is equivalent to ``split`` with ``axis=0``.

 .. seealso:: :func:`cupy.split` for more detail, :func:`numpy.dsplit`

 """

 if ary.ndim <= 1:

 raise ValueError('Cannot vsplit an array with less than 2 dimensions')

 return split(ary, indices_or_sections, 0)

 Example 6

 def _ros_read_images(self, stream_buffer, number, staleness_limit = 10.):

 """ Reads images from a stream buffer

 Parameters

 ----------

 stream_buffer : string

 absolute path to the image buffer service

 number : int

 The number of frames to get. Must be less than the image buffer service's

 current buffer size

 staleness_limit : float, optional

 Max value of how many seconds old the oldest image is. If the oldest image

 grabbed is older than this value, a RuntimeError is thrown.

 If None, staleness is ignored.

 Returns

 -------

 List of nump.ndarray objects, each one an image

 Images are in reverse chronological order (newest first)

 """

 rospy.wait_for_service(stream_buffer, timeout = self.timeout)

 ros_image_buffer = rospy.ServiceProxy(stream_buffer, ImageBuffer)

 ret = ros_image_buffer(number, 1)

 if not staleness_limit == None:

 if ret.timestamps[-1] > staleness_limit:

 raise RuntimeError("Got data {0} seconds old, more than allowed {1} seconds"

 .format(ret.timestamps[-1], staleness_limit))

 data = ret.data.reshape(ret.data_dim1, ret.data_dim2, ret.data_dim3).astype(ret.dtype)

 # Special handling for 1 element, since dstack's behavior is different

 if number == 1:

 return [data]

 return np.dsplit(data, number)

 Example 7

 def _rpc(self, x):

 L, P, H = np.dsplit(x, 3)

 return np.dstack([np.ones((x.shape[0], x.shape[1]), dtype=np.float32), L, P, H, L*P, L*H, P*H, L**2, P**2, H**2,

 L*P*H, L**3, L*(P**2), L*(H**2), (L**2)*P, P**3, P*(H**2),

 (L**2)*H, (P**2)*H, H**3])

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档