Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 当输入图像大小不是8时,如何实现dct?_Python_Opencv_Image Processing_Dct - Fatal编程技术网

Python 当输入图像大小不是8时,如何实现dct?

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),尽管

我了解到,如果需要对大小为(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),尽管视频爱好者称之为“宏块”

较差的实现会用零填充,这可能会造成恶劣的影响

更好的实现是从左到右重复上一个像素,或者从上到下重复上一个像素

请注意,只能填充图像的右侧和底部