当前位置: 首页 > news >正文

做网站1g1核够吗同泰公司网站公司查询

做网站1g1核够吗,同泰公司网站公司查询,做网站代下,网站开发合同怎么写二维离散傅里叶变换的实现 1.使用Python包实现1.1 fftshift在numpy中的实现1.2 平移后的幅度谱 2.使用c实现之12.1 FFTW库安装2.2 结果比较 3.使用c实现之2参考文献 1.使用Python包实现 import numpy as np import matplotlib.pyplot as plt anp.array([0, 2, 4, 1,6, 1, 3, … 二维离散傅里叶变换的实现 1.使用Python包实现1.1 fftshift在numpy中的实现1.2 平移后的幅度谱 2.使用c实现之12.1 FFTW库安装2.2 结果比较 3.使用c实现之2参考文献 1.使用Python包实现 import numpy as np import matplotlib.pyplot as plt anp.array([0, 2, 4, 1,6, 1, 3, 2,5]).reshape(3,3) fnp.fft.fft2(a) fshiftnp.fft.fftshift(f) mag20*np.log(np.abs(fshift)) plt.axis(off) plt.imshow(mag) plt.show()其中 f: array([[24. 0.00000000e00j, -6. 4.44089210e-16j, -6. -4.44089210e-16j],[-3. 1.73205081e00j, -7.54.33012702e00j, 4.5-8.66025404e-01j],[-3. -1.73205081e00j, 4.58.66025404e-01j, -7.5-4.33012702e00j]])fshift: array([[-7.5-4.33012702e00j, -3. -1.73205081e00j, 4.58.66025404e-01j],[-6. -4.44089210e-16j, 24. 0.00000000e00j, -6. 4.44089210e-16j],[ 4.5-8.66025404e-01j, -3. 1.73205081e00j, -7.54.33012702e00j]])1.1 fftshift在numpy中的实现 通过官方代码可以看出fftshift是通过np.roll实现的。 def fftshift(x, axesNone):x asarray(x)if axes is None:axes tuple(range(x.ndim))shift [dim // 2 for dim in x.shape]return roll(x, shift, axes)对于3*3的二维矩阵对应np.roll(x,1,(0,1)。 np.roll(f, 1,0) array([[-3. -1.73205081e00j, 4.58.66025404e-01j, -7.5-4.33012702e00j],[24. 0.00000000e00j, -6. 4.44089210e-16j, -6. -4.44089210e-16j],[-3. 1.73205081e00j, -7.54.33012702e00j, 4.5-8.66025404e-01j]])np.roll(np.roll(f, 1,0),1,1) array([[-7.5-4.33012702e00j, -3. -1.73205081e00j, 4.58.66025404e-01j],[-6. -4.44089210e-16j, 24. 0.00000000e00j, -6. 4.44089210e-16j],[ 4.5-8.66025404e-01j, -3. 1.73205081e00j, -7.54.33012702e00j]])与np.fft.fftshift(f)结果一致。 1.2 平移后的幅度谱 2.使用c实现之1 #include iostream using namespace std; #includeEigen/Dense using namespace Eigen; #include fftw3.hint main() {MatrixXd a(3, 3), out(a.rows(), a.cols());MatrixXcd FTa(a.rows() / 2 1, a.cols());a 0, 2, 4, 1,6, 1, 3, 2,5;fftw_plan P;P fftw_plan_dft_r2c_2d(a.cols(), a.rows(), a.data(), (fftw_complex*)FTa.data(), FFTW_ESTIMATE);fftw_execute(P);cout dft endl;cout FTa endl;cout endl;P fftw_plan_dft_c2r_2d(a.cols(), a.rows(), (fftw_complex*)FTa.data(), out.data(), FFTW_ESTIMATE);fftw_execute(P);cout idft endl;out out / (a.cols() * a.rows());cout out endl;return 0; }结果如下 dft(24,0) (-6,0) (-6,0)(-3,1.73205) (-7.5,4.33013) (4.5,-0.866025)idft 0 2 4 1 6 1 3 2 52.1 FFTW库安装 这里用到了FFTW c库具体编译及调用可参考Windows下FFTW_2.1.5的编译及使用。 这里仅列出生成lib文件用到的vs中powetshell打开方式 2.2 结果比较 从结果可以看出与Python代码相比FFTW的输出未进行shift而且仅输出部分有用信息。 3.使用c实现之2 第2节中的实现使用eigen MatrixXcd 来接收fftw_complex*类型。 本节实现使用double类型通过(double(*)[2])数组指针来接收fftw_complex*类型。 #include iostream using namespace std;#include fftw3.h #includearray int main() {double vecIn[9] { 0, 2, 4, 1,6, 1, 3, 2,5};double* vecOut;vecOut vecIn 9*sizeof(double);fftw_plan P fftw_plan_dft_r2c_2d(3, 3, vecIn, (double(*)[2])vecOut, FFTW_ESTIMATE);fftw_execute(P);cout endl;for (int i 0; i 12; i)cout *(vecOut i) endl;return 0; }结果如下 24 0 -6 4.44089e-16 -3 1.73205 -7.5 4.33013 -3 -1.73205 4.5 0.866025可以看出实部和虚部分别存放。 参考文献 [1] FFTW库官网 [2] Windows下FFTW_2.1.5的编译及使用 [3] FFTW 官方文档
http://www.zqtcl.cn/news/184756/

相关文章:

  • 找个公司做网站需要注意什么wordpress用户名长度
  • 推荐几个没封的正能量网站营销技巧和营销方法视频
  • html mip 网站桂林市临桂区
  • 做网站如何月入10万建行app怎么注册登录
  • 建设一个旅游网站毕业设计建设网站的功能定位是什么原因
  • wordpress网站导航模板杭州建设网站的公司
  • 如何做视频解析网站wordpress 关闭评论
  • 安福网站建设微信开发者工具怎么下载
  • 网罗设计网站威海网页设计制作公司
  • 网站用cmswordpress插件怎么做
  • 如何办好公司网站元器件网站搭建
  • 建设领域行政处罚查询网站wordpress数据库发文章
  • 怎么做网页的多开器宿迁seo优化
  • 别人帮做的网站怎么修改病句店铺引流的30种方法
  • 网站备案幕布怎么申请绍兴cms建站模板
  • 做网站熊掌号软件设计公司排名
  • 深圳 做网站学做西点的网站
  • 静态网站安全性百度服务平台
  • 网站vi设计公司网站建设app
  • 书店网站建设策划书总结每天看七个广告赚40元的app
  • 做网站的属于什么专业成都广告制作安装公司
  • 天津市网站建设公司网站制作费用
  • 网站制作公司 郑州wordpress图片中文不显示解决
  • 网站建设模式有哪些方面jquery做的装修网站
  • 佛山手机建网站企业网站公司单位有哪些
  • 给企业做网站的平台有没有专门做衣服搭配的网站
  • 青岛本地网站最近军事新闻大事
  • 潍坊哪里有做360网站的成都官微最新发布
  • 还有哪些网站可以做淘宝活动企业建设网站的方式
  • 上海技术公司做网站2022引流人脉推广软件