pytorch的离散余弦变换(dct)

torch-dct的Python项目详细描述


Pythorch的DCT(离散余弦变换)

Build StatuscodecovPyPI versionPyPI versionPyPI statusGitHub license

这个库根据pytorch中内置的fft操作实现dct,以便 反向传播在CPU和GPU上都可以通过它工作。有关更多信息 DCT和此处使用的算法,请参见 Wikipedia和报纸 J. Makhoul。这个 StackExchange article 可能也有帮助。

目前正在实施以下操作:

  • 一维dct-i及其逆(即按比例的dct-i)
  • 一维dct-ii及其逆(即按比例的dct-iii)
  • 二维dct-ii及其逆(即按比例的dct-iii)
  • 三维dct-ii及其逆(即按比例的dct-iii)

安装

pip install torch-dct

需要torch>=0.4.1(较低版本可能可以,但我还没有测试它们)。

您可以通过获取源代码并运行pytest来运行测试。为了运行测试 需要安装scipy

用法

importnumpyasnpimporttorchimporttorch_dctasdctx=torch.tensor(np.random.normal(size=(1,200)))X=dct.dct(x)# DCT-II done through the last dimensiony=dct.idct(X)# scaled DCT-III done through the last dimensionassert(torch.abs(x-y)).sum()<1e-10# x == y within numerical tolerance

dct.dct1dct.idct1表示dct-i及其逆。用法相同。

只要用dct_2ddct_3didct_2didct_3d等替换dctidct 获取多维版本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法连接到数据库(安卓上的SQLite)   用java正则表达式验证windows和linux路径及扩展   java中线程的wait()和notify()方法的多线程处理   爪哇番石榴CheckedFuture<X,Y>映射到CheckedFuture<Z,Y>而不阻塞   使用反射,我可以确定Java静态final字段是否将内联吗?   bytearray Java位运算符未按预期工作   JAVA用于拆分XML参数的split()方法   java Room compile problem列引用外键,但它不是索引的一部分   solr使用证书从Java调用Solr4 rest服务   java SqlServer转换为mySql5。5,jpa@GeneratedValue不起作用   使用Selenium Java查找筛选器窗格“铅笔图标”的元素时出现问题   java Jsp将大量数据加载到内存中?