Theory/Image Processing
11 중간값 필터 (22.11.11)
Orangetasteboy
2023. 6. 22. 14:55
중간값
- 크기 순으로 정렬 후 중간 순위에 있는 값
- (주의) 평균값과는 다른 의미임

크기 순 정렬을 위한 버블소팅
- 알고리즘
- N개 숫자 중 최대값을 구하고 가장 아랫쪽으로 위치
- 전단계에서 최대값을 구했으므로, 이 값을 제외한 (N-1)개 숫자 중 최대값을 구하고 가장 아랫쪽에 위치(전단계 최대값 바로 윗쪽이 됨)
- 전단계까지 최대값과 2번째 최대값을 제외한 (N-2)개 숫자 중 최대값을 구하고 가장 아랫쪽에 위치
- 이와 같은 과정을 반복
- 알고리즘 1 구현방법
- N개 숫자 중 최대값을 구하고 가장 아랫쪽으로 위치시키기 → 바로 이웃한 값끼리 비교해서 작은 값은 윗쪽에 큰 값을 아랫쪽으로 위치를 바꿈을 반복(버블링)
- 2차원 배열을 1차원 배열에 복사하기
- BubbleSort() 함수를 사용하기 위해서 마스크 내에 있는 픽셀값을 1차원 배열로 만들어 입력시켜야 함
- 영상 내의 3x3 블록 데이터를 읽어 1차원 배열에 복사하기
- 영상내의 (x0, y0)를 시작점으로 하는 3x3 블록 → 1차원 배열
- 영상 내의 NxM 블록 데이터를 읽어 1차원 배열에 복사하기
- 영상내의 (x0, y0)를 시작점으로 하는 NxM 블록 → 1차원 배열
- 가장자리의 예외처리(빨간색 부분) → 가장 가까운 픽셀 값으로 대체
- 중간값 필터 구현 결과