제8장 이산 푸리에 변환.

Slides:



Advertisements
Similar presentations
Signal Processing & Systems ( 신호 및 시스템 ) 연속 주기 신호의 주파수 해석 Prof. Jae Young Choi ( 최재영 교수 ) Signal Processing & Systems (2014 Fall) Prof. Jae Young Choi.
Advertisements

제 4 장 이산시간신호와 변환. 2/50 1. 서론  이산푸리에 변환 ( discrete Fourier transform; DFT ) – 연속 함수의 표본들에 적용가능 푸리에 변환  아날로그 시스템 이산푸리에 변환  디지털 시스템 – 이산푸리에 변환 푸리에 적분에.
출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
재료수치해석 HW # 박재혁.
적분방법의 연속방정식으로부터 Q=AV 방정식을 도출하라.
제 3 장의 구성 3.1 푸리에 변환 (Fourier transform) 3.2 푸리에 변환의 성질
제2장 주파수 영역에서의 모델링.
Report #5 - due: 4/13 다음 10*5의 희소 행렬 A, B를 고려하라.
수치해석 6장 예제문제 환경공학과 천대길.
Report #2 - Solution 문제 #1: 다음과 같이 프로그램을 작성하라.
컴퓨터 프로그래밍 기초 [Final] 기말고사
10장 랜덤 디지털 신호처리 1.
전자기적인 Impedance, 유전율, 유전 손실
오브젝트 조합 회로 IT CookBook, VHDL을 이용한 디지털 회로 입문.
Chapter 02 순환 (Recursion).
RS 및 D 플립플롭 RS Flip Flop 래치는 어떤 입력 레벨에 의해서 제어되는 데 플립플롭은 클록 입력이라고
디지털영상처리 및 실습 대구보건대학 방사선과.
질의 사항 Yield Criteria (1) 소재가 평면응력상태에 놓였을 때(σ3=0), 최대전단응력조건과 전단변형에너지 조건은σ1 – σ2 평면에서 각각 어떤 식으로 표시되는가? (2) σ1 =σ2인 등이축인장에서 σ = Kεn로 주어지는 재료의 네킹시 변형율을 구하라.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Multimedia Programming 10: Point Processing 5
Error Detection and Correction
멀티미디어 시스템 (아날로그 이미지,신호를 디지털로 변환 방법) 이름 : 김대진 학번 :
Simulating Boolean Circuits on a DNA Computer
5장. 이산푸리에변환 5.1 연속신호의 푸리에변환 5.2 이산신호의 푸리에변환 5.3 이산푸리에변환
2007 1학기 11 프로젝트 기초 실습.
상관함수 correlation function
차세대통신시스템 2. 신호와 시스템 (2) March 14 – 15, 2011 Yongwon Lee
행렬 기본 개념 행렬의 연산 여러가지 행렬 행렬식 역행렬 연립 일차 방정식 부울행렬.
담당교수 : 이봉운 아날로그 및 디지털 통신이론 ’12-1 학기 담당교수 : 이봉운
일차방정식의 풀이 일차방정식의 풀이 순서 ① 괄호가 있으면 괄호를 먼저 푼다.
제4장 제어 시스템의 성능.
Ⅲ. 이 차 방 정 식 1. 이차방정식과 그 풀이 2. 근 의 공 식.
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
담당교수 : 이봉운 공학 수학 (10-2 학기) 담당교수 : 이봉운
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
Computer Vision & Pattern Recognition Lab. 위 은 영 (월)
4 장 신호(Signals) 4.1 아날로그와 디지털(Analog and Digital)
논리회로 설계 및 실험 5주차.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
행렬의 개요 행렬은 수를 원소로 지니는 다차원 배열이다. mn (“m by n”) 행렬은 m개의 행과 n개의 열을 갖는다.
8장. spss statistics 20의 데이터 변환
3 장 주파수 영역 해석: 이산 Fourier 급수 및 Fourier 변환.
합집합과 교집합이란 무엇인가? 01 합집합 두 집합 A, B에 대하여 A에 속하거나 B에 속하는 모든 원소로 이루어진 집합을 A와 B의 합집합이라고 하며, 기호 A∪B로 나타낸다. A∪B ={x | x∈A 또는 x∈B}
Chapter 3 Frequency Domain Analysis
P 등속 직선 운동 생각열기 – 자동차를 타고 고속도로를 달릴 때, 속력계 바늘이 일정한 눈금을 가리키며 움직이지 않을 때가 있다. 이 때 자동차의 속력은 어떠할까? ( 속력이 일정하다 .)
제곱근의 곱셈과 나눗셈 제곱근의 곱셈과 나눗셈 a > 0, b > 0 일 때, √ 3 √ 5 √15 3 √ 5
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
Fitting / Matrix / Excel
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
Ch.6 주파수 응답과 시스템개념 김하린 오희재 이연재
차세대통신시스템 3. 진폭 변조 (2) April 11 – 12, 2011 Yongwon Lee
미분방정식.
에어 PHP 입문.
2. 누화와 케이블링 1. 서론 2. 용량성 누화 3. 유도성 누화 4. 복합적인 누화(누화의 일반적인 이해)
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Chapter 1 단위, 물리량, 벡터.
Chapter 1 단위, 물리량, 벡터.
광합성에 영향을 미치는 환경 요인 - 생각열기 – 지구 온난화 해결의 열쇠가 식물에 있다고 하는 이유는 무엇인가?
3. 반/전 가산기, 반/전 감산기 제작 컴퓨터 구조 실습 안내서.
생체 신호의 실시간 디지털 처리 7조 홍윤호( )-1등
쉽게 배우는 알고리즘 2장. 점화식과 점근적 복잡도 분석
상관계수.
기체상태와 기체분자 운동론!!!.
I. 수와 식 1. 유리수와 순환소수.
Automatic Music Transcription
수치해석 ch3 환경공학과 김지숙.
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
아날로그 신호를 디지털 신호로 변환하는 A/D 변환기 A/D 변환 시 고려하여 할 샘플링 주파수 D/A 변환기
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
교착 상태 해결 : 교착 상태 탐지 교착 상태 탐지(Deadlock Detection)
Presentation transcript:

