컴퓨터그래픽스
[23-1 컴퓨터 그래픽스 정리] intro
begong
2023. 7. 13. 21:52
반응형
본 글은 국민대학교 김준호 교수님의 "컴퓨터 그래픽스" 강의자료 정리 목적으로 만들었습니다.
글 자료의 모든 권한은 김준호 교수님께 있습니다.
컴퓨터 그래픽스란?
컴퓨터에 의한 픽토리얼 데이터의 표현과 조작
분류
- offline graphics : 영화, 사진 등 한장 만드는데 오래걸리는 그래픽
- interactive grpahics : 게임 등 실시간으로 그려내는 그래픽
딥러닝이 발전하면서 두개의 벽이 허물어지고 있음
사용 예시
computer graphics + computer vision
- panoramic photo
- 3D maps
computer graphics + digital imaging
- New types of digital cameras
- making celeb photos
- a style-based Generator Architecture for generative adversarial networks
Computer Graphics + Neural Rendering
- Neural Rendering from Multi - View photos
- NeRf
Computer Graphic + self-driving Cars
- CARLA
- Video-to-Video synthesis
Computer Graphic + Mixed Reality
- Natural Feature traking : QR 코드와 같이 특별한 형식의 마커가 아닌 일반 영상을 마커로 인식
- SLAM - based approach : 실시간으로 주변환경에 대한 지도를 작성하고, 지도 내의 현재 위치를 인식
- Animoji on iPhone X
- Face Id on iphone X
- Microsoft Kinect
Computer Graphics + Computer Games
- physics engines : 복잡한 물리연산을 실시간으로 계산
- Pre-computed radiance transfer : 실시간 렌더링 계산이 용이하도록, 오프라인으로 미리 처리
- stylized rendering
Computer Graphics + Arts
- Stylized rendering : 사진과 같은 사실적 렌더링 결과가 아닌, 화가가 그린 듯 스타일이 살아 있는 렌더링
Principles of Computer Graphics
illumination
Global illumination vs Local illumination
- Time- quality tradeoff
특징
Global illumination
- off-line graphics
- High quality
- E.g.) Animations, Cinematic effects
- 표면이 빛을 반사하기 때문에 기하급수적으로 계산이 증가한다.
- interactive graphics - Low quality - E.g.) Mobile UI, games - 빛을 부분적으로만 계산. - 표변에서 빛을받으면 반사, 산란을 하지 않음
기법
Global Illumination
Non-real-time in general
- Rendering equation : 렌더링 방정식
- Radiosity : 열 전도를 이용
- Ray tracing : 광선을 추적
Considering global light effects
- direct illumination
- indirect illumination
Local Illumination
Real-Time in general
- Phong reflection model
Considering local effects only ->H/w friendly
- direct illumination
History of Graphics
Basic Graphics Systems
Frame Buffer : 컴퓨터에 그림을 그리는 방법론. 지우고 보여주고를 1초에 정해진 횟수만큼 함
- 버퍼 = 메모리 라고 생각하면 편함
- 버퍼에 입력하면, 캔버스에 그림을 그린다고 생각. 다그리면 화면을 뿌려주고 지웠다 그렸다 반복
1960- 1970
Wireframe Graphics
- Draww only lines
- Oscilloscope cathode ray tube (CRT) : storage tubes
하드웨어의 한계 때문에 선만 그려서 나타냄
레이저로 선을 그림
Sketchpad
Ivan Sutherland 개발
Recognized the potential of man-machine interaction
Vector Graphics - "line work"
- ppt의 도형, 폰트 같이 "수식구조"가 준비되어 화면에 보여줌
1970 - 1980
Raster Graphics
Image produced as an array (the raster) of picture elements (pixels) in the frame buffer
It allows us to go from lines and wire frame images to filled polygons
픽셀들로 이루어진 그래픽스
1980 - 1990
Realism comes to computer graphics
1990 - 2000
OpenGL API
Completely computer-generated feature-length movie (Toy Story) are successful
New hardware capabilities
- Texture mapping
- Blending
- Accumulation, stencil buffers
2000-2010
Photorealism
Graphic cards for PCs dominate market
Game boxes and game players determine direction of market
Computer graphics routine in movie industry
Programmable pipelines
2010-2020
Stylized rendering
Precomputed Radiance Transfer(PRT)
- Textures become much more important
- 수식계산을 미리 해놓아서 계산을 빠르게 한다Image/Vido processing
- General purpose GPU(GPGPU)
2020-
Generative Adversarial Networks (GAN)
Neural 3D Rendering (NeRf)
Stable Diffusion (SD)
반응형