import gradio as gr
import piqa
import torch

def measure_quality(image):
    device = "cuda" if torch.cuda.is_available() else "cpu"
    print(type(image))
    image = torch.from_numpy(image)
    print("after conversion image type ", type(image))
    
    tv = piqa.TV()
    score = tv(image)
    return str(score)

inputs = gr.inputs.Image()
interface = gr.Interface(fn=measure_quality, inputs=inputs, outputs="text")
interface.launch()