제8장 이산 푸리에 변환

8.1 서론 (예) 어떤 사람의 음성이 어떤 주파수 분포를 갖는가 조사 푸리에 변환식 사용 (8.1) (예) 어떤 사람의 음성이 어떤 주파수 분포를 갖는가 조사 푸리에 변환식 사용 (8.1) : 그러나 위의 식으로는 주파수 분석을 통한 처리는 불가능하다. 우선 첫째로 가 식으로 나타나지 않는다. 음성신호를 깨끗한 식으로 나타낸다는 것은 불가능하기 때문이다. 가 식으로 표현이 가능한 경우에도 위의 적분을 쉽게 하거나 적분이 존재하는 경우는 드물다. 이산시간 푸리에 변환 (위의 신호를 샘플링) (8.2) : 위의 이산시간 푸리에 변환 역시 이 일반적으로 식으로 나타나지 않기 때문에 가 식으로 나오는 경우는 거의 없으며 어차피 컴퓨터를 통하여 계산을 하고 주파수를 적절한 간격으로 샘플링하여 플로팅 해보는 것이다. 컨벌루션 (8.3) : 일반적인 입력에 대하여 의 식을 얻는 것은 불가능하며 긴 시간동안 주파수 성분의 평균인 값은 별 의미가 없을 수도 있다. 만약 그 의미가 있는 경우에도 를 식으로 구할 수 없는 경우에는 이것과 를 곱하기 위해서는 각각을 일정 간격으로 샘플링하여 각 샘플을 서로를 곱한 다음에 이 결과로 를 추정하여 이의 역변환을 구하는 방법으로 출력을 구할 수도 있다. 연속시간 푸리에 변환, 이산시간 푸리에 변환만으로는 실제 응용 분야에 적용하기가 충분하지 않고 일정 간격으로 주파수 성분을 샘플링한 어떤 새로운 변환이 필요하다. 이산 푸리에 변환 (discrete Fourier Transform): 이산시간 푸리에 변환을 샘플링한 것, 컴퓨터를 이용하여 주파수 분석과 필터링을 하는데 사용 이산 푸리에 변환: 주기 이산신호의 푸리에 급수와 같다.

