def METHOD_NAME(self, deltas, weights):
    wx, wy, ww, wh = weights
    deltas = fluid.layers.reshape(deltas, shape=(0, -1, 4))
    dx = fluid.layers.slice(deltas, axes=[2], starts=[0], ends=[1]) * wx
    dy = fluid.layers.slice(deltas, axes=[2], starts=[1], ends=[2]) * wy
    dw = fluid.layers.slice(deltas, axes=[2], starts=[2], ends=[3]) * ww
    dh = fluid.layers.slice(deltas, axes=[2], starts=[3], ends=[4]) * wh
    dw = fluid.layers.clip(dw, -1.e10, np.log(1000. / 16))
    dh = fluid.layers.clip(dh, -1.e10, np.log(1000. / 16))
    pred_ctr_x = dx
    pred_ctr_y = dy
    pred_w = fluid.layers.exp(dw)
    pred_h = fluid.layers.exp(dh)
    x1 = pred_ctr_x - 0.5 * pred_w
    y1 = pred_ctr_y - 0.5 * pred_h
    x2 = pred_ctr_x + 0.5 * pred_w
    y2 = pred_ctr_y + 0.5 * pred_h
    x1 = fluid.layers.reshape(x1, shape=(-1, ))
    y1 = fluid.layers.reshape(y1, shape=(-1, ))
    x2 = fluid.layers.reshape(x2, shape=(-1, ))
    y2 = fluid.layers.reshape(y2, shape=(-1, ))
    return x1, y1, x2, y2