java dct变换_Discrete Cosine Transform [DCT] (离散余弦变换)
Discrete Cosine Transform [DCT] (离散余弦变换)
描述:Binarizer是一个Transformer。
离散余弦变换是与傅里叶变换相关的一种变换,它类似于离散傅立叶变换但是只使用实数。离散余弦变换相当于一个长度大概是它两倍的离散傅里叶变换,这个离散傅里叶变换是对一个实偶函数进行的(因为一个实偶函数的傅里叶变换仍然是一个实偶函数)。
参数信息
参数描述
备注
其他
setInputCol
String
DF中待变换的特征,类型为:vector
setOutputCol
String
转换后的类型为:vector
setInverse
Boolean
true:执行反DCT,false:执行正向DCT
默认值:false
程序示例:
def getDataFrame(sparkSession: SparkSession = this.getSparkSession()): DataFrame = {
sparkSession.createDataFrame(Seq(
(0, Vectors.dense(0.0, 1.0, -2.0, 3.0)),
(1, Vectors.dense(-1.0, 2.0, 4.0, -7.0)),
(2, Vectors.dense(14.0, -2.0, -5.0, 1.0))
))
.toDF("id", "features")
}
def execute(dataFrame: DataFrame) = {
//特征名称
var feature = "words"
var feature_new = "words_count_vectorizer"
//设置模型
val dct = new DCT()
.setInputCol("features") //待变换的特征
.setOutputCol("features_dtc") //变换后的特征名称
.setInverse(false) //true:执行反DCT,false:执行正向DCT.默认值:false
//模型测试
var transform = dct.transform(dataFrame)
//show
transform.show(100, 100)
dataFrame.show(false)
}
数据结果:
+---+--------------------+----------------------------------------------------------------+
| id| features| features_dtc|
+---+--------------------+----------------------------------------------------------------+
| 0| [0.0,1.0,-2.0,3.0]|[1.0,-1.1480502970952693,2.0000000000000004,-2.7716385975338604]|
| 1| [-1.0,2.0,4.0,-7.0]| [-1.0,3.378492794482933,-7.000000000000001,2.9301512653149677]|
| 2|[14.0,-2.0,-5.0,1.0]| [4.0,9.304453421915744,11.000000000000002,1.5579302036357163]|
+---+--------------------+----------------------------------------------------------------+
实际应用例子:
离散余弦变换,经常被信号处理和图像处理使用,用于对信号和图像(包括静止图像和运动图像)进行有损数据压缩
java dct变换_Discrete Cosine Transform [DCT] (离散余弦变换)相关推荐
- 二维离散变换由c语言编写,离散余弦变换(DCT)的DSP程序设计与实现
<离散余弦变换(DCT)的DSP程序设计与实现>由会员分享,可在线阅读,更多相关<离散余弦变换(DCT)的DSP程序设计与实现(15页珍藏版)>请在人人文库网上搜索. 1.DS ...
- 二维dct变换例题_matlab进行二维DCT变换和二维DCT反变换
题目: matlab进行二维DCT变换和二维DCT反变换 在Matlab中,函数dct2 和函数idct2分别用于进行二维DCT变换和二维DCT反变换.下面以处理本次训练图像为例说明该余弦正反变换在M ...
- matlab 灰度图像dct变换,[Week2.4]图像DCT变换
均方差(Mean Square Error, MSE) 评价一幅图像压缩前和压缩还原后的差异,有两种常用方法: ①大家来找茬--进化程度高的人类可轻易识别: ②数学方法--压缩前和还原后的图像作均方差 ...
- c语言 dct变换,C语言实现DCT变换编码
内容 1.离散余弦变换编码 2.mpeg 4中的逆离散余弦变换 3.离散余弦变换研究 4.快速离散余弦变换 离散余弦变换编码 #包括 #包括 #包括 #包括 #定义PI 3. #定义CLK_TCK时钟 ...
- 【图像隐藏】基于LDPC编码译码改进DCT变换算法实现水印嵌入提取matlab源码
一.LDPC码简介 低密度校验码(LDPC码)是一种前向纠错码,LDPC码最早在20世纪60年代由Gallager在他的博士论文中提出,但限于当时的技术条件,缺乏可行的译码算法,此后的35年间基本上被 ...
- 压缩感知稀疏基之离散余弦变换(DCT)和离散正弦变换(DST)
题目:压缩感知稀疏基之离散余弦变换(DCT)和离散正弦变换(DST) 在前面一篇<压缩感知的常见稀疏基名称及离散傅里叶变换基>中集结了九篇压缩感知文献中有关稀疏基名称,并且直白地告诉大家稀 ...
- python离散余弦变换_Python图像处理 —— DCT变换
图像的DCT变换 python实现 这里去除了图像的低频部分,进行dct变换后得到图像的骨架 import cv2 import numpy as np # 读取图像 img = cv2.imread ...
- DCT(离散余弦变换(DiscreteCosineTransform))
离散余弦变换(Discrete Cosine Transform,简称DCT变换)是一种与傅立叶变换紧密相关的数学运算.在傅立叶级数展开式中,如果被展开的函数是实偶函数,那么其傅立叶级数中只包含余弦项 ...
- 基于DCT变换的JPEG图像压缩
基于DCT变换的JPEG图像压缩 摘 要:图像和视频通常在计算机中表示会占用非常大的空间,而出于节省硬盘空间的考虑,往往要进行压缩.而随着网络的发展,图像压缩技术越来越被人所重视.DCT变换是图像压缩 ...
最新文章
- gatdata获取曲线_GetData软件使用--获取曲线图中的数据
- 树莓派(Raspberry Pi 3) centos7使用yum命令报错File /usr/bin/yum, line 30 except KeyboardInterrupt, e:...
- ansible playbook实战——下发部署nginx以及更新、回滚
- 小波降噪与重构例子 python
- 【笔试or面试】金山西山居2014校招笔试题
- 六步带你轻松安装MongoDB
- 第十一节课 课堂总结
- 白岩松曾说过这样一段话
- LINQ语法类似于SQL的语法
- 《制造业中的机器人、自动化和系统集成》—— 3.5 工装与夹具
- 关于阿克曼函数(akermann)非递归算法的一点见解 c++
- 安装历史版本nvidia显卡驱动
- 苹果蓝牙耳机使用说明_苹果蓝牙耳机怎么用
- 城市引力模型——城市经济联系度制作
- 安装配置OOS2016
- JIRA上根据前置任务自动计算到期日之automation实现实例
- 泥瓦匠之 Java 的成长感悟
- php百度坐标转腾讯坐标,PHP实现腾讯与百度坐标转换
- MQTT协议详解 三、MQTT控制包(CONNECT)
- python建立资料库_python 建立数据库
热门文章
- LeetCode 1089. 复写零
- LeetCode 239. 滑动窗口最大值(双端队列+单调栈)
- win10版本查看_想知道电脑中安装的win10版本号,用这3招就对了,一键查看
- Python随机数生成方法
- php mqtt qos,Mqtt Qos 深度解读
- java字符流写入式乱码_字节流乱码与字符流乱码
- excel去重_数据处理之EXCEL的高效技巧分享
- 《Easy RL:强化学习教程》出版了!文末送书
- 不同于NLP,数据驱动、机器学习无法攻克NLU,原因有三
- pdf各种处理 PDF 的实用代码:PyPDF2、PDFMiner、pdfplumber