文件名称:1/4亮度像素内插-计算流体力学及其并行算法
文件大小:3.87MB
文件格式:PDF
更新时间:2024-06-22 10:57:40
H264 毕厚杰 pdf
图8.40 1/4亮度像素内插 在图 8.40中,标有大些字母阴影块位置为参考亮度像素值的二维矩阵的整数位置。这些像素用 来推导 predPartLXL[ xL, yL ]。 参考亮度像素矩阵 refPicLXL 中,各像素位置( xZL, yZL )推导如下, Z 可为A, B, C, D, E, F, G, H, I, J, K, L, M, N, P, Q, R, S, T, 或 U: xZL = Clip3( 0, PicWidthInSamplesL – 1, xIntL + xDZL ) yZL = Clip3( 0, PicHeightInSamplesL – 1, yIntL + yDZL ) (8.38) 表8.6给出了相应亮度像素位置 表8.6 亮度整像素位置 Z A B C D E F G H I J K L M N P Q R S T U xDZL 0 1 0 1 -2 -1 0 1 2 3 -2 -1 0 1 2 3 0 1 0 1 yDZL -2 -2 -1 -1 0 0 0 0 0 0 1 1 1 1 1 1 2 2 3 3 在给出整像素位置( xAL, yAL )到 ( xUL, yUL )像素后,分像素位置“a” 到“s”的像素值便可计算出 来。其中,半像素通过 6抽头滤波器( 1, -5, 20, 20, -5, 1 )实现,1/4像素位置像素则通过整像素和半 像素平均而得,具体如下。 (1)计算半像素位置像素b和h,先计算中间量b1和h1 ,再计算b和h。 b1 = ( E – 5 * F + 20 * G + 20 * H – 5 * I + J ) (8.39) h1 = ( A – 5 * C + 20 * G + 20 * M – 5 * R + T ) (8.40) b = Clip1( ( b1 + 16 ) >> 5 ) (8.41) h = Clip1( ( h1 + 16 ) >> 5 ) (8.42) (2)计算半像素位置像素j,同样先计算中间量j1 ,j1通过对水平或垂直方向最近半像素滤波而得。 j1 = cc – 5 * dd + 20 * h1 + 20 * m1 – 5 * ee + ff, 或者 (8.43) j1 = aa – 5 * bb + 20 * b1 + 20 * s1 – 5 * gg + hh (8.44) 这里,中间量aa、bb、gg、s1、hh、cc、dd、ee、m1、ff类似与b1和h1方式获得。最终, j = Clip1( ( j1 + 512 ) >> 10 ) (8.45)