Yandex company blog

Yandex DeepHD Technology Revolutionizing Photo & Video Quality for Yandex Services

As the quality and resolution of the screens in our homes and pockets reaches ever higher levels, the comparatively lower quality of photos and videos made decades ago becomes more obvious.  Here at Yandex, the Computer Vision team within our Machine Intelligence and Research Division has developed a neural-network based super-resolution technology, DeepHD, to help bring these media classics into the digital age. DeepHD enhances the quality of both photos and videos and with its application to Yandex images and content hosted on our video and TV streaming services, it is the first technology of its kind in production.

Image and video frame processing in DeepHD requires two steps, each using its own neural network. The first stage is the preliminary preparation of the image.  The neural network removes compression artifacts from the image, which are otherwise referred to as “noise” and commonly occur in images that have been digitally processed.

After the image is cleared of noise, it is transmitted to the second neural network -- the generator, which increases the resolution of the image. The Yandex Computer Vision team uses GANs (Generative Adversarial Networks, Goodfellow et al. (2014)) architectures to train this network.  GANs are neural network architectures in which one network generates high-resolution artificial images from low-resolution ones, while trying to make them indistinguishable from real high-resolution images to another network.  The process of increasing the resolution of images and videos is very similar; DeepHD enhances videos by processing each individual frame.

The technology is able to sharpen various aspects of images in videos such as improving the visibility of an object in the shade or even bringing the texture of an actor’s clothing to life by making the smallest details of the fabric more visible.  DeepHD does not alter the image by adding things that aren’t already there; the frames of images are semantically identical before and after running DeepHD. 

DeepHD is particularly useful when only small or low-quality images are available. One example of this is when a photo has been cropped and a user can’t find the original photo.  DeepHD has been applied across our entire database of Yandex images to provide users searching for photos with better, large versions of images.

Our Computer Vision team has also applied DeepHD to a number of low-resolution films and cartoons on our streaming service KinoPoisk.  These include famous Soviet-era movies that have, up to now, usually only been available in low quality.  Thanks to DeepHD, people can now experience these classic titles in stunning, modern quality online. 

An easy way for users to find these videos is searching on Yandex.ru, where they can enter queries on films and cartoons with “DeepHD”.  Viewers will know they have found a DeepHD stream when it is accompanied by the “dHD” logo.

Similarly, DeepHD has also improved the user experience for our streaming television service, Yandex.Live.  The service provides viewers with live streams of television channels, and with the new integration of DeepHD, users can view higher quality streams that the technology upscales in real time, also marked by the “dHD” logo.

We look forward to expanding our collection of films and videos enhanced with DeepHD super-resolution technology so that our users can experience even more content in stunning high quality.

1 comment
О. Дозоров
8 May 2020, 01:25
Any clue on such restoration of custom user-defined content? Or, if deepHD is a realtime feature - at least kinda "magic lens" client app or web service which could grab and process a vid directly from Youtube, Vimeo, Niconico, etc.?



For example, from 2008 to present I experience some lo-fi pain with Youtube watch?v=NyXfKPTyoT0 cartoon masterpiece that seems to disappear in modern web indexes without any clear trace.



Maybe you also plan to make reverse video search, if deepHD is still not ready for market? And, since deepHD is a certain code, would you make it available on gitlab or any other repository?