Skip to content

RealScaler - image/video AI upscaler app (Real-ESRGAN)

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.txt
Notifications You must be signed in to change notification settings

Djdefrag/RealScaler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation




RealScaler - image/video AI upscaler app (Real-ESRGAN)


What is RealScaler?

RealScaler is a Windows app powered by RealESRGAN AI to enhance, upscale and de-noise photos and videos.

Other AI projects.🤓

Credits.

Real-ESRGAN - https://github.com/xinntao/Real-ESRGAN

How is made. 🛠

RealScaler is completely written in Python, from backend to frontend. External packages are:

  • AI -> torch / onnxruntime-directml
  • GUI -> customtkinter
  • Image/video -> OpenCV / moviepy
  • Packaging -> nuitka

Requirements. 🤓

  • Windows 11 / Windows 10
  • RAM >= 8Gb
  • Any Directx12 compatible GPU with >= 4GB VRAM

Features.

  • Elegant and easy to use GUI
  • Image and Video upscale
  • Multiple GPUs support
  • Compatible images - jpg, png, tif, bmp, webp, heic
  • Compatible video - mp4, wemb, mkv, flv, gif, avi, mov, mpg, qt, 3gp
  • Automatic image tilling to avoid gpu VRAM limitation
  • Resize image/video before upscaling
  • Interpolation beetween original file and upscaled file
  • Video upscaling STOP&RESUME
  • PRIVACY FOCUSED - no internet connection required / everything is on your PC

Next steps. 🤫

  • 1.X versions
    • Switch to Pytorch-directml to support all Directx12 compatible gpu (AMD, Intel, Nvidia)
    • New GUI with Windows 11 style
    • Include audio for upscaled video
    • Optimizing video frame resize and extraction speed
    • Multi GPU support (for pc with double GPU, integrated + dedicated)
    • Python 3.10 (expecting ~10% more performance)
  • 2.X versions
    • New, completely redesigned graphical interface based on @customtkinter
    • Upscaling images and videos at once (currently it is possible to upscale images or single video)
    • Upscale multiple videos at once
    • Choose upscaled video extension
    • Interpolation between the original and upscaled image/video
    • More Interpolation levels (Low, Medium, High)
    • Show the remaining time to complete video upscaling
    • Support for SRVGGNetCompact AI architecture
    • Metadata extraction and application from original file to upscaled file (via exiftool)
  • 3.X versions
    • New AI engine powered by onnxruntime-directml (https://github.com/microsoft/onnxruntime))
    • Python 3.11 (performance improvements)
    • Python 3.12 (performance improvements)
    • Display images/videos upscaled resolution in the GUI
    • Updated FFMPEG to version 7.x (latest release)
    • Saving user settings (AI model, GPU, CPU etc.)
    • Video multi-threading AI upscale
    • Video upscaling STOP&RESUME

Some Examples.

Videos

  • Original

boku-no-hero-my-hero-academia

  • RealESRGANx4 - upscaled in 3 minutes and 23 seconds
RealESRGAN_plus_x4.mp4
  • RealESR_Gx4 - upscaled in 57 seconds
RealESR_generalv3_x4.mp4

Images!

test1

test2

test5

a