matlab
理木客
欢迎关注同名公众号:理木客
展开
-
c代码实现matlab中对矩阵fftshift思路
记录一下matlab中的fftshift的c语言实现思路,有时间了复现一下,下面是一个矩阵经过fftshift后的结果它可以理解为先对每一行进行fftshift,然后对每一列进行fftshift,首先对每一行fftshift结果为:注:对一个一维数组进行fftshift,如果元素为偶数个则顺序对调即可,如果为奇数则将中间元素取主,然后后面元素顺序向前移动一位,然后顺序对调,最后将中间元素补到最后的位置即可。4 5 1 2 39 10 6 7 814 15 11 12 1319 20 16原创 2021-06-10 20:41:10 · 1355 阅读 · 1 评论 -
基于fftw的二维FFT和二维IFFT的实现
#include "fftw3.h"#include <stdio.h>#include <stdlib.h>#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;typedef struct _COMPLEX{ float real; float img;}COMPLEX;float **m;CO原创 2021-06-07 16:28:46 · 1507 阅读 · 0 评论 -
xcorr互相关的算法和conv算法解析
1、xcorr互相关的算法解析输入:a=[1 2 3],b=[1 2],则xcorr(a,b)的结果为:0.0000 2.0000 5.0000 8.0000 3.0000计算过程如下:b补0得[1 2 0],然后第一个计算 1 2 31 2 0为0第二个计算1 2 31 2 0为2第三个计算1 2 31 2 0得5第四个计算1 2 3 1 2 0得8第五个计算1 2 3 1 2 0得3最后结果即 0.0000原创 2021-05-31 09:39:34 · 3132 阅读 · 1 评论 -
matlab的函数conv()的C语言实现
1.用C语言实现matlab中conv()自带的函数int max(int a,int b){ return a>b ? a:b;} int min(int a, int b){ return a<b ? a:b;}void conv(double *Ptr_Src1,double *Ptr_Src2, int Src1Lenth, int Src2Lenth, double *Ptr_Target){ double temp = 0; int i = 0; int原创 2021-05-25 14:47:38 · 2016 阅读 · 0 评论