Visual C++을 이용한 영상처리 (히스토그램, 명암처리)
- 최초 등록일
- 2008.07.16
- 최종 저작일
- 2008.05
- 8페이지/
어도비 PDF
- 가격 1,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
명암도 변환, 3X3 Convolution 예제
처리전 영상과 처리된 영상 비교
각 예제의 Visual C++ Source
목차
1. Point processing의 명암도 변환 중에서 한가지
2. Area processing의 3x3 convolution 중에서 한가지
1,2 번 각각에 대해서
1. 각자 사용한 알고리즘 및 마스크에 대한 설명.
2. 알고리즘에 해당하는 함수의 소스
3. Gray 입력 영상과 결과 영상
본문내용
1. Point processing의 명암도 변환 중에서 한가지
우선 주어진 메인 함수에서 컬러로 표현된 이미지를 그레이로 표현한다.
그리고 그레이로 표현된 이미지를 입력영상으로 하여 분할된 화면을 (0,0), (1,0), (2,0),
···, (width-1,height-1)순으로 각화소의 값을 계산하여 130보다 크거나 같은 값을 255
로 130보다 작은 값을 0으로 하여 이진화를 시킨다.
주어진 과제에서 명암도에 변화를 주어야 하므로 255값을 125로 0의 값을 100으로 하면
입력 영상보다 어두워진 이진 출력 영상을 얻을 수 있다.
#include <math.h>
void Binary(int *In_Img, int *Out_Img, int WIDTH, int HEIGHT)
{
int x,y;
int tmp ;
for( y=0 ; y<HEIGHT ; y++ ) //y축
{
for( x=0 ; x<WIDTH ; x++ ) //x축
{
tmp = In_Img[WIDTH*y+x] ;
if ( tmp>=130 )
Out_Img[WIDTH*y+x] = 255 ;
else
Out_Img[WIDTH*y+x] = 0
2. Area processing의 3x3 convolution 중에서 한가지
하나의 출력 화소를 만들기 위하여, 해당되는 화소만의 값을 변경시키는 것이 아니라 해당
화소의 주변의 값을 이용하여 해당 화소의 값을 변경시키는 것이다.
그 중에서 블러링(Blurring)을 실행하였다.
평활화 또는 블러링
- 신호 성분 중 저주파 성분은 통과시키고
참고 자료
없음