|
import requests |
|
import numpy as np |
|
from models.deep_colorization.colorizers import postprocess_tens, preprocess_img |
|
|
|
|
|
|
|
def load_lottieurl(url: str): |
|
r = requests.get(url) |
|
if r.status_code != 200: |
|
return None |
|
return r.json() |
|
|
|
|
|
def format_time(seconds: float) -> str: |
|
"""Formats time in seconds to a human readable format""" |
|
if seconds < 60: |
|
return f"{int(seconds)} seconds" |
|
elif seconds < 3600: |
|
minutes = seconds // 60 |
|
seconds %= 60 |
|
return f"{minutes} minutes and {int(seconds)} seconds" |
|
elif seconds < 86400: |
|
hours = seconds // 3600 |
|
minutes = (seconds % 3600) // 60 |
|
seconds %= 60 |
|
return f"{hours} hours, {minutes} minutes, and {int(seconds)} seconds" |
|
else: |
|
days = seconds // 86400 |
|
hours = (seconds % 86400) // 3600 |
|
minutes = (seconds % 3600) // 60 |
|
seconds %= 60 |
|
return f"{days} days, {hours} hours, {minutes} minutes, and {int(seconds)} seconds" |
|
|
|
|
|
|
|
def colorize_frame(frame, colorizer) -> np.ndarray: |
|
tens_l_orig, tens_l_rs = preprocess_img(frame, HW=(256, 256)) |
|
return postprocess_tens(tens_l_orig, colorizer(tens_l_rs).cpu()) |
|
|