8.2 이산 푸리에 변환 신호 의 이산시간 푸리에 변환 는 전체의 주파수 스펙트럼을 나타낸다. 의 일부분의 스펙트럼 (8.4) 8.2  이산 푸리에 변환 신호 의 이산시간 푸리에 변환 는 전체의 주파수 스펙트럼을 나타낸다. 의 일부분의 스펙트럼 (8.4) 이산 푸리에 변환의 의미 i) 이산 시간 변환 를 샘플링 하여 주파수 영역에서 이산 함수가 되도록 한 것 ii) N 개의 데이터를 여러 주파수 성분을 갖는 기본 벡터에 내적 시켜 그 성분을 얻은 것 이산 푸리에 변환의 해석 : (N 개의 이산시간 신호를 벡터로 보고 이를 기본 단위벡터로 분해, 합성하는 방법) 벡터를 0부터 사이의 간격의 주파수 성분들로 분해하기 위한 단위 벡터를 라고 하면 이는 성분을 나타내며 이의 n 번째 원소의 값은 이 된다. 결국 주어진 시간 영역에서의 N개의 데이터를 벡터로 보았을 때 이는 다음과 같이 분해, 합성될 수 있다. (8.11) 여기서 로서 k번째 주파수 성분을 나타낸다. 길이 N의 데이터에 대한 이산 푸리에 변환과 그 역변환 (8.14) : 결국 이는 식 (2.66)에서 본 바와 같은 주기신호(주기 N)의 푸리에 급수와 같다.

8.3 이산 푸리에 변환의 해석 [이산 푸리에 변환과 이산시간 푸리에 변환, 그리고 푸리에 급수의 관계] 8.3  이산 푸리에 변환의 해석 [이산 푸리에 변환과 이산시간 푸리에 변환, 그리고 푸리에 급수의 관계] 그림 8.1과 같은 비주기 신호의 이산시간 푸리에 변환 (8.15) 위의 크기를 주파수에 따라 그린 것이 그림 8.2 그림 8.1  이산시간 신호(비주기 신호) 그림 8.2          

[그림 8.2를 컴퓨터를 이용하여 자신이 직접 프로그램을 통하여 그리는 과정 ] 우선 식 (8.15)에서 를 적절한 간격으로 샘플링하면서 그 값을 계산할 것이고 를 축에, 이 값을 축에 플로팅 이와 같이 컴퓨터에서 푸리에 변환을 다루려면 항상 식 (8.15)와 같은 이산시간 푸리에 변환을 샘플링 하는 과정이 필요하다. 식 (8.15)와 같이 간단한 형태로 푸리에 변환식이 나타나지 않는 경우에는 이와 같은 과정이 더욱 필요하며 식 (8.3)과 같이 두 푸리에 변환 식을 곱할 때에도 어느 한 식이 일반적인 유리함수로 나타나지 않거나 컴퓨터를 이용하여 두 함수를 곱할 필요가 있으면 항상 어떤 간격으로 푸리에 변환을 샘플링 하여 결과의 샘플 값을 얻어야 한다. 즉, 컴퓨터나 디지털 회로를 이용한 디지털 신호처리에서는 주파수 영역에서의 연속함수인 나 를 주파수 영역에서 일정 간격으로 샘플링 할 필요가 있다. (예) 위의 식 (8.15)의 구간을 개의 구간으로 나눈다고 하면 번째 샘플 값은 다음과 같다. (8.16) 그림 8.1과 같이 신호의 길이가 개 이내로 유한한 경우 위 식은 결국 식 (8.12)과 똑같다. (예1) 그림 8.1의 비주기함수를 푸리에 변환한 그림 8.2의 를 구간에서 8개로 샘플링을 한다면 그 결과는 그림 8.3과 같고(크기는 1/8) 따라서 이는 그림 8.4와 같은 주기함수의 푸리에 급수와 똑같다. (예2) 그림 8.1의 비주기 신호의 푸리에 변환인 를 16개로 샘플링 한 결과는 그림 8.5와 같으며 이의 역변환은 그림 8.6과 같은 주기함수가 된다. 즉, 주파수 영역에서 샘플링을 하니 시간 영역에서 비주기 함수가 주기함수로 되는 것이다. (연속시간 신호를 샘플링하면 그 주파수 성분이 샘플링 주파수를 주기로 반복되는 주기함수가 되는 것과 같은 이치 )

