Python 当输入图像大小不是8时,如何实现dct?
我了解到,如果需要对大小为(H,W)的图像执行dct,则需要大小为(8,8)的矩阵a,并且需要使用该矩阵a计算图像上的(8,8)区域F。这意味着如果图像数组是m,则需要首先计算m[:8,:8],然后计算m[8:16,8:16],依此类推 当输入图像大小不是8时,我如何实现这个dct。例如,当图像大小为(12,12),无法容纳两个(8,8)窗口时,如何实现dct?我尝试了opencv,发现opencv可以处理这种情况,但我不知道它是如何实现的。在规范中,8x8被称为“最小编码单元”(MCU),尽管视频爱好者称之为“宏块” 较差的实现会用零填充,这可能会造成恶劣的影响 更好的实现是从左到右重复上一个像素,或者从上到下重复上一个像素 请注意,只能填充图像的右侧和底部Python 当输入图像大小不是8时,如何实现dct?,python,opencv,image-processing,dct,Python,Opencv,Image Processing,Dct,我了解到,如果需要对大小为(H,W)的图像执行dct,则需要大小为(8,8)的矩阵a,并且需要使用该矩阵a计算图像上的(8,8)区域F。这意味着如果图像数组是m,则需要首先计算m[:8,:8],然后计算m[8:16,8:16],依此类推 当输入图像大小不是8时,我如何实现这个dct。例如,当图像大小为(12,12),无法容纳两个(8,8)窗口时,如何实现dct?我尝试了opencv,发现opencv可以处理这种情况,但我不知道它是如何实现的。在规范中,8x8被称为“最小编码单元”(MCU),尽管