[공과대학 컴퓨터공학부 논문] 차영상을 이용한 동화상에서의 보행자 추적(Pedestrian tracking using subtraction images in moving picture)
본 자료는 8페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
해당 자료는 8페이지 까지만 미리보기를 제공합니다.
8페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[공과대학 컴퓨터공학부 논문] 차영상을 이용한 동화상에서의 보행자 추적(Pedestrian tracking using subtraction images in moving picture)에 대한 보고서 자료입니다.

목차

1. 서론 : 영상처리란 무엇인가

2. 기본 처리 기법
 2. 1 이진영상 처리
 2. 2 contrast stretching
 2. 3 잡음 제거
  2. 3. 1 미디언 필터에 의한 잡음 제거
  2. 3. 2 이진 영상 데이터의 잡음 제거
 2. 4 에지 추출
  2. 4. 1 1차 미분에 의한 영상 처리
  2. 4. 2 2차 미분에 의한 영상 처리

3. 보행자 검출
 3. 1 보행자 검출 과정
 3. 2 실험 및 고찰

4. 결론

5. 참고문헌

본문내용

배경색이
같은 검정색인 부분은 제대로 검출되지 않았다.
3.2.5 이진화 및 잡음 제거
차 영상의 결과를 경계 값을 주어 3.2.4의 전반적인 잡음을 제거 할 수 있었다.
여기서는 추적하고자 하는 보행자의 모습을 보존하면서 잡음을 잘 제거하는
경계 값을 12로 하였고, 이는 실험에 의해 구해진 값이다.
if(DataOut[i]>=12) DataOut[i]=255;
else DataOut[i]=0;
<그림 3.2.5> 이진화 및 잡음제거
3.2.6 물체영역 결정
(x1, y1)
(x2, y2)
<그림 3.2.6.1> 좌표 검색
CVLBitmap.h에서 제공하는 AnotherDC.Rectangle를 이용하여 사각형으로
물체영역을 결정한다. 위의 3.2.6.1의 그림과 같이 좌측 상단에서 검색된 x1, y1과
우측 하단에서 검색된 x2, y2로 사각형을 그린다. 검색시 잡음을 고려하여
주어진 경계값보다 큰 최초의 좌표로 검색한다.
ImageSize.cx = BufferIn.GetWidth();
ImageSize.cy = BufferIn.GetHeight();
for( i=0 ; i for( j=0 ; j < ImageSize.cx ; j++ ){
if(DataOut[i*ImageSize.cy+j] >10){
x1 = j;
y1 = i;
break;
}
}
}
<코드 5> x1, y1 좌표검색
for( i=ImageSize.cy ; i>= 0 ; i--){
for( j=ImageSize.cx ; j>=0 ; j--){
if(DataOut[i*ImageSize.cy+j] >10){
x2 = j;
y2 = i;
break;
}
}
}
<코드 6> x2, y2 좌표검색
DataOut[]은 일차원 배열로 본 동영상의 length(가로*세로) 값이 들어가는데
여기서 좌표를 계산하기 위해 일차원 배열을 세로*변수+변수의 형태로 변환하여
가로좌표와 세로좌표를 구한다.
또한 직립보행자 이므로 가로보다 세로가 길다는 성질을 이용하여 x2와 x1의
차보다 y2와 y1의 차가 값이 더 커야한다.
<그림 3.2.6> 보행자 검출
다음의 코드는 구한 두 좌표를 이용하여 사각형을 그리는 코드이다. 브러시
스타일과 색 등을 정할 수 있고 여기서는 255,0,0을 이용하여 빨간색 사각형을
AnotherDC.Rectangle( x1, y1, x2, y2 ) 로 그리게 하였다.
CSize ImageSize;
ImageSize.cx = BufferIn.GetWidth();
ImageSize.cy = BufferIn.GetHeight();
m_Bmp.Width = ImageSize.cx;
m_Bmp.Height = ImageSize.cy;
BufferIn.ToBitmap( m_Bmp );
CRect ImageRect( 0, 0, ImageSize.cx, ImageSize.cy );
CDC AnotherDC;
AnotherDC.Attach( m_Bmp.GetDC() );
LOGBRUSH logBrush;
logBrush.lbStyle = BS_SOLID;
logBrush.lbColor = RGB( 255, 0, 0);
logBrush.lbHatch = 0;
CBrush YellowBrush;
YellowBrush.CreateBrushIndirect( &logBrush );
AnotherDC.SelectObject( &YellowBrush );
CPen RedPen;
RedPen.CreatePen(PS_SOLID, 3, RGB( 255, 0, 0));
AnotherDC.SelectObject( &RedPen );
AnotherDC.Rectangle( x1, y1, x2, y2 );
BufferOut.FromBitmap( m_Bmp );
AnotherDC.Detach();
<코드 7> 구한 좌표로 사각형 그리는 함수
4. 결론
본 논문은 영상 처리시 기본적인 이진영상 처리, contrast stretching, 잡음 제거,
에지 추출 하는 방법을 소개하고 VideoLab을 이용한 직립보행 이동 보행자를
검출 하는 과정과 구현을 보였다.
이진영상 처리는 경계 값을 기준으로 그 값보다 크면 1, 작으면 0의 값을 주는
방식으로 하는 것을 말한다. contrast stretching은 명암 값이 불규칙 하거나
균일하지 못한 영상을 평활화를 수행함으로써 보다 선명한 영상을 기대 할 수 있는
기법이다. 또한 미디언 필터, 수축 처리, 확장 처리 등을 통해 잡음을 처리하는
방법을 소개하였고 여러 마스크를 통해 에지를 추출하는 방법을 기술하였다.
보행자 검출에서는 입력 영상에 대해 그레이 화를 한 후 형태에 관한 정보를
유지하면서 자료의 양을 줄일 수 있는 에지(edge)를 추출한다. 이 후 추출된
에지 영상의 차로서 이동하는 보행자를 검출할 수 있었다.
그러나 잡음과 보행자간의 차 연산 후 값 차이가 크지 않아 경계 값을 작게 하면
보행자의 모습을 보존할 수 있으나 잡음이 심하고 경계 값을 크게 하면 잡음을
삭제할 수 있으나 보행자의 모습도 보존이 되지 않는 단점이 있다.
본 논문에서는 차 연산 후의 차이 값과 보행자 특징이 가로보다 세로가
길다는 조건으로 이동하는 보행자를 검출하는데 다른 세로가 긴 이동하는 물체나,
잡음 등에 약하다. 또한 보행자의 팔이나 다리의 세부적인 부분을 검출하지 못하는
단점이 있다. 따라서 향후 검출 성능의 향상을 위한 보행자만의 다른 특징을
적용하는 방법이 필요하다.
5. 참고문헌
[1] 권준식외 7명 공역, “디지털 영상처리 이론 및 응용”, 홍릉과학출판사,
2002년 3월.
[2] 이문호, “visual c++ 실용 영상 신호처리”, 대영사, 2001년 6월.
[3] 정성환, 이문호 공저, “영상처리 이해와 활용”, 영한출판사, 2003년.
[4] 최영일, 이근수, 이양원, “영상처리 이론과 실제”, 홍릉과학출판사, 1997년.
[5] 장동혁, “디지털 영상처리의 구현”, 정보게이트, 2001년.
[6] Boian Mitov, "Video Lab 3.1 visual c++ Quick start", www.openwire.org,
2004년.
  • 가격5,000
  • 페이지수24페이지
  • 등록일2012.07.23
  • 저작시기2007.2
  • 파일형식한글(hwp)
  • 자료번호#759365
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니