differential entropy = continuous entropy
왜 이름이 differential인지 도통 모르겠다.
원래 엔트로피는 이산확률일 때 정의되는데,
\( H(X) = \sum_{i} {P(x_i)\,I(x_i)} = -\sum_{i} {P(x_i) \log_b P(x_i)} \)
연속확률일 때로 확장하면,
\( h(X) = -\int_\mathbb{X} f(x)\log f(x)\,dx\)
그런데 엔트로피의 성질을 따르지 않을 수도 있다는 문제가 있다. 균등분포 \( \mathcal{U}(a,b) \)을 가정하고 differential entropy를 구하면,
\( f(x)=\frac{1}{b-a}, \\
h(X)=\int_{a}^{b} \frac{1}{b-a}\ln({b-a}) dx =\ln{(b-a)} \)
이므로, 이 때 \( b-a \) 가 1이거나 그보다 작으면 엔트로피가 0 또는 음수가 되어버리는 이상한 일이 발생한다. 만약 균등분포를 가정하고 엔트로피를 구한다면 \( a,b \)의 편차의 최소값이 항상 \( 1 \)보다 크도록 적당히 측정단위를 바꿔서 써야할 듯 하다.
정규분포 \( \mathcal{N}(\mu,\sigma) \)의 경우에는,
\( h(X)=\ln(\sigma\sqrt{2\pi e})\)
이기 때문에, \( \sigma < \frac{1}{\sqrt{2\pi e}}=0.2419\cdots \) 인 경우에는 엔트로피가 \( 0 \) 이하로 떨어질 수 있으니 역시 조심해야 한다.
다른 연속확률분포의 differential entropy는 여기로.
2014년 5월 7일 수요일
2014년 5월 6일 화요일
BM3D
BM3D (block-matching and 3-D filtering)
매우 놀라운 성능을 보여주는, 영상에서의 노이즈 제거 방법.
영상에서 (작은 크기로) 반복적으로 관찰되는 부분들을 찾아 마치 포토샵의 stamp tool처럼 노이즈를 제거하는 게 아닐까 싶다. 탐색하는 블록의 크기에 따라 수행시간이 엄청나게 늘어날 수도 있겠지만 성능 면에서는 wow.
http://www.cs.tut.fi/~foi/GCF-BM3D/index.html
매우 놀라운 성능을 보여주는, 영상에서의 노이즈 제거 방법.
영상에서 (작은 크기로) 반복적으로 관찰되는 부분들을 찾아 마치 포토샵의 stamp tool처럼 노이즈를 제거하는 게 아닐까 싶다. 탐색하는 블록의 크기에 따라 수행시간이 엄청나게 늘어날 수도 있겠지만 성능 면에서는 wow.
http://www.cs.tut.fi/~foi/GCF-BM3D/index.html
레나 이미지 원본 uncompressed Lenna image
영상처리 분야에서 화질비교용 영상으로 많이 사용되는 Lenna 이미지.
512*512 크기이며, 비압축 TIFF 포맷이다.
이론적으로 파일의 정보량은 512 px * 512 px *8 bits * 3 color layers = 6,291,456 bits = 786,432 bytes ..이어야 하지만 헤더 때문인지 파일의 크기는 786,572 bytes 이다. 출처는 [1]
아래는 256*256 크기. 출처는 [2]
좀 더 재밌는 이야기는 [3].
[1] http://sipi.usc.edu/database/database.php?volume=misc&image=12#top
[2] http://www.cis.rit.edu/~cnspci/courses/common/images/
[3] http://www.cs.cmu.edu/~chuck/lennapg/lenna.shtml
512*512 크기이며, 비압축 TIFF 포맷이다.
이론적으로 파일의 정보량은 512 px * 512 px *8 bits * 3 color layers = 6,291,456 bits = 786,432 bytes ..이어야 하지만 헤더 때문인지 파일의 크기는 786,572 bytes 이다. 출처는 [1]
| uncompressed Lenna image 512*512 TIF format (color) |
아래는 256*256 크기. 출처는 [2]
| uncompressed Lenna image 256*256 TIF format (grayscale) |
좀 더 재밌는 이야기는 [3].
[1] http://sipi.usc.edu/database/database.php?volume=misc&image=12#top
[2] http://www.cis.rit.edu/~cnspci/courses/common/images/
[3] http://www.cs.cmu.edu/~chuck/lennapg/lenna.shtml
복소수 신호 Complex signal
복소수 신호(복소 신호)
\( z=a+jb=\sqrt{a^2+b^2}(\frac{a}{\sqrt{a^2+b^2}}+j\frac{b}{\sqrt{a^2+b^2}})=A(\cos\phi+j\sin\phi)=A e^{j\phi} \)
\( z=a+jb=\sqrt{a^2+b^2}(\frac{a}{\sqrt{a^2+b^2}}+j\frac{b}{\sqrt{a^2+b^2}})=A(\cos\phi+j\sin\phi)=A e^{j\phi} \)
- 진폭 magnitude: \( A=\sqrt{a^2+b^2} \)
- 위상 phase: \( \phi=\cos^{-1}\big(\frac{a}{\sqrt{a^2+b^2}}\big)=\sin^{-1}\big(\frac{b}{\sqrt{a^2+b^2}}\big)=\tan^{-1}\frac{b}{a} \)
그래서 복소 신호를 \( A \angle \phi \)로 표현하기도 한다.
복소 신호를 만드는 것은 쉽다. 그렇다면 반대로, 전압계를 이용해서 레코딩한 신호가 복소신호일 수도 있을까?
2014년 4월 29일 화요일
신호처리 (관련) 분야 이론들 - 수정중
- Identity matrix: diagonal이 1, off-diagonal이 0인 행렬
- Toeplitz matrix: diagonal-constant matrix
- Hermitian matrix: conjugate transpose가 자기 자신과 같은 행렬
- orthogonal matrix: 각 열(행)끼리 서로 직교한 행렬. 자기 자신과 transpose를 곱하면 identity matrix가 된다.(사실 직교하기만 한다고 해서 norm이 1인 것은 아니나, 보통 이런 의미로 쓰나보다) 즉, transpose가 역행렬이다.
- orthonormal matrix: orthogonal하면서 normal하기까지 한 행렬. 그러나 orthogonal과 혼용되어 쓰이는 듯.
- unitary matrix: orthogonal의 complex version. Hermitian을 취하면 역행렬이다.
- positive semi-definite matrix
- positive definite matrix
- negative semi-definite matrix
- negative definite matrix
- indefinite matrix
- similar matrix (=matrix similarity≠similarity matrix): 정방행렬 A의 왼쪽에 정방행렬 P의 역행렬을, 오른쪽에 P를 곱해줘서 나온 행렬 B. A와 B는 rank, det, trace, eigenvalue(그러나 eigenvector는 제외)를 공유한다. 그러나 eigenvalue를 공유한다고 해서 두 행렬이 similar하다는 것은 보장하지 못한다.
- linear transform: 어떤 vector space를 다른 vector space로 변환하는데 있어서 linear operator(=matrix)를 사용
- unitary transform: 그 matrix가 unitary하기까지 할 때. 사실 우리가 알고있는 많은 transform들이 거의 unitary transform이다.
- orthogonal transform: unitary 행렬인데 실수로만 이루어져있을 때
- Laplace transform: FT가 신호 자체를 해석하는 데 적합하다면, Laplace transform은 입력과 출력 관계를 다루는데 적합하다..고 한다. 이렇게 볼 수 도 있다. 신호에 감쇠함수 exp(-sigma*t)를 곱한 뒤 FT한 것이 바로 Laplace transform이다.
- FT (Fourier transform): 신호에 exp(-jwt)를 곱하고 t에 대하여 -inf에서 inf까지 적분.
- DFT (discrete Fourier transform): FT의 discrete version. 신호가 유한길이니까 inf번의 연산을 할 수 없고, 결과물도 최대 신호의 길이만큼밖에 될 수 없다는 것에 유의.
- FFT (fast Fourier transform): DFT의 중복연산을 건너뛰어 빠르게 연산하는 방법. 이게 끝이 아니고 빠르게 연산하는 방법들이 여러 개 있다.
- Z-transform: DFT랑 완전히 똑같다고 보면 된다. DFT는 신호에 exp(-jwn)을 곱하는데 Z-transform은 exp(jw)를 z로 치환한 것 뿐.
- FRFT (fractional Fourier transform): FT의 generalized version. FT는 시간축과 orthogonal한 축으로 보내는 변환인데 비하여, FRFT는 orthogonal하지 않을 수도 있는 degree의 축으로 보낼 수 있다.
- Spectrogram: method가 아니라 개념이다. spectrum과 달리, 시변신호의 특성을 보기 위하여 2차원(시간축, 주파수축)으로 확인한다. spectrogram을 만들기 위하여 여러 method가 사용된다.
- STFT (short-time Fourier transform): FT를 시간대별로 구한다. 윈도우 크기와 오버랩의 특성을 많이 탄다.
- WVD (Wigner–Ville distribution or Wigner distribution): STFT와 비슷하다고 볼 수 있지만 물리적 의미가 다름. conti.에서 정의된다. 잘 모름.
- PWD (pseudo Wigner distribution): the windowed version of WVD.
- Choi–Williams distribution: WVD와 비슷한 것으로 생각되나 잘 모름.
- Hilbert transform
- cepstrum: spectrum에 log를 취하고 다시 IFT한 것. speech에 쓰인다고 한다.
- bi-spectrum: third-order cumulant-generating function의 FT 결과
classification; pattern recognition
- maximum a posterior (MAP): Bayesian 정리에 의한 사전/사후 확률의 관계를 이용하여 사후확률을 최대로 만드는 클래스를 추정하는 방법.
- ML (maximum likelihood) Estimation: 사전확률을 모를 때 사전확률을 모두 동일하다고 가정한 MAP.
- EM (expectation maximization) algorithm: 반복 계산을 통해 MAP나 ML의 파라미터를 추정해나가는 방법. GMM (Gaussian mixture model)의 좋은 예가 있다.
- SVM (support vector machine): 각 class에 대한 perpendicular distance를 동등하게 만들어주는 hyperplane를 설정하여 분류
- ROC curve (Receiver operating characteristic curve): 가로축이 false positive(진짜가 아닌데 진짜로 판명된 경우), 세로축이 true positive(진짜가 진짜로 판명된 경우)를 나타내고, 이 곡선이 위로 많이 휘어있을 수록 좋다.
- Shannon entropy
- self information
- conditional entropy
- mutual information
- relative entropy (Kullback-Leibler divergence): 두 확률분포의 차이를 계산. 그러나 asymmetric하므로 metric이라고 하기는 어렵다.
- cross entropy
- entropy rate
- transfer entropy
- Gaussian distribution
- Poisson distribution
- exponential distribution
- binomial distribution
- Bernoulli distribution
adaptive filter: 보통의 필터는 freq. resp.를 지정하고 설계하게 되나, 적응필터는 (cost func.를 최소화 하는) optimum performance를 만드는 데 초점이 있다. 원신호와 노이즈 신호에 대해서 완벽하게 알고 있다면 opt. filter coeff.를 구할 수 있으나, 그런 경우는 practical하게는 불가능하기 때문에 거의 모든 경우에 iteration을 통해 estimate한다.
- Wiener filter: LTI system에서 additive noise가 stationary할 때, corrupted signal과 noise의 통계적 특성을 이용하여 opt. filter coeff.를 구한다. 단, 다음과 같은 방법들이 필요하다.
- LMS (least mean square) filter: error signal의 mean square를 최소로 하기 위한 filter coeff.를 찾는 방법. LTI 가정 하에서 Wierner filter와 동일하다고 봐도 된다.
- NLMS (normalized least mean square): filter coeff.의 update시 사용되는 vector의 scaling를 통해 더 빠른 수렴을 도모한다. normalized라고 해서 vector의 크기를 줄이는 게 아니라, 오히려 늘리는 것이 핵심임에 조심.
- minimum mean square error (MMSE): LMS와의 관계?
라벨:
신호처리,
signal processing
피드 구독하기:
글 (Atom)