图像 DFT 变换
2016-11-18 21:05
239 查看
// 通道组建立,
cv::Mat groupMats[] = {cv::Mat_<float>(sizeConvMat),
cv::Mat::zeros(sizeConvMat.size(), CV_32F)};
cv::Mat mergeMat;
// 通道合并
merge(groupMats,2,mergeMat);
// DFT变换
dft(mergeMat, mergeMat);
// 分离通道
split(mergeMat, groupMats);
// 计算幅值
magnitude(groupMats[0], groupMats[1], groupMats[0]);
cv::Mat magnitudeMat = groupMats[0].clone();
// 归一化操作幅值加1
magnitudeMat += Scalar::all(1);
// 对数变换
log(magnitudeMat, magnitudeMat);
// 归一化
normalize(magnitudeMat, magnitudeMat, 0, 1, CV_MINMAX);
// 图像类型转换
magnitudeMat.convertTo(magnitudeMat,CV_8UC1,255,0);
cv::imshow("magnitudeMat", magnitudeMat);
转载:http://blog.csdn.net/zhuwei1988
cv::Mat groupMats[] = {cv::Mat_<float>(sizeConvMat),
cv::Mat::zeros(sizeConvMat.size(), CV_32F)};
cv::Mat mergeMat;
// 通道合并
merge(groupMats,2,mergeMat);
// DFT变换
dft(mergeMat, mergeMat);
// 分离通道
split(mergeMat, groupMats);
// 计算幅值
magnitude(groupMats[0], groupMats[1], groupMats[0]);
cv::Mat magnitudeMat = groupMats[0].clone();
// 归一化操作幅值加1
magnitudeMat += Scalar::all(1);
// 对数变换
log(magnitudeMat, magnitudeMat);
// 归一化
normalize(magnitudeMat, magnitudeMat, 0, 1, CV_MINMAX);
// 图像类型转换
magnitudeMat.convertTo(magnitudeMat,CV_8UC1,255,0);
cv::imshow("magnitudeMat", magnitudeMat);
转载:http://blog.csdn.net/zhuwei1988
相关文章推荐
- opencv学习(十五)之图像傅里叶变换dft
- 图像的二维DFT及其反变换
- 灰度图像--频域滤波 傅里叶变换之离散傅里叶变换(DFT)
- 图像的二维DFT及其反变换 .
- 图像的二维DFT及其反变换
- 用DFT变换处理图像
- 第六章 - 图像变换 - 卷积和离散傅里叶变换DFT(cvDFT)
- 图像变换(离散傅立叶变换DFT)
- Hough变换实现图像纠偏-从matlab到c++实现
- 傅里叶变换在图像处理中的作用
- 【python下使用OpenCV实现计算机视觉读书笔记2】图像与字节的变换
- 顶帽、底帽变换用于图像对比度增强
- opencv学习心得五----图像变化(灰度变换、二值变换)
- Matlab图像处理-亮度(灰度)变换问题
- 【python图像处理】极坐标变换及插值算法
- 图像拼接(九):双摄像头实时视频拼接(单应变换模型)
- 第7章 图像变换_7.2霍夫变换(略)
- [数字图像处理]灰度变换——直方图处理
- 怎样才能实现正弦函数图像变换?
- 用形态学运算变换图像