그림 8.3  그림 8.2의 샘플링 그림 8.4  주기 8인 이산시간 신호 그림 8.5 를 16개로 샘플링한 결과 그림 8.6  그림 8.5와 같은 푸리에 계수를 갖는 신호

어떤 유한 길이의 신호 의 주파수 성분을 구하고자 한다면 식 (8. 2)를 통하여 를 구하는 것이 가장 합당하다 어떤 유한 길이의 신호 의 주파수 성분을 구하고자 한다면 식 (8.2)를 통하여 를 구하는 것이 가장 합당하다. 그러나 대부분의 응용에서 이를 구하는 것은 불가능하며 컴퓨터를 이용하여 어떤 처리를 하고자 한다면 어차피 이를 어떤 일정 간격으로 샘플링 해야 한다. 의 0부터 사이를 N 간격으로 샘플링 한 결과 = 을 N주기로 반복시킨 주기함수의 푸리에 급수 : 주파수 영역에서 샘플링을 더 잘게 한다면 이는 주파수의 더 자세한 변화를 보는 것이며 주파수 영역에서 해상도가 높아지는 것이다. 이에 대한 대가는 시간영역에서 변환해야할 신호의 길이가 늘어나는 것이다. 시간영역에서 계속되는 신호의 어떤 구간에서의 주파수 분포를 알고자 할 때 이 구간의 신호 N개를 떼어내어 이의 를 직접 구하지 않고 의 샘플링 값에 해당하는 값을 구할 수 있으므로 이를 이용하여 를 추정할 수 있다. 그림 8.7이 연속되어 들어오는 입력이라 하고 이의 점선 부분의 블록에 대한 주파수 성분을 알고자할 때 이 부분이 주기신호로 반복되는 그림 8.8과 같은 신호의 푸리에 급수를 구하는 것이다. 그 결과가 그림 8.9라 할 때 역시 점선 부분이 원하는 를 N 개로 샘플링 한 결과이다. 따라서 이산시간 신호에서 이산 푸리에 변환과 푸리에 급수의 차이는 없다고도 할 수 있다. 신호가 주어지면 관심 있는 N 개의 부분을 추출하여 식 (8.14)에 따라 변환한 결과가 이산 푸리에 변환이며 그 의미는 이산시간 푸리에 변환 를 N 개로 샘플링 한 결과이다. 그림 8.7  연속되어 입력되고 있는 신호. 블록 안의 신호의 주파수 분포를 알고자 한다. 그림 8.8  그림 8.7의 블록 안의 신호를 반복시킨 주기신호 그림 8.9  그림 8.8의 푸리에 급수. 점선 부분이 그림 8.7의 푸리에 변환         의 샘플링 결과이기도 하다.

8.4 푸리에 변환의 계산 이산 푸리에 변환과 이산 푸리에 역변환 (8.17) (8.18) 여기서 8.4  푸리에 변환의 계산 이산 푸리에 변환과 이산 푸리에 역변환 (8.17) (8.18) 여기서 FFT(Fast Fourier transform): 이산 푸리에 변환의 계산을 손으로 계산하는 경우는 없고 대부분의 경우 고속 알고리듬을 사용 (예) 입력이 네 개인 경우 푸리에 변환의 구체적인 예 : 입력이 네개인 경우 식 (8.17)에서 N이 4인 경우인데 이 식은 다음과 같은 행렬 연산 (8.19) 이므로 (8.20) 구체적인 예로 입력이 인 경우를 생각해 보자. 위 식에 입력으로 이 값을 대입하면 출력이 임을 확인할 수 있다. 즉, 가 0, , , 인 곳에서 주파수 성분이 각각 2, , 0, 라는 것이다. 물론 에서의 값은 다시 2이다. 이 샘플 외에서의 주파수 성분을 알기 위해서는 입력 샘플 수를 늘여야 한다.

