2019-01-27, 16:02
Example of Image Doubling
Imagine a source scaled 1280 x 720p -> 1920 x 1080p.
This is a scaling factor of 1.5x.
chroma > NGU Sharp (low)
The first entry is the chroma upscaling setting that scales the half-resolution chroma to match the luma layer:
Y' (luma - 4) CbCr (chroma - 2:0) -> Y'CbCr 4:2:2 -> Y'CbCr 4:4:4 -> RGB
luma > NGU Sharp (very high) < SSIM1D100AR
The luma layer (Y) is doubled using NGU Sharp (very high). However, the resulting output (720p -> 1440p) is too large for the target resolution (1080p). Therefore, image downscaling is used to reduce the image (1440p -> 1080p) using the setting from downscaling algo.
RGB -> YCbCr 4:4:4 -> Y -> 1440p -> 1080p
chroma > Bicubic60AR
The upscaled chroma layer (CbCr) is scaled directly from 720p -> 1080p with Bicubic60 + AR to match the doubled luma layer using the chroma quality setting. Rather than waste resources on image doubling, Bicubic60 + AR allows for the use of higher settings for luma quality.
RGB -> YCbCr 4:4:4 -> CbCr -> 1080p
Imagine a source scaled 1280 x 720p -> 1920 x 1080p.
This is a scaling factor of 1.5x.
chroma > NGU Sharp (low)
The first entry is the chroma upscaling setting that scales the half-resolution chroma to match the luma layer:
Y' (luma - 4) CbCr (chroma - 2:0) -> Y'CbCr 4:2:2 -> Y'CbCr 4:4:4 -> RGB
luma > NGU Sharp (very high) < SSIM1D100AR
The luma layer (Y) is doubled using NGU Sharp (very high). However, the resulting output (720p -> 1440p) is too large for the target resolution (1080p). Therefore, image downscaling is used to reduce the image (1440p -> 1080p) using the setting from downscaling algo.
RGB -> YCbCr 4:4:4 -> Y -> 1440p -> 1080p
chroma > Bicubic60AR
The upscaled chroma layer (CbCr) is scaled directly from 720p -> 1080p with Bicubic60 + AR to match the doubled luma layer using the chroma quality setting. Rather than waste resources on image doubling, Bicubic60 + AR allows for the use of higher settings for luma quality.
RGB -> YCbCr 4:4:4 -> CbCr -> 1080p