728x90
SMALL
* Binary Image
이미지의 평균 밝기값을 기준으로 각 픽셀을 밝거나 어둡다고 판단하여 바이너리 이미지로 변환 생성한다.
1. 모든 픽셀 값을 구한다. 픽셀 값은 0~255 사이의 값으로, 밝기를 나타낸다.
2. 픽셀 값의 합을 총 픽셀 수(행x열)로 나누어 평균 밝기를 구한다.
3. 각 픽셀을 순회하며 해당 픽셀값이 평균 밝기보다 크면 255(흰색), 작으면 0(검은색)을 할당한다.
* 블록 바이너리화
이미지를 일정 크기의 블록 단위로 나누어, 각 블록 내에서 독립적으로 평균 밝기를 계산하고, 그 평균을 기준으로 바이너리 이미지로 변환 생성한다.
이미지 전체의 변화가 아닌 블록 내부의 밝기를 비교하여 더 정밀한 처리를 수행한다.
1. 이미지를 블록 단위로 순회한다.
2. 각 블록 내 모든 픽셀 값을 더하여 그 블록의 평균 밝기를 구한다.
여기서 blockEndRow와 blockEndCol는 블록이 이미지 경계를 넘어갈 수 있는 상황을 처리하기 위해 min 함수를 사용하여 계산된다. 예를 들어, 이미지 크기가 100x100인데 블록 크기가 16이면, 마지막 블록은 경계를 넘어갈 수 있으므로 이를 방지하기 위해 min을 사용하여 이미지의 끝 지점을 넘어가지 않도록 제한한다.
3. 계산한 평균 밝기를 기준으로 블록 내 픽셀 값을 이진화한다. 평균보다 밝으면 255, 그렇지 않으면 0으로 변환한다.
728x90
LIST
'전공수업 > 영상처리(C언어)' 카테고리의 다른 글
[영상처리] 히스토그램 매칭(Histogram Matching) (0) | 2024.11.18 |
---|---|
[영상처리] 히스토그램 평활화(Histogram Equalization) (0) | 2024.11.18 |
[영상처리] 모자이크 처리 (OpenCV, C언어) (0) | 2024.09.30 |
[C] 2차원 배열 동적 할당 (1) | 2024.09.21 |
[영상처리] 실습 환경설정(OpenCV 3.4.1, Visual Studio) (1) | 2024.09.19 |
댓글