abhishek's picture
abhishek HF staff
first commit
58f667f
'''
* Copyright (c) 2023 Salesforce, Inc.
* All rights reserved.
* SPDX-License-Identifier: Apache License 2.0
* For full license text, see LICENSE.txt file in the repo root or http://www.apache.org/licenses/
* By Ning Yu
'''
import numpy as np
class Outpainter:
def __call__(self, img, height_top_extended, height_down_extended, width_left_extended, width_right_extended):
height, width, channel = img.shape
height_top_new = int(float(height) / 100.0 * float(height_top_extended))
height_down_new = int(float(height) / 100.0 * float(height_down_extended))
width_left_new = int(float(width) / 100.0 * float(width_left_extended))
width_right_new = int(float(width) / 100.0 * float(width_right_extended))
new_height = height + height_top_new + height_down_new
new_width = width + width_left_new + width_right_new
img_new = np.zeros([new_height, new_width, channel])
img_new[height_top_new: (height + height_top_new), width_left_new: (width + width_left_new), : ] = img
img_new = img_new.astype('ubyte')
return img_new