(예) 입력이 8개인 8 포인트 이산 푸리에 변환의 식 (8.21) 여기서 계산량: 식 (8.17)과 (8.18)의 이산 푸리에 변환, 역변환을 계산한다면 행렬과 벡터의 곱을 계산하는 것이므로 계산량은 에 비례 FFT 알고리듬 : 디지털 신호처리 분야에서 이와 같은 이산 푸리에 변환의 실시간 구현을 위한 연구가 매우 중요하게 생각되었으며 이에 관한 여러 고속 계산 알고리듬 해석 방법으로는 위와 같은 행렬 계산에서 곱셈을 줄일 수 있는 알고리듬이라 생각할 수도 있고 또는 식 (8.17)을 조작하여 이를 여러 단계의 작은 알고리듬들로 나눈 것이라 생각할 수도 있다.

8.5 이산 푸리에 변환의 특성 및 응용 [주파수 분석 방법으로의 이산 푸리에 변환] 8.5  이산 푸리에 변환의 특성 및 응용 [주파수 분석 방법으로의 이산 푸리에 변환] 샘플링 과정에서 샘플링 주파수가 충분히 크지 않으면 우선 와 의 모양이 달라질 수 있다. 게다가 를 구하기 위해서는 연속되는 입력에서 일부분을 취하여 이산 푸리에 변환을 하는 것인데 이는 원래 신호에 어떤 길이 N의 윈도우를 씌워서 그 결과를 푸리에 변환하는 것과 같은 효과이다. 그림 8.10이 이 과정의 시간영역과 주파수 영역에서의 관계를 나타낸 것이다. 즉, 우리가 수행하고자 하는 이산 푸리에 변환은 그림 8.10(a)와 8.10(b) 신호의 곱인 8.10(c)의 신호를 푸리에 변환하는 것이므로 각 그림의 우측에 있는 바와 같이 그림 8.10(a)의 푸리에 변환과 8.10(b)의 푸리에 변환의 컨벌루션 결과가 그림 8.10(c) 신호의 푸리에 변환 결과이다. 따라서 당연히 블록 별로 나누기 전의 신호의 푸리에 변환과는 차이가 있다. 그림 8.10  이산 푸리에 변환의 해석 (a) 과 (b) 윈도우 함수와 이의 푸리에 변환 (c) 시간영역에서는 (a)와 (b)의 곱, 주파수 영역에서는 이들의 컨벌루션

[이산 푸리에 변환의 응용 분야: 고속 필터링] 현재 입력 과 시스템의 임펄스 응답 이 컨벌루션 (그림 8.11) 는 사실 을 푸리에 변환한 것이 아니라 이 을 주기로 반복되는 신호를 변환한 것이다. 따라서 의 역변환은 그림 8.11과 같은 일반적인 컨벌루션의 결과가 아니라 그림 8.12와 같이 각 신호가 을 주기로 반복되는 신호의 컨벌루션 결과가 된다. 그림 8.11  선형 컨벌루션 그림 8.12  순환 컨벌루션 입력이 앞으로 말려서 다시 시스템의 계수와 곱해지는 형태이므로 이를 보통 원형 컨벌루션이라 부르며 이에 대비하여 일반적인 컨벌루션을 선형 컨벌루션이라 부른다. 즉, 를 역변환 하여 그 결과를 이라 할 때 그 결과는 다음과 같다. (8.22)

위의 결과에서 보듯이 외에는 그림 8. 11의 선형 컨벌루션 결과와 일치하는 경우가 하나도 없다 위의 결과에서 보듯이 외에는 그림 8.11의 선형 컨벌루션 결과와 일치하는 경우가 하나도 없다. 또한 출력은 네 개만으로 국한되어 원래 선형 컨벌루션의 결과 7 개를 구할 수도 없다. 이산 푸리에 변환으로 선형 컨벌루션 결과를 얻을 수는 없을까? [답] (그림 8.12 참조) 각 신호의 뒤에 세 개 이상의 0을 채우면 이들의 원형 컨벌루션의 결과가 선형 컨벌루션의 결과와 같게 됨을 알 수 있다. 즉, 다음과 같은 순서로 진행한다. 1. 의 이산 푸리에 변환 를 구한다. 2. 의 이산 푸리에 변환 를 구한다. 3. 위 두 결과의 곱을 라 한다. 4. 의 이산 푸리에 역변환을 구한다. 그림 8.13  이산 푸리에 변환으로 선형 컨벌루션을 얻기 위한 방법