装修网站建设自媒体怎么做
1.https://www.cs.cmu.edu/~barbic/cs-740/ap922.pdf
2.FFmpeg: libavcodec/x86/fdct.c Source File
再学FDCT快速精确实现协议改写浮点FDCT,
ffmpeg的dct使用的就是这个快速精确协议。
3.http://dspace.fcu.edu.tw/bitstream/2377/30265/1/ICM%204-1.pdf
我想如把所有余弦值用手算算出来,再用if查表应该能缩短时间,可惜数量太大,有8*8*8*8=4096个。还有一种稍微简便的方法改为1D DCT,现在用的是2D,可以缩小到2D四分之一时间。但最好的是用ffmpeg的AAN算法,但太难了,那怕是照搬复制都不容易。
网上讲,2D DCT转为1D 后,转换时间减少四分之三。我理解1D是否是分别对8行原始数据DCT后得到8行S8,,再对S8竖向取8列再DCT?编程验证一下。
8行水平DCT 循环为8*8*8,再加上垂直的DCT,共计2*8*8*8=1024 ,理论上是少了 3/4.