Sign inSign up

mediatechlab/upscaling-assessment

By mediatechlab

Updated over 4 years ago

Image
0

281

mediatechlab/upscaling-assessment repository overview

Projeto

Upscaling - Avaliação Objetiva

Descrição

Serviço utilizado para fazer a avaliação objetiva sobre o vídeo que é resultado do processo de upscaling.

Pré-requisitos

  1. Ubuntu 18.04
  2. FFmpeg:
    Opção 1: Para execução local é necessário executar o script de compilação disponível no diretório: app\ffmpeg_script
    Opção 2: Utilização do docker que já contempla o ffmpeg compilado: docker pull mediatechlab/ffmpeg_vmaf_153
  3. Python 3.7.2
  4. Pip 21.0.1

Pré-requisitos para uso da imagem Docker do serviço

  1. Ubuntu 18.04
  2. Armazenamento: 2Gb
  3. Memória: 2Gb

Instalação com imagem Docker do serviço

  1. Faça o download da imagem através do comando:

    • docker pull mediatechlab/upscaling-assessment
  2. Verifique o ID da imagem através do comando:

    • docker images
  3. Então crie o container para que seja feita a avaliação objetiva sobre os vídeos a partir da imagem baixada:

    • docker run -it -v <path_local_onde_estará_o_vídeo>:<path_onde_o_volume_sera_montado_no_docker> -p <porta_exposta_fora_do_container>:8888 <id_da_imagem>

OBS: A imagem docker foi criada com a pasta /mnt/storage, onde pode ser montado o volume!

Execução

  1. Ao inicializar o container com o comando anterior, o serviço será iniciado automaticamente na porta 8888. O mesmo, caso o projeto esteja sendo executado localmente.

    Running on http://0.0.0.0:8888/ (Press CTRL+C to quit)

    OBS: Caso saia do container e deseje retornar, execute os comandos:

    1.1. **docker start <id_do_container>** // Caso esteja parado
    1.2. **sudo docker exec -it <id_do_container> /bin/bash** // Para entrar no container em execução
    

API Endpoints

  1. /api/v1/health

    Método: GET

    Utilizado para certificar que o serviço está rodando normalmente.

    Retorno: 200

     {
         "status": "ok"
     }
    
  2. /api/v1/assessment

    Metódo: POST

    Utilizado para iniciar a avaliação objetiva dos vídeos gerados pós upscaling em relação ao vídeo de referência. O resultado da avaliação de cada vídeo é salvo em formato .json na pasta correspondente a cada arquivo de entrada, e os gráficos de cada métrica - VMAF, SSIM e PSNR, são salvos no path passado no request.

    OBS1: Os formatos de vídeo aceitos são: mxf, avi, mp4, mov. OBS2: Resolução, framerate e duração devem ser iguais entre os vídeos a serem avaliados e o vídeo de referência.

    Payload:

     {
         "videos": [
             {
                 "model": "ESPCN_V2" **required** 
                 // Nome do modelo utilizado para processo de upscaling.
                 
                 "files": [
                     "/home/user/storage/video1.mov",
                     "/home/user/storage/video2.mov"
                 ] **required**
                 // Lista de vídeos a serem avaliados. (Se estiver executando com o docker, passe o path do docker onde o volume foi montado, como mostrado anteriormente).
    
                 "result_path": "/home/user/resultado" **required**
                 // Path onde serão salvos os gráficos plotando os resultados do VMAF, SSIM e PSNR.
             }
             
         ],  
    
         "ref_video": "/home/user/storage/ref_video.mov", **required**
         // Vídeo de referência para avaliação.
     }
    
     **Retorno:** 200
    
         {
             "message": "Processo concluído com sucesso!!"
         }
    

Tag summary

Content type

Image

Digest

Size

1.5 GB

Last updated

over 4 years ago

docker pull mediatechlab/upscaling-assessment