Git Product home page Git Product logo

super_resolution_video_srvgan's Introduction

Super Resolution Video - Video Upscale - 2x SRGAN

Summary: Slides

Upscale video from low resolution to high resolution to reduce the effect of low bandwidth internet on video chat (meeting) or to reduce streaming video size without losing video quality.

Problem to Solve:

image

Eliminate pixelated videos in streaming, video call/chat/conference due to poor Internet.

Solution:

image

Requirements:

Speed: Real time video rendering. Target: 0.04 second/frame ~ 25 FPS (frame per second) video.

Image Quality: Acceptable.

Result:

Image Quality:

Comparison is between:

  • Low resolution input.
  • Sony Vegas Pro 17.0 (a software for video editing, similar to Adobe A.I.).
  • OpenCV (a python library for processing images).
  • My model.
  • The real high resolution image.

comparision

Image quality is better than Sony Vegas Pro and OpenCV, but still far away from real high resolution.

Image quality of my model is acceptable.

Speed:

My model rendering time has not yet reached real time rendering speed.

speed

Project Details:

Datasets:

1. REDS_VTSR:

REalistic and Dynamic Scenes dataset for Video Temporal Super-Resolution (frame interpolation) (REDS_VTSR) dataset includes ~70 GB data:

  • 13,500 frames.
  • Shaking camera movements.
  • Outside environment and acivities.

-> Suitable for live streaming videos.

REDS_VTSR sample video

2. Pexels:

  • 5,332 frames
  • Steady camera movements.
  • In-door environment and acivities.
  • Capture a lot of human faces.

-> Suitable for video call.

Pexels sample video

Training:

GAN model:

Model reference: Fast-SRGAN

Input: 160x90p videos.

Output: 320x180p videos.

2x upscale.

image

Production - Demo:

Pipeline:

  1. Use OpenCV to turn input video frames into images.
  2. Input those images to Generator Model to generate high resolution images.
  3. Then, use OpenCV to turn high resolution images to a video for display.

image

Flask app:

  • Upscale a whole video via upload.
  • Upscale real time video recording from webcam.

image

super_resolution_video_srvgan's People

Contributors

duongtruongtrong avatar

Stargazers

Orhan avatar nasesm avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.