标签: phase

我如何找到秘密的mercurial修订版?

我从事很多项目,有时候我更愿意删除我的本地存储库.但是,我偶尔使用秘密阶段(因为我需要检查我的存储库与服务器的不同之处),因此我受到限制.

是否有搜索我可以用来在秘密阶段找到变更集,还是我必须恢复到(慢)

hg log --debug | grep secret -B 2 -A 15
Run Code Online (Sandbox Code Playgroud)

mercurial search phase

4
推荐指数
1
解决办法
558
查看次数

使用fft查找每个谐波的相位

我用Matlab.

我有一个正弦信号:

X(放大器:220 /频率:50)

我添加了3个谐波:

x1 =>(h2)amp:30/Freq:100 /相位:30°

x2 =>(h4)amp:10/Freq:200 /相位:50°

x3 =>(h6)amp:05/Freq:300 /相位:90°

我将所有信号加在一起(如X包含3个谐波),结果信号称为:Xt

这是代码:

%% Original signal
X = 220.*sin(2 .* pi .* 50 .* t);

%% Harmonics
x1 = 30.*sin(2 .* pi .* 100 .* t + 30);
x2 = 10.*sin(2 .* pi .* 200 .* t + 50);
x3 = 05.*sin(2 .* pi .* 300 .* t + 90);

%% adding the harmonics
Xt = X + x1 + x2 + x3;
Run Code Online (Sandbox Code Playgroud)

我想要做的是:找到3个谐波信号(它们的幅度,频率和相位),从求和信号Xt开始,知道基波信号 …

matlab fft phase

4
推荐指数
1
解决办法
3295
查看次数

JSF跳过阶段 - 如何调试?

我正在调试一个外部JSF应用程序.问题是,我提交了一份表格,但价值没有结转.

使用阶段监听器,我可以看到生命周期没有完全运行,所以说它跳过阶段2 -5:在恢复视图阶段之后,直接调用渲染响应阶段.我想念应用值,验证,更新模型操作等等.

因此,这可能是一个鸡与蛋的问题:1.不会调用负责阶段,因此新表单输入无法结转.2.系统无法识别任何新输入,因此在恢复视图后直接渲染.

我检查了没有调用responseComplete()或者renderResponse()的调用.

我不知何故被卡住了.有任何想法验证两个假设之一吗?或者如何调试一般?有没有人有类似的问题?


更新

我怀疑,JSF不知道回发请求,并像初始视图一样处理它.这可以解释,我只通过了第1阶段和第6阶段.

如果JSF将此识别为非面部请求,我该如何检查?
如果当前有适当的treeID,我该如何检查facesContext.

jsf skip phase

3
推荐指数
1
解决办法
3287
查看次数

使用FFTW进行相位相关

现在进行相位相关(两个图像)我使用1d变换.如何使用2d转换(它会更快?),如何使用智慧和multythread支持?如果你给代码的例子会更好.

