in shap_e/rendering/blender/render.py [0:0]
def _combine_rgba(out_dir: str):
i = 0
while True:
paths = [os.path.join(out_dir, f"{i:05}_{ch}.png") for ch in "rgba"]
if not os.path.exists(paths[0]):
break
joined = np.stack(
[(np.array(Image.open(path)) >> 8).astype(np.uint8) for path in paths], axis=-1
)
Image.fromarray(joined).save(os.path.join(out_dir, f"{i:05}.png"))
for path in paths:
os.remove(path)
i += 1