그래픽스 시스템과 모델
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
컴퓨터 그래픽스의 응용 정보의 표시 설계 시뮬레이션 사용자 인터페이스
정보의 표시 건축 도면 지도 통계 데이터 표현 의학 과학적 시각화 피부 : 투명 근육 : 불투명 지구 멘틀 - 등온도면
CT, MRI 3차원 이미지 생성 CT (Computed Tomography) MRI (Magnetic Resonance Imaging)
설계 (CAD : Computer Aided Design) VLSI 회로 설계 기계
건축설계 Wireframe 투시 렌더링
반복적 설계과정 설계도구를 이용한 설계 설계의 가시화 설계의 테스트 - 시뮬레이션 설계의 수정
시뮬레이션 비행 시뮬레이션 : 조종사 훈련 로봇 시뮬레이터 로봇의 설계, 이동 경로 계획,행동 시뮬레이션
시뮬레이션 (con’t) TV, 영화, 광고 사진 수준의 이미지 생성 영화의 장면 : 공장 내부 로봇 “Ed”
영화의 장면들
실제로는 만들기 불가능한 장면
고급 렌더링 기법들 조명, 무늬, 환경 사상 광선 추적 (Ray Tracing) 기법 방사성(Radiosity) 기법
가상현실 HMD, 위치 추적, 힘-감지 글러브 수술 훈련, 우주 비행사 훈련 Avatar : 가상 공간에서 서로 상호 작용 손의 상태 감지 센서
사용자 인터페이스 윈도우, 아이콘, 메뉴 활용 지시장치 – 마우스 예) Windows ME X-윈도우 웹 브라우저
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
그래픽스 시스템 범용 컴퓨터 시스템의 구성 요소들을 모두 포함
픽셀과 프레임 버퍼 프레임 버퍼 픽셀이 저장되는 메모리 프레임 버퍼의 깊이(depth) 각 픽셀에 사용된 비트 수 24비트 대부분의 이미지를 사실적으로 표현 전색(Full-color) = 진색(true color) = RGB color 라 함 해상도 :픽셀의 수, 그림의 정밀도 결정
출력 장치 가장 보편적인 출력 장치 재생(Refresh) 래스터 주사(raster scan) CRT 인광체가 빛을 발하는 시간이 극히 짧음 최소 50 Hz 이상 재생 필요
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
이미지 : 물리적, 합성 물리적 이미지 물리적 영상획득과정(사람) 물리적 영상획득과정(카메라) 망막 필름 카메라나 인간의 시각 시스템 등의 광학 시스템에 의해 생성 물리적 영상획득과정(사람) 물리적 영상획득과정(카메라) 망막 필름
이미지 : 물리적, 합성 (con’t) 합성 이미지 물리적 이미지와 합성 이미지의 형성 과정이 비슷 컴퓨터에 의해 생성 물리적 영상획득의 시뮬레이션
객체와 관측자 이미지 형성의 두 요소 객체 관측자 이미지 형성 과정이나 관측자에 무관하게 공간상에 존재 객체들의 이미지를 형성하는 주체
빛 과 이미지 이미지에 아무것도 보이지 않음 빛이 없으면 물리적 접근 - 광원 물체의 표면 반사광 카메라 렌즈 - 광원 물체의 표면 반사광 카메라 렌즈 그림 1.7 : A camera system with a light source
빛 (Light) 전자기파의 한 형태 파장 : 350nm - 780nm 그림 1.8 : The Electromagnetic Spectrum
광선 추적 (Ray Tracing) 광원으로부터 광선을 따라감으로써 이미지 형성의 모형 설정 광선과 표면의 상호 작용 정반사(specular) : 거울 난반사(diffuse) : 백묵 굴절 : 투명 유리, 물
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
인간의 시각 시스템 각막(cornea) 수정체(lens) 홍체(iris) 망막(retina) 간상체(rod) : 야간 추상체(cone) : 주간, 3가지 종류(각각 다른 파장에 반응)
인간의 시각 시스템 (con’t) 조도(Intensity) : 빛 에너지의 물리적인 척도 휘도(brightness) : 사람이 인식하는 빛의 세기 녹색에 보다 민감 녹색 영역 CIE 표준 관측자 곡선
삼색 이론 세가지 추상체의 감도 곡선 세가지 추상체 필름이나 CRT에 세가지 색을 사용
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
바늘 구멍 카메라 기하학적 모형에 근거한 이미지 형성 방법 카메라의 방향 z 축 한 점으로부터는 하나의 광선만 통과
바늘 구멍 카메라의 투영 y : z = yp : d x : z = xp : d
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
합성 카메라 모형 합성카메라 모형 몇 가지 원리들 컴퓨터에 의한 이미지 생성이 광학 시스템을 이용한 이미지 생성과 비슷한 것으로 봄 몇 가지 원리들 객체는 관측자에 독립적으로 기술됨 삼각함수에 연산에 의해 이미지 계산 가능
합성 카메라 모형 (con’t) 단순 삼각 함수 계산으로 이미지를 계산 필름을 렌즈 앞쪽으로 이동
합성 카메라 모형 (con’t) 이미지 생성 모델 투영면 투영선(Projector) 투영중심(Center of Projection) 투영면
화각 (FOV : Field Of View) 투영면에 절단 윈도우(clipping window)를 정의함으로써 화각을 기술 클리핑 (a) 원래 위치 (b) 이동된 윈도우
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
응용 프로그래머 인터페이스 그래픽 시스템과의 상호 작용 API를 통한 인터페이스 그래픽스 시스템에 대한 응용 프로그래머의 모델
응용 프로그래머 인터페이스 하드웨어에 대한 구체적인 내용을 알 필요가 없도록 해줌 합성 카메라 모형이 OpenGL, PHIGS, GKS-3D 등의 API 들의 기반이 됨 객체, 관측자, 광원, 표면 재질들에 대한 지정 함수가 필요
API 함수들 객체 관측자 광원 재질의 특성
객체 (Object) API에서 제공하는 기본 객체 OpenGL의 삼각형 정의 점, 선분, 사각형, 다각형, 텍스트 등 glBegin(GL_POLYGON); glVertex3f(0.0, 0.0, 0.0); glVertex3f(0.0, 1.0, 0.0); glVertex3f(0.0, 0.0, 1.0); glEnd();
관측자 정의 기본적으로 필요한 명세 위치 방향 초점 거리 필름 면
OpenGL의 관측자 명세 gluLookAt(cop_x,cop_y,cop_z, at_x, at_y, at_z, ...); gluPerspective(field_of_view, …);
일련의 이미지들 색 그림판 선 구조 이미지 (wireframe image) 평면 다각형 (2차원으로 보임) 평면 다각형 (은면 제거 알고리즘이 수행됨) 광원 사용, 단순 음영법(flat shading) 사용 세련된 음영법 사용(smooth shading) 무늬 사상(texture mapping) 사용 프랙탈(fractals) 안개 효과 사용
일련의 이미지들 (con’t) 선구조 이미지 평면 다각형 (2차원으로 보임)
일련의 이미지들 (con’t) 광원, 단순 음영법 사용 세련된 음영법 사용
일련의 이미지들 (con’t) 프랙탈 무늬 사상
일련의 이미지들 (con’t) 안개효과
모델링 - 렌더링 패러다임 모델링-렌더링 패러다임 모델링과 렌더링을 분리할 수 있음 모델링 : 고도로 대화적, 상세한 이미지 작업 불필요 그래픽 워크스테이션에서 실행 렌더링 : 방대한 계산필요, 계산 전용기계에서 실행 중간파일 모델기 렌더기 The modeling-rendering pipeline
그래픽스 시스템과 모델 컴퓨터 그래픽스의 응용 그래픽스 시스템 물리적 이미지/합성이미지 인간의 시각 시스템 바늘구멍 카메라 합성 카메라 모형 프로그래머 인터페이스 그래픽스 구조
그래픽스 시스템 구조 초기 그래픽 시스템
디스플레이 처리기 Display-processor 구조
파이프라인 구조 산술 연산의 파이프라인 이미지 생성 과정이 파이프라인 구조에 적합 많은 정점을 비슷한 방식으로 처리
기하 파이프라인 변환 : 객체 좌표계 카메라 좌표계 스크린 좌표계 절단 : 화각 밖의 객체를 제거 정점들 변환 변환 : 객체 좌표계 카메라 좌표계 스크린 좌표계 절단 : 화각 밖의 객체를 제거 투영 : 3차원 객체 2차원 객체 래스터화 : 객체 프레임 버퍼의 화소 절단 투영 래스터화 화소들