void phase_correlation2D( IplImage* src, IplImage *tpl, IplImage *poc )
{
    int     i, j, k;
    double  tmp;

    /* get image properties */
    int width    = src->width;
    int height   = src->height;
    int step     = src->widthStep;
    int fft_size = width * height;

    /* setup pointers to images */
    uchar   *src_data = ( uchar* ) src->imageData;
    uchar   *tpl_data = ( uchar* ) tpl->imageData;
    double  *poc_data = ( double* )poc->imageData;

    //fftw_init_threads(); // for MT
    //fftw_plan_with_nthreads(2);

    /* allocate FFTW input and output arrays */
    fftw_complex …
Run Code Online (Sandbox Code Playgroud)

c opencv phase fftw correlation

3
推荐指数
1
解决办法
3824
查看次数

如何从FFT获得调幅信号的相位角

我有一个调幅信号的测量.我用fft() matlab函数分析了.在我用"书"计算一切之后,我只有一个问题.调制信号的相位不合适.只有当我从pi/2计算的相位中减去时,才能得到正确的值.调制信号是第六个组成部分:

X [6] = -8.2257e + 001 -1.6158e + 002i
相(x [6])= atan(-8.2257e + 001/-1.6158e + 002)= 1.0999

真正的阶段是: pahse(x[6])-pi/2 = -0.4709

为什么我要减去pi/2如果我使用<code>atan2(imag(X(6)),real(X(6)))</code>- 第一张图片</p>

<p>如果我使用<code>atan(imag(X(6))/real(X(6)))-pi/2</code>- 第二张图片</p> </div>
        <p>
          <a href=matlab fft phase

3
推荐指数
1
解决办法
7583
查看次数

3
推荐指数
1
解决办法
7751
查看次数

幅度和相位频谱。改变相位而不影响振幅

我有在相关点具有等效间隔和相应测量值的数据。例如,这是我拥有的数据的摘录:

y =[2.118, 2.1289, 2.1374, 2.1458, 2.1542, 2.1615, 2.1627, 2.165 2.1687...]

点之间的间隔为 0.1

所以,我需要从数据中获取的是幅度谱(幅度与频率)和相位谱(相位角与频率)。此外,我应该将数据的相位偏移负 90 度 (-pi/2)。

在移动相位并保持幅度不变时,我需要执行逆 fft 并获得新信号。我想在 Python 中做到这一点。

你能给我一个执行此操作的示例吗?

我使用的代码取自另一个 SO 问题,但我做了一些修改

## Perform FFT WITH SCIPY
signalFFT = np.fft.fft(y)

## Get Power Spectral Density
signalPSD = np.abs(signalFFT) ** 2
signalPhase = np.angle(signalFFT)

## Shift the phase py +90 degrees
new_signalPhase =(180/np.pi)*np.angle(signalFFT)+90 


## Get frequencies corresponding to signal 
fftFreq = np.fft.fftfreq(len(signalPSD), 0.1)

## Get positive half of frequencies
i = fftFreq>0

##
plt.figurefigsize=(8,4)
#plt.plot(fftFreq[i], 10*np.log10(signalPSD[i]));

plt.plot(fftFreq[i], …
Run Code Online (Sandbox Code Playgroud)

python signal-processing fft phase ifft

3
推荐指数
1
解决办法
7571
查看次数

展开角度以具有连续相位

假设我有一系列类似于此的阶段:

import numpy as np
import matplotlib.pyplot as plt
phase = np.linspace(0., 100., 1000) % np.pi
plt.plot(phase)
plt.show()
Run Code Online (Sandbox Code Playgroud)

(有很多这样的不连续性)

如何从中获得一系列更"连续"的阶段?

当然,我已经尝试过np.unwrap:

plt.plot(np.unwrap(phase))
Run Code Online (Sandbox Code Playgroud)

要么

plt.plot(np.unwrap(phase),discont=0.1)
Run Code Online (Sandbox Code Playgroud)

但它保持完全相似:

我的期望是这样的展开:

在此输入图像描述

python signal-processing numpy complex-numbers phase

3
推荐指数
1
解决办法
2136
查看次数

绘制和提取 fft 相位

下面是比较 fft 相位图与 2 种不同方法的代码:

import numpy as np
import matplotlib.pyplot as plt
import scipy.fftpack

phase = np.pi / 4
f = 1
fs = f*20
dur=10
t = np.linspace(0, dur, num=fs*dur, endpoint=False)
y = np.cos(2 * np.pi * t + phase)
Y = scipy.fftpack.fftshift(scipy.fftpack.fft(y))
f = scipy.fftpack.fftshift(scipy.fftpack.fftfreq(len(t)))

p = np.angle(Y)
p[np.abs(Y) < 1] = 0

fig, ax = plt.subplots(2, 1)
ax[0].plot(t, y)
ax[1].plot(f*fs, p, label='from fft')
ax[1].phase_spectrum(y, fs, window=None, label='from phase_spectrum')
plt.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)

这是结果:

在此输入图像描述

这是当信号周期数不是整数时的结果:

在此输入图像描述

我有几个问题:

  • 为什么使用phase_spectrum 或使用fft 的相位图和角度如此不同?使用 …

python numpy fft phase

3
推荐指数
1
解决办法
4906
查看次数

如何交换两个图像的相位响应?

我将FFT应用于每个图像.我提取了图像1和2的角度或相位.之后,我想交换两个图像之间的相位响应,但保持大小完整.我到目前为止的代码是:

Image1=double(imread('/home/anelmad/Desktop/ml/signal_images_processing/tp6/barbara.png'))/255;
Image2=double(imread('/home/anelmad/Desktop/ml/signal_images_processing/tp6/lena.bmp'))/255;
Image1=fft2(Image1);
Image2=fft2(Image2);

figure(1);
imshow(angle(Image1));
x=(angle(Image1));
angle(Image2)=x;

figure(2);
imshow(Image2);
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

error: assignment failed, or no method for '<unknown type> = matrix'
Run Code Online (Sandbox Code Playgroud)

我认为问题是我们应该修改傅里叶变换矩阵(fft2)中的复数.那是对的吗?

matlab signal-processing fft image-processing phase

2
推荐指数
1
解决办法
1544
查看次数