def delta2rbox(self, rrois, deltas, wh_ratio_clip=1e-06):
    '\n        :param rrois: (cx, cy, w, h, theta)\n        :param deltas: (dx, dy, dw, dh, dtheta)\n        :param means: means of anchor\n        :param stds: stds of anchor\n        :param wh_ratio_clip: clip threshold of wh_ratio\n        :return:\n        '
    deltas = paddle.reshape(deltas, [(- 1), 5])
    rrois = paddle.reshape(rrois, [(- 1), 5])
    denorm_deltas = paddle.add(paddle.multiply(deltas, self.stds), self.means)
    dx = denorm_deltas[:, 0]
    dy = denorm_deltas[:, 1]
    dw = denorm_deltas[:, 2]
    dh = denorm_deltas[:, 3]
    dangle = denorm_deltas[:, 4]
    max_ratio = np.abs(np.log(wh_ratio_clip))
    dw = paddle.clip(dw, min=(- max_ratio), max=max_ratio)
    dh = paddle.clip(dh, min=(- max_ratio), max=max_ratio)
    rroi_x = rrois[:, 0]
    rroi_y = rrois[:, 1]
    rroi_w = rrois[:, 2]
    rroi_h = rrois[:, 3]
    rroi_angle = rrois[:, 4]
    gx = ((((dx * rroi_w) * paddle.cos(rroi_angle)) - ((dy * rroi_h) * paddle.sin(rroi_angle))) + rroi_x)
    gy = ((((dx * rroi_w) * paddle.sin(rroi_angle)) + ((dy * rroi_h) * paddle.cos(rroi_angle))) + rroi_y)
    gw = (rroi_w * dw.exp())
    gh = (rroi_h * dh.exp())
    ga = ((np.pi * dangle) + rroi_angle)
    ga = (((ga + (np.pi / 4)) % np.pi) - (np.pi / 4))
    ga = paddle.to_tensor(ga)
    gw = paddle.to_tensor(gw, dtype='float32')
    gh = paddle.to_tensor(gh, dtype='float32')
    bboxes = paddle.stack([gx, gy, gw, gh, ga], axis=(- 1))
    return bboxes
:param rrois: (cx, cy, w, h, theta)
:param deltas: (dx, dy, dw, dh, dtheta)
:param means: means of anchor
:param stds: stds of anchor
:param wh_ratio_clip: clip threshold of wh_ratio
:return:
def delta2rbox(self, rrois, deltas, wh_ratio_clip=1e-06):
    '\n        :param rrois: (cx, cy, w, h, theta)\n        :param deltas: (dx, dy, dw, dh, dtheta)\n        :param means: means of anchor\n        :param stds: stds of anchor\n        :param wh_ratio_clip: clip threshold of wh_ratio\n        :return:\n        '
    deltas = paddle.reshape(deltas, [(- 1), 5])
    rrois = paddle.reshape(rrois, [(- 1), 5])
    denorm_deltas = paddle.add(paddle.multiply(deltas, self.stds), self.means)
    dx = denorm_deltas[:, 0]
    dy = denorm_deltas[:, 1]
    dw = denorm_deltas[:, 2]
    dh = denorm_deltas[:, 3]
    dangle = denorm_deltas[:, 4]
    max_ratio = np.abs(np.log(wh_ratio_clip))
    dw = paddle.clip(dw, min=(- max_ratio), max=max_ratio)
    dh = paddle.clip(dh, min=(- max_ratio), max=max_ratio)
    rroi_x = rrois[:, 0]
    rroi_y = rrois[:, 1]
    rroi_w = rrois[:, 2]
    rroi_h = rrois[:, 3]
    rroi_angle = rrois[:, 4]
    gx = ((((dx * rroi_w) * paddle.cos(rroi_angle)) - ((dy * rroi_h) * paddle.sin(rroi_angle))) + rroi_x)
    gy = ((((dx * rroi_w) * paddle.sin(rroi_angle)) + ((dy * rroi_h) * paddle.cos(rroi_angle))) + rroi_y)
    gw = (rroi_w * dw.exp())
    gh = (rroi_h * dh.exp())
    ga = ((np.pi * dangle) + rroi_angle)
    ga = (((ga + (np.pi / 4)) % np.pi) - (np.pi / 4))
    ga = paddle.to_tensor(ga)
    gw = paddle.to_tensor(gw, dtype='float32')
    gh = paddle.to_tensor(gh, dtype='float32')
    bboxes = paddle.stack([gx, gy, gw, gh, ga], axis=(- 1))
    return bboxes