Infinite-World / infworld /configs /bucket_config.py
wuruiqi0722's picture
Upload folder using huggingface_hub
01c7703 verified
ASPECT_RATIO_200 = {
'0.23': ([96, 416], 1), '0.40': ([128, 320], 1), '0.62': ([160, 256], 1), '0.86': ([192, 224], 1),
'1.17': ([224, 192], 1), '1.60': ([256, 160], 1), '2.25': ([288, 128], 1), '2.50': ([320, 128], 1),
'2.75': ([352, 128], 1), '4.00': ([384, 96], 1)
}
ASPECT_RATIO_256 = {
'0.25': ([128, 512], 1), '0.38': ([160, 416], 1), '0.55': ([192, 352], 1), '0.78': ([224, 288], 1),
'1.00': ([256, 256], 1), '1.29': ([288, 224], 1), '1.67': ([320, 192], 1), '1.83': ([352, 192], 1),
'2.40': ([384, 160], 1), '2.60': ([416, 160], 1), '2.80': ([448, 160], 1), '3.75': ([480, 128], 1),
'4.00': ([512, 128], 1)
}
ASPECT_RATIO_256_SQUARE = {
'1.00': ([256, 256], 1),
}
ASPECT_RATIO_320 = {
'0.26': ([160, 608], 1), '0.38': ([192, 512], 1), '0.50': ([224, 448], 1), '0.67': ([256, 384], 1),
'0.82': ([288, 352], 1), '1.00': ([320, 320], 1), '1.22': ([352, 288], 1), '1.50': ([384, 256], 1),
'1.86': ([416, 224], 1), '2.00': ([448, 224], 1), '2.50': ([480, 192], 1), '2.83': ([544, 192], 1),
'3.60': ([576, 160], 1), '3.80': ([608, 160], 1), '4.00': ([640, 160], 1)
}
ASPECT_RATIO_400 = {
'0.23': ([192, 832], 1), '0.32': ([224, 704], 1), '0.40': ([256, 640], 1), '0.53': ([288, 544], 1),
'0.62': ([320, 512], 1), '0.79': ([352, 448], 1), '0.92': ([384, 416], 1), '1.08': ([416, 384], 1),
'1.27': ([448, 352], 1), '1.50': ([480, 320], 1), '1.60': ([512, 320], 1), '1.89': ([544, 288], 1),
'2.00': ([576, 288], 1), '2.38': ([608, 256], 1), '2.50': ([640, 256], 1), '3.00': ([672, 224], 1),
'3.14': ([704, 224], 1), '3.43': ([768, 224], 1), '4.17': ([800, 192], 1)
}
ASPECT_RATIO_400_F64 = {
'0.23': ([192, 832], 1), '0.40': ([256, 640], 1), '0.62': ([320, 512], 1), '0.86': ([384, 448], 1),
'1.17': ([448, 384], 1), '1.60': ([512, 320], 1), '2.25': ([576, 256], 1), '2.50': ([640, 256], 1),
'2.75': ([704, 256], 1), '4.00': ([768, 192], 1)
}
ASPECT_RATIO_400_F64_SQUARE = {
'0.23': ([192, 832], 1), '0.40': ([256, 640], 1), '0.62': ([320, 512], 1), '0.86': ([384, 448], 1), '1.0': ([448, 448], 1),
'1.17': ([448, 384], 1), '1.60': ([512, 320], 1), '2.25': ([576, 256], 1), '2.50': ([640, 256], 1),
'2.75': ([704, 256], 1), '4.00': ([768, 192], 1)
}
ASPECT_RATIO_512x512 = {
'1.0': ([512, 512], 1),
}
ASPECT_RATIO_512 = {
'0.25': ([256, 1024], 1), '0.26': ([256, 992], 1), '0.27': ([256, 960], 1), '0.28': ([256, 928], 1),
'0.32': ([288, 896], 1), '0.33': ([288, 864], 1), '0.35': ([288, 832], 1), '0.4': ([320, 800], 1),
'0.42': ([320, 768], 1), '0.48': ([352, 736], 1), '0.5': ([352, 704], 1), '0.52': ([352, 672], 1),
'0.57': ([384, 672], 1), '0.6': ([384, 640], 1), '0.68': ([416, 608], 1), '0.72': ([416, 576], 1),
'0.78': ([448, 576], 1), '0.82': ([448, 544], 1), '0.88': ([480, 544], 1), '0.94': ([480, 512], 1),
'1.0': ([512, 512], 1), '1.07': ([512, 480], 1), '1.13': ([544, 480], 1), '1.21': ([544, 448], 1),
'1.29': ([576, 448], 1), '1.38': ([576, 416], 1), '1.46': ([608, 416], 1), '1.67': ([640, 384], 1),
'1.75': ([672, 384], 1), '2.0': ([704, 352], 1), '2.09': ([736, 352], 1), '2.4': ([768, 320], 1),
'2.5': ([800, 320], 1), '2.89': ([832, 288], 1), '3.0': ([864, 288], 1), '3.11': ([896, 288], 1),
'3.62': ([928, 256], 1), '3.75': ([960, 256], 1), '3.88': ([992, 256], 1), '4.0': ([1024, 256], 1),
}
# ASPECT_RATIO_627 = {
# '0.26': ([320, 1216], 1), '0.31': ([352, 1120], 1), '0.38': ([384, 1024], 1), '0.43': ([416, 960], 1),
# '0.52': ([448, 864], 1), '0.58': ([448, 768], 1), '0.67': ([512, 768], 1), '0.74': ([544, 736], 1),
# '0.86': ([576, 672], 1), '0.95': ([608, 640], 1), '1.05': ([640, 608], 1), '1.17': ([672, 576], 1),
# '1.29': ([704, 544], 1), '1.35': ([736, 544], 1), '1.50': ([768, 512], 1), '1.67': ([800, 480], 1),
# '1.73': ([832, 480], 1), '2.00': ([896, 448], 1), '2.31': ([960, 416], 1), '2.58': ([992, 384], 1),
# '2.75': ([1056, 384], 1), '3.09': ([1088, 352], 1), '3.70': ([1184, 320], 1), '3.80': ([1216, 320], 1),
# '3.90': ([1248, 320], 1), '4.00': ([1280, 320], 1)
# }
ASPECT_RATIO_627 = {
'0.26': ([320, 1216], 1), '0.31': ([352, 1120], 1), '0.38': ([384, 1024], 1), '0.43': ([416, 960], 1),
'0.52': ([448, 864], 1), '0.58': ([480, 832], 1), '0.67': ([512, 768], 1), '0.74': ([544, 736], 1),
'0.86': ([576, 672], 1), '0.95': ([608, 640], 1), '1.05': ([640, 608], 1), '1.17': ([672, 576], 1),
'1.29': ([704, 544], 1), '1.35': ([736, 544], 1), '1.50': ([768, 512], 1), '1.67': ([800, 480], 1),
'1.73': ([832, 480], 1), '2.00': ([896, 448], 1), '2.31': ([960, 416], 1), '2.58': ([992, 384], 1),
'2.75': ([1056, 384], 1), '3.09': ([1088, 352], 1), '3.70': ([1184, 320], 1), '3.80': ([1216, 320], 1),
'3.90': ([1248, 320], 1), '4.00': ([1280, 320], 1)
}
ASPECT_RATIO_627_F64 = {
'0.26': ([320, 1216], 1), '0.38': ([384, 1024], 1), '0.50': ([448, 896], 1), '0.67': ([512, 768], 1),
'0.82': ([576, 704], 1), '1.00': ([640, 640], 1), '1.22': ([704, 576], 1), '1.50': ([768, 512], 1),
'1.86': ([832, 448], 1), '2.00': ([896, 448], 1), '2.50': ([960, 384], 1), '2.83': ([1088, 384], 1),
'3.60': ([1152, 320], 1), '3.80': ([1216, 320], 1), '4.00': ([1280, 320], 1)}
ASPECT_RATIO_960 = {
'0.25': ([480, 1920], 1), '0.29': ([512, 1792], 1), '0.32': ([544, 1696], 1), '0.36': ([576, 1600], 1),
'0.40': ([608, 1504], 1), '0.49': ([672, 1376], 1), '0.54': ([704, 1312], 1), '0.59': ([736, 1248], 1),
'0.69': ([800, 1152], 1), '0.74': ([832, 1120], 1), '0.82': ([864, 1056], 1), '0.88': ([896, 1024], 1),
'0.94': ([928, 992], 1), '1.00': ([960, 960], 1), '1.07': ([992, 928], 1), '1.14': ([1024, 896], 1),
'1.22': ([1056, 864], 1), '1.31': ([1088, 832], 1), '1.35': ([1120, 832], 1), '1.44': ([1152, 800], 1),
'1.70': ([1248, 736], 1), '2.00': ([1344, 672], 1), '2.05': ([1376, 672], 1), '2.47': ([1504, 608], 1),
'2.53': ([1536, 608], 1), '2.83': ([1632, 576], 1), '3.06': ([1664, 544], 1), '3.12': ([1696, 544], 1),
'3.62': ([1856, 512], 1), '3.93': ([1888, 480], 1), '4.00': ([1920, 480], 1)
}
ASPECT_RATIO_960_F64 = {
'0.22': ([448, 2048], 1), '0.29': ([512, 1792], 1), '0.36': ([576, 1600], 1), '0.45': ([640, 1408], 1),
'0.55': ([704, 1280], 1), '0.63': ([768, 1216], 1), '0.76': ([832, 1088], 1), '0.88': ([896, 1024], 1),
'1.00': ([960, 960], 1), '1.14': ([1024, 896], 1), '1.31': ([1088, 832], 1), '1.50': ([1152, 768], 1),
'1.58': ([1216, 768], 1), '1.82': ([1280, 704], 1), '1.91': ([1344, 704], 1), '2.20': ([1408, 640], 1),
'2.30': ([1472, 640], 1), '2.67': ([1536, 576], 1), '2.89': ([1664, 576], 1), '3.62': ([1856, 512], 1),
'3.75': ([1920, 512], 1)}
ASPECT_RATIO_1440_F64 = {
'0.24': ([704, 2944], 1), '0.29': ([768, 2688], 1), '0.33': ([832, 2496], 1), '0.39': ([896, 2304], 1),
'0.44': ([960, 2176], 1), '0.50': ([1024, 2048], 1), '0.57': ([1088, 1920], 1), '0.70': ([1216, 1728], 1),
'0.80': ([1280, 1600], 1), '0.88': ([1344, 1536], 1), '0.96': ([1408, 1472], 1), '1.05': ([1472, 1408], 1),
'1.14': ([1536, 1344], 1), '1.25': ([1600, 1280], 1), '1.37': ([1664, 1216], 1), '1.42': ([1728, 1216], 1),
'1.71': ([1856, 1088], 1), '1.76': ([1920, 1088], 1), '2.00': ([2048, 1024], 1), '2.50': ([2240, 896], 1),
'2.92': ([2432, 832], 1), '3.00': ([2496, 832], 1), '3.08': ([2560, 832], 1), '3.58': ([2752, 768], 1),
'3.67': ([2816, 768], 1), '4.09': ([2880, 704], 1)
}
# this func is only used for bucket config generation
def find_hw(target_area, target_ratio, factor=32):
min_side = factor
max_side = target_area // factor // factor * factor + factor
min_error = float('inf')
best_solution = None
for height in range(max_side, min_side-1, -factor):
width = round(target_area / height / factor) * factor
if width < min_side:
continue
ratio = height / width
ratio_error = abs(ratio - target_ratio)
if ratio_error < min_error:
min_error = ratio_error
best_solution = (height, width)
if ratio_error == 0:
break
return best_solution
if __name__ == "__main__":
ratios = list(map(float, ASPECT_RATIO_512.keys()))
res = {}
for ratio in ratios:
h,w = find_hw(400**2, ratio, 64)
res[f"{h/w:.2f}"] = ([h,w], 1)
print((h*w)**0.5)
print(res)