커뮤니티
DSP/SPEECH
제목:    python코드 - fft,filter,zplane,convolution.Z변환 주파수응답
  3037   김윤중
  • 시스템의 주파수 응답 
    • w,H(w)=signal.freqz(b,a,N)  [link]
      w:0~pi
      • 디지털 필터의 주파수 응답을 계산합니다. 디지털 필터의 M 차수 분자 b와 N 차수 분모 a가 주어지면 주파수 응답을 계산합니다.
  • 필터의 유한 임펄스응답   
    • b=signal.firwin(numtaps, fc) [link]
      • Low-pass, High-pass, Band-pass, Band-stop filter
      • 유한 임펄스 응답 필터의 계수를 계산합니다. 필터에는 선형 위상이 있습니다. numtaps가 홀수이면 Type I이고 numtaps가 짝수이면 Type II가됩니다.
  • 필터설계(계수) 계산   
    • b=signal.remez(N,[0, 0.25,0.255,0.5], [1,0])  [link]
      • Remez 교환 알고리즘을 사용하여 지정된 주파수 대역에서 원하는 게인과 실현 된 게인 사이의 최대 오차를 최소화하는 유한 임펄스 응답 (FIR) 필터의 필터 계수를 계산합니다.
      • Remez 교환 알고리즘을 사용하여 minimax 최적 필터를 계산하십시오.
  • zplane 출력 
    • zplane(b,a) [link]
      • 시스템함수 영점과 극점을 출력한다
  • DFT,DTFS,fft     
    • Xk =numpy.fft.fft(xnn=None)   [link]
      k : 0~2pi
      • 1 차원 이산 푸리에 변환을 계산하십시오.
      • 이 함수는 효율적인 고속 푸리에 변환 (FFT) 알고리즘 [CT]을 사용하여 1 차원 n 포인트 이산 퓨리에 변환 (DFT)을 계산합니다.
  • 필터(H(z))의 계산 
    • yn=scipy.signal.lfilter(baxnaxis=-1zi=None) [link]
      • IIR 또는 FIR 필터로 1 차원 데이터 필터링
      • system function H(z)=B(z)/A(z),  b,a:분모분자 다항식의 계수
      • 디지털 필터를 사용하여 데이터 시퀀스 x를 필터링합니다. 이것은 많은 기본 데이터 유형 (객체 유형 포함)에서 작동합니다. 필터는 표준 차분 방정식의 직접 형식 II 전치 구현입니다 (참고 참조).
  • convolution
    • yn=np.convolve(h,xn)
  • audio 처리
    • playsound
      • playsoun.playsound('audio/daum.wav')
    • scipy.io
      • fs,sig=scipy.io.wavfile.read('audio/daum.wav')
      • scipy.io.wavfile.write('audio/daum.wav',fs,sig)
    • spectrogram
      • plt.spectrogram(sig.fs)