히스토그램 평할화
- 주어진 영상을 히스토그램 평활화해서 영상의 Contrast를 향상할 수 있다.
- HDRI(High Dynamic Range Imaging)로 영상의 Contrast를 향상시키는 과정을 설명할 수 있다.
Histogram Equalization (히스토그램 평할화)
Contrast를 향상시키는 방법
❓ Contrast: 비교되는 대상들과의 픽셀 값의 차이
⇒ 영상의 히스토그램에 기반한 통계적 기법으로 영상의 Contrast를 향상시킴
Histogram 평할화단계
- 영상의 Histogram을 만듦
- Histogram: 대상이 되는 값들의 개수를 세는 것 ⇒ pmf
- Probaibility mass function 이라고도 함
- Histogram으로부터 Cumulative Histogram을 만듦 (누적 히스토그램)
- Cumulative Histogram: 어떤 밝기 값에 대한 개수를 밝기 값 0에서 시작해서 그 밝기 값까지의 모든 픽셀의 개수를 세는 것 ⇒ cdf
- Cumulative probability density function 이라고도 함
💡 영상의 해상도가 M x N일 때, 가장 밝은 픽셀 값의 cdf 개수 = M x N
Histogram Equalization → 선형적 변화
- 밝기가 가장 작은 픽셀 → 가장 어두운 검정색
- 밝기가 가장 큰 픽셀 → 흰색 반환
- 중간 밝기 → 비례 반환
Contrast의 의미
Contrast = Luminance Difference / Reference Luminance
⇒ 대조 = 밝기 차이 / 기준 밝기
관련 용어
✅ Dynamic Range: 영상에서 최소 밝기에서 최대 밝기의 범위
Contrast Ratio: 최소 밝기에 대한 최대 밝기의 비율
stop = log2(contrast ratio) ⇒ Stop이 클수록 담을 수 있는 밝기 변화가 크다.
HDRI (High Dynamic Range Imaging)
💡 Dynamic Range가 작은 카메라로 노출을 다르게 한 여러 장의 영상을 합쳐서 Dynamic Range가 높은 영상을 합성하는 과정
관련 용어
- EV(Exposure Value: 노출값) ⇒ 카메라에 빛이 들어오는 양
- f_number: 카메라에 빛이 들어오는 조리개 구멍의 크기
- 빛의 양은 조리개의 면적에 비례하므로 2배의 관계를 갖음
- Shutter speed: 빛이 들어오는 시간을 조절
Hough Transform
- Hough Transform의 직교좌표계와 극좌표계의 차이점을 설명할 수 있다.
- 주어진 영상에서 Hough Transform을 사용해서 선을 인식할 수 있다.
Hough Space에서 (a,b) 점의 Count가 지정한 임계값보다 크면 선 y = ax + b가 영상에 있다고 인식
영상의 평면 좌표계를 HoughSpace의 집합으로 변환하는 함수
Hough Space
기울기를 a, y절편을 b로 설정한 선 공간
⇒ 평면좌표계에서 특정 점들을 지나가는 선들의 집합을 표현할 수 있다.
✅ Hough Space에서 (a,b) 점의 count가 지정한 임계값보다 크면 선 y = ax + b가 영상에 있다고 인식
⇒ a: 기울기 - b: 절편
Hough Array(r,𝜃)
- 입력된 영상의 픽셀을 지나는 선들의 개수를 저장함
- 개수가 임계값보다 많은 (r, 𝜃)를 선으로 출력함
Hough Transform 알고리즘
- 영상에서 선을 인식하고자 하는 픽셀들의 위치로 구성된 시퀀스 구성
- 선으로 인식할 Count의 임계값으로 설정
- Hough Array (a,b)에 있는 Count 값들을 모두 0으로 설정
- 시퀀스에 있는 픽셀 위치를 하나씩 순서대로 읽어서 처리
- Hough Array에서 (a,b)의 Count값이 임계값 보다 크면 입력된 영상에 (a,b)의 선이 있다는 것을 출력
⇒ 문제점: 기울기 a가 -∞에서+∞ 의 값을 가짐(영상에서 수직선)
극좌표계에서의 선 공식
Image Convolution
- Convolution의 수학적 개념을 설명할 수 있다.
- Padding을 할 수 있다.
- 영상을 다양한 마스크를 선택해서 Convolution 할 수 있다.
멀티미디어에서의 함수
- 오디오 → S(t): 시간 t에 따라 변하는 공기 진동의 크기
- 영상 → l(x,y): (x,y) 위치에서의 빛의 밝기
- 동영상 → V(x,y,t): 시간 t에 있는 프레임의 (x,y) 위치에서의 빛의 밝기
⇒ 함수의 연산: 멀티미디어 처리
⇒ 함수의 덧셈, 곱셈, Convolution
함수의 덧셈
함수의 곱셈
함수의 연산 - Convolution
Convolution 단계
- 함수의 매개변수를 t에서 tow(타우)로 변환
- 마스크 함수 h(tow)를 원점에 대칭한 마스크 함수 h(-tow)로 변환
- 마스크 함수 h(-tow)를 출력함수 g(t)의 구하고자 하는 위치 t 만큼 이동한 h(-(tow - t))로 변환
- 입력함수 f(tow)와 t 만큼 이동한 마스크 함수 h(t - tow)를 곱해서 jt(tow) 함수
Discrete Convolution(Sampling 된 신호)
💡 Convolution은 다양한 마스크를 사용해서 영상의 Edge를 검출하거나, 영상을 부드럽게 하는 등의 효과를 줄 수 있음
- 함수의 매개변수를 n에서 m으로 변환
- 입력 함수
f(n) = f(m)
- 마스크 함수
h(n) = h(m)
- 입력 함수
- 마스크 함수 h(m)를 원점에 대칭한 마스크 함수 h(-m)로 변환
- 마스크 함수 h(-m)을 출력함수 g()의 구하고자 하는 위치 n 만큼 이동한 함수
h(-(m-n))
로 변환
'이모저모 > AVFoundation' 카테고리의 다른 글
11주차. 오디오 압축 및 처리 (0) | 2024.07.23 |
---|---|
9주차. 동영상 압축기술(1) (0) | 2024.07.07 |
동영상 UIImage 배열로 변환하기 (0) | 2024.06.29 |
6주차. 정지영상 파일 포맷 및 압축 (0) | 2024.06.23 |
4주차. 데이터 에러 검출 및 복구 (0) | 2024.06.15 |
댓글