Bài giảng Đồ họa hiện thực ảo - Bài 12: Hiện thực ảo Virtual Reality - Lê Tấn Hùng
I. Virtual Reality
Khái niệm “virtual” ?
“Virtual” là 1 trong những từ được lạm dụng trong ngành công nghệ cao
ngày nay và được dùng phổ biến.
“virtual bank”, “virtual heritage”,. ngụ ý đến 1 điều kỳ quái -
monstrosities.
virtual X
với X có thể là bất cứ thứ gì , điều gì. virtual X không phải là X nhưng
có giao diện (hình dáng, hoạt động .) giống hệt như X
Ví dụ: virtual memory không phải là bộ nhớ nhưng nó làm việc với vi
xử lý đúng như là bộ nhớ.
Tương tự virtual disks, virtual terminals, virtual networks, etc.
Bạn đang xem tài liệu "Bài giảng Đồ họa hiện thực ảo - Bài 12: Hiện thực ảo Virtual Reality - Lê Tấn Hùng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Đồ họa hiện thực ảo - Bài 12: Hiện thực ảo Virtual Reality - Lê Tấn Hùng
Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 1 CNTT-ĐHBK Hà nộiKhoa CNTT/ĐHBK Hà nội 1 Bài 12 - Hiện thực ảo Virtual Reality CNTT-ĐHBK Hà nội 2 I. Virtual Reality Khái niệm “virtual” ? “Virtual” là 1 trong những từ được lạm dụng trong ngành công nghệ cao ngày nay và được dùng phổ biến. “virtual bank”, “virtual heritage”,... ngụ ý đến 1 điều kỳ quái - monstrosities. virtual X với X có thể là bất cứ thứ gì , điều gì. virtual X không phải là X nhưng có giao diện (hình dáng, hoạt động ...) giống hệt như X Ví dụ: virtual memory không phải là bộ nhớ nhưng nó làm việc với vi xử lý đúng như là bộ nhớ. Tương tự virtual disks, virtual terminals, virtual networks, etc. CNTT-ĐHBK Hà nội 3 Định nghĩa Virtual Reality Coates (1992): Greenbaum (1992): Theo kinh nghiệm con người: (Isdale, 1998) Các thuật ngữ khác thường dùng: Virtual Worlds, Virtual Environments, Immersive VR, Cyberspace ... CNTT-ĐHBK Hà nội 4 Lịch sử phát triển 1962 : Sensorama (from the movie industry : Morton Heilig) 1970sh : visualisation of virtual world on the screen 1970 : First Head Mounted Display : Daniel Vivkers from Utah University (From a Ivan Sutherland / MIT 's idea) 1982 : Dataglove 1980-85 : First VR commercial products 1987 Virtual Cockpit (British Aerospace) head and hand tracking, eye tracking, 3d visuals, 3D audio, speech recognition vibro tactile feedback 1990-95 : Popularisation of VR (Film, Books...) ARMY – spend close to $1000 million 1998 in VRresearch. CNTT-ĐHBK Hà nội 5 So sánh Virtual Reality và các Media khác Sống động - Vividness (biểu diễn được môi trường chính xác) breadth (visibility, audibility, touch, smell) depth (quality, fidelity-chính xác) Tương tác - Interactivity (cho phép người dùng có khả năng thay đổi môi trường ) speed (update rates, time lag) mapping (text, speech, gestures, gaze, complex behavior patterns) CNTT-ĐHBK Hà nội 6 Kiến trúc hệ thống của Virtual Environments Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 2 CNTT-ĐHBK Hà nội 7 Thành phần Kiến trúc Đối tượng, thực thể- Objects, entities (cars, buildings, sky, ) Tính chất hình học- Shape, color, texture Tính chất vật lý – Weight, speed, position, etc Người dùng - User Tương tác với môi trường, có thể được nhìn thấy bằng CAMERA Có hình thể tham gia vào thế giới ảo (avatar) Có thể nghe, nói (Voice recognition) Có thể di chuyển (gesture recognition) Đa người dùng - Multi user Mạng máy tính - Network connection Mô phỏng - Simulation Điều khiển ứng dụng Điều khiển hướng sự kiện (tránh va chạm) Mô phỏng hướng theo tính chất vật lý của đối tượng (act according the objects physical attributes) Thế giới, môi trường World Kết nối tát cả những phần khác nhau vào thành 1 môi trường mà người dùng hoạt động ở trong đó CNTT-ĐHBK Hà nội 8 Đặc điểm Virtual reality (VR), Phải đảm bảo Trong thực tế để đạt được chấp nhận: Hoà nhập - “immersion”. CNTT-ĐHBK Hà nội 9 Đặc điểm Thực tế của Hiện thực ảo Một VR thật không tồn tại, làm con người cảm thấy thoải mái khi có các nhầm lẫn, Phải có được đặc điểm Cảm giác hoà nhập - immersion: Cho phép tương tác với các đối tượng trong cảnh như cách ngời dùng làm trong thực tế chấp nhận tính xấp xỉ với hạn độ hợp lý. Tạo càng nhiều cảm nhận trên các giác quan càng tốt CNTT-ĐHBK Hà nội 10 Công nghệ trong VR Màn hình hiển thị-Visual displays: hiển thị thế giới ảo đến người sử dụng. Hệ thống theo dõi-Tracking systems: theo dõi vị trí và hướng của người dùng trong môi trường ảo Hệ thống tính toán-Computation Systems: thực hiện những tính toán cần thiết để sinh ra không gian ảo Thiết bị xúc giác-Haptic devices: cung cấp thao tác và nhận được các cảm giác phản hồi từ thế giới thực Audio systems- phản hồi âm thanh từ thực tại ảo CNTT-ĐHBK Hà nội 11 Perceive The ability to sense the position and location and orientation and movement of the body and its parts.ear balance, acceleration, position, location, orientation, movement of the body proprioception The perception of body position and movement and muscular tension etc; SYN: kinaestesia, feeling of movementmuscles position, movement, muscular tensions kinesthesia The faculty of taste; SYN. gustation, sense of taste, gustatory modality.tongue/nosesavour, flavourtaste The faculty of smell; SYN. sense of smell, olfaction, olfactory modality.noseodoursmell The faculty of touch; SYN. sense of touch, skin senses, touch modality, cutaneous senses.skinsurface / temperaturetouch The ability to see; the faculty of vision; SYN. vision, visual sense, visual modality.eyesimagesight The ability to hear; the auditory faculty; SYN. audition, auditory sense, sense of hearing, auditory modality.ears,bodysoundhearing CNTT-ĐHBK Hà nội 12 Cảm nhận môi trường ảo Perceive ? a) monoscopic cues( cảnh mono) relative size interposition and occlusion( lỏng lẻo) perspective distortion( méo) lighting and shadows texture gradient motion parallax ( thị sai chuyển động) b) binocular (stereoscopic) cues stereo disparity (phân tách) convergence( hội tụ) Anthropocentric User-Diagram Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 3 CNTT-ĐHBK Hà nội 13 Tái tạo cảm giác recreate sensation ? a) monoscopic cues realistic rendering / lighting simulation b) stereoscopic cues -> stereodisparity presentation of appropriate view to each eye - time multiplexing of images - multiplexing with chromatic filters (anaglyph) - multiplexing with polarizer filters - providing two views simultaneously Color Encoded Stereo Image Pair CNTT-ĐHBK Hà nội 14 Yêu cầu VR Cảnh-scene: cần được vẽ, sinh ra phụ thuộc vào điểm nhìn của người dùng Vị trí của mắt cần xác định, thiết bị theo dõi xác định hướng và vị trí của đầu và mắt. Theo đó Phần mềm cần hiệu chỉnh ma trận chiếu phù hợp để có kết quả.. Cảnh hiển thị 3-D . stereo vision: Hình ảnh nhận được sử dụng sự khác biệt We perceive 3-D primarily using the difference between the images received by the two eyes -. perceive 3-D is by focus: the lens in the eye focuses light differently for near vs. far objects. The user needs to be able to affect the scene somehow. Tracking capability (to determine head/eye placement), the user a hand-held object with a tracker on it. User’s motions directly, either through placement of tracking devices on the user’s clothes, or by giving the computer several video feeds of the user. CNTT-ĐHBK Hà nội 15 Ứng dụng Engineering Aero Engine design Submarine design Architecture Human factors modeling Industrial concept design Telecoms engineering Entertainment Computer animator Television Game system Science – Computational Neuroscience – Molecular modeling – Phobias ~ Virtual Therapy – Telepresence – Ultrasound Echolography Training – High-risk work – Flight simulation – Medicine – Military training – Nuclear industry – Accident simulation (Airline, car collision testing) CNTT-ĐHBK Hà nội 16 An Immersive Car Simulator Using HMD(© British Aerospace) CNTT-ĐHBK Hà nội 17 A BOOM Display Application in Aerodynamics (© NASA Ames Research Center) CNTT-ĐHBK Hà nội 18 Phân loại VR- Desktop VR Desktop VR Non-immersive: chuột 3d, window system 3D world hiển thị tren màn hình, chuột và bàn phím là đầu vào tương tác. Giá thấp, dùng cả với PC thông dụng. VRML, Games Window on a World (WoW) Một số hệ thống sử dụng một màn hình truyền thống để hiển thị thế giới trực quan (visual world). Người ta phải xem màn hình hiển thị như là một cửa sổ mà qua cửa sổ đó người ta có thể thấy một thế giới ảo. Thách thức đối với lĩnh vực đồ hoạ máy tính là làm cho hình ảnh trong cửa sổ đó trông giống như thật, âm thanh nghe giống thật và các đối tượng hành động giống thật. “One must look at a display screen as a window through which one beholds a virtual world. The challenge to computer graphics is to make the picture in the window look real, sound real and the objects act real” [quoted from Computer Graphics V26#3]. Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 4 CNTT-ĐHBK Hà nội 19 Ánh xạ Video (Video Mapping) Đây là một biến thể của cách tiếp cận theo kiểu WoW. Tiếp cận theo kiểu này sẽ kết hợp một đoạn video hình ảnh người sử dụng với đồ hoạ 2D. Người sử dụng sẽ thấy một màn hình hiển thị tương tác của hình anh ta với máy tính. DVR hệ thống đơn giản sử dụng các thiết bị tương tác thông thường như : chuột 3d, window system. Thế giới 3D được hiển thị trên màn hình, chuột và bàn phím là đầu vào tương tác. Ưu điểm của hệ thống và các ứng dụng loại nay là chi phí và giá cả thấp, có thể dùng được cả với PC thông dụng và các thiết bị thông dụng khác. Phù hợp với việc phát triển những ứng dụng đại trà và các sản phẩm cấp thấp không cần đến đội chính xác tuyệt đối. CNTT-ĐHBK Hà nội 20 Thế giới thực bổ xung- Augmented Reality Sự kết hợp giữa đồ hoạ và thế giới thực tạo thành 1 hệ thống chung phục vụ cho việc nhìn nhận và đánh giá thế giới thực. Kết hợp Telepresence và các hệ thống thực tại ảo cho ta một thực tại hỗn hợp(Mixed Reality) hay các hệ thống mô phỏng liền mạch (Seamless Simulation systems). Ở đây, các dữ liệu vào sinh sinh ra bởi máy tính sẽ được hợp nhất (kết hợp) với các dữ liệu vào telepresence và/hoặc quan điểm (cách nhìn) về thế giới thực của người sử dụng. CNTT-ĐHBK Hà nội 21 Xuất hiện - Presence Xuất hiện ảo-Virtual presence ... Is experienced by a person when sensory information generated only by and within a computer compels a feeling of being present in an environment other than the one the person is actually in” (Sheridan, 1992, pg.6) Presence: là cảm nhận tâm lý xuất hiện ở một môi trường dựa vào công nghệ hình thành theo kiểu hoà nhập - immersive. Trên thực tế hệ thống hoạt động theo kiêu này không cần thiết áp dụng cho tất cả mọi người mà chỉ cho một vài người có vai trò nhất định trong cộng đồng. Việc tích hợp giữa immersive và presence luôn là bài toán khó cho công nghệ . Một ứng dụng của Presence là: Telepresence và teleoperate CNTT-ĐHBK Hà nội 22 Telepresence Telepresence : Là thuật ngữ mô tả việc sử dụng các công nghệ khác nhau gây hiệu ứng đặt ngưòi dùng tại một vị trí khác. Telepresence là một cách mường tượng, hình dung các thế giới được sinh ra hoàn toàn trong máy tính. Đây là một kỹ thuật kết nối các cảm biến từ xa trong thế giới thực với cảm giác của người điều khiển. Các cảm biến từ xa này có thể được định vị trên một robot, giống như là các công cụ. Lính cứu hoả sử dụng các phương tiện điều khiển từ xa để xử lý những trường hợp nguy hiểm. Các bác sĩ giải phẫu sử dụng các thiết bị vô cùng nhỏ trên những dây cáp để thực hiện ca phẫu thuật mà không cần rạch ra một lỗ lớn trên cơ thể bệnh nhân. Các thiết bị này có một video camera nhỏ ở đầu làm việc (business end). Các robot được trang bị các hệ thống telepresence này đã thay đổi cách thức thực hiện các cuộc thí nghiệm về biển sâu hoặc núi lửa. Kỹ thuật này ngoài ra còn được áp dụng trong các cuộc nghiên cứu vũ trụ... CNTT-ĐHBK Hà nội 23 II. Immersion( hoà nhập) Tạo ra cảm giác hoà nhập giữa người dùng và môi trường, hình ảnh quan sát là hình ảnh người sử dụng nhìn được bao gồm cả không gian và phương hướng. Phần hình ảnh người dùng quan sát được chỉ là 1 phần rất nhỏ so với không gian hiển thị Thông thường công nghệ cho hiển thị đóng vai trò quan trọng và các cảm nhận khác cũng được kiểm tra. Hệ thống thực tại ảo - VR systems sẽ tạo cho người dùng là một phần của thế giới ảo đang được mô phỏng chứ không đơn thuần môi trường ảo đang mô phỏng là 1 góc của thế giới thực mà người dùng hiện hữu. Hệ thống immersive VR đầu tiên là hệ thống mô phỏng lái máy bay mà ở đó sự hoà nhập là sự kết hợp tinh xảo giữa các thiết bị thật và các hình ảnh ảo. Buồng lái thật với các thiết bị thực tế cho phép phi công sử dụng như 1 chuyến bay bình thường. Hình ảnh hiển thị là những cảnh ảo được chuẩn bị sẵn. CNTT-ĐHBK Hà nội 24 Kỹ thuật sinh immersive Head-Mounted Display: Put the screen right in front of the user’s eyes. Include a lens, for comfortable focusing. Advantage: It is easy to give the eyes different views. Disadvantage: Need separate screen for each user. BIG Disadvantage: When the user’s head moves, there is noticeable lag before the image updates. (Faster computers should fix this problem.) Large-Screen Display: Use a very large screen or group of screens that fill the user’s vision. Advantage: Image-update lag is not as much of a problem. (Why not?) Advantage: Multiple users can view a single screen (but only one gets a precisely correct view). BIG Disadvantage: The setup is incredibly expensive. Challenge: How to give the eyes different views? Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 5 CNTT-ĐHBK Hà nội 25 Phân loại Immersive - Virtual Environments 1. Immersive Virtual Environments- môi trường ảo hoà nhập • các đối tượng tương tác quan sát được và độc lập hoàn toàn với thế giới thật • Cảnh ảo phản ứng lại các hành động tương tác của đối tượng. • các đối tượng không thể tác động lên môi trường thật 2. Semi-Immersive Virtual Environments-môi trường ảo bán hoà nhập • các đối tượng có thể tác động lên cả môi trường thật và ảo • vai trò của các đối tượng trong môi trường ảo lớn hơn nhiều so với môi trường thật • tác động nên môi trường thực là rất hạn chế 3. Non-Immersive Virtual Environments – VR thông thường • các cảnh 3D như là 1 phần của thế giới thật (môi trường vật lý) • các đối tượng đáp lại hoàn toàn trong thế giới thật • Tồn tại rất ít quan hệ với môi trường ảo - VE CNTT-ĐHBK Hà nội 26 Hoà nhập mức độ thấp First Level of Immersion / Interactivity Low level, Physical level Because the computer is physically connected to the human body by its senses and its motor responses. The physical devices, Which interface to use ? You have to know that not only Sight interface exist (HMD...), but lots of other,l you should have an idea of all the others What Hardware (interface, computer) ? What Software (Driver, Toolkit, Programming Language...) ? CNTT-ĐHBK Hà nội 27 Second Level : Mental Immersion / Interactivity of the user Triadic diagram for the behavioral interfacing Desired Behavior... where are the shemas... Effective motor function : what the user will do : Schema, Schema by substitution or Metaphore Effective perception : as natural as possible, with as many senses as possible, and as weel synchorised (cohering) as possible programmed motor function : Behavorial Software Assistance Programmed perception : what is available from the virtual world CNTT-ĐHBK Hà nội 28 Các bước thiết kế VR Environments Content • story writing • scenario setup • semantics Objects • geometry and static attributes (color etc) • textures • sound Dynamics • object relationships • events • dynamic object properties (behavior) System Implementation CNTT-ĐHBK Hà nội 29 Low Level Tools • Keep Track of Primitive Lists • Transformation of Vertices • Drawing of Primitives • Reading Devices on Driver Level • Polygon Intersection Testing Examples • C++ Compiler • OpenGL, Direct3D CNTT-ĐHBK Hà nội 30 High Level Tools • Loading Objects (Geometry, Sounds) • Scene Graph Construction • Advanced Camera Models • Automatic Sensor Handling • Automatic Collision Detection Examples • C++ Compiler • Simulation Libraries (WorldToolKit, VRT, DIVE, dVise) • WorldUp, Superscape Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 6 CNTT-ĐHBK Hà nội 31 V. Phần cứng Mô hình chung Physical Simulation and Animation Lights Illustration Model Objects Geometry Surface Properties Dynamic Properties Physical Constrains Acoustic Properties Collision Detection Head Position Hand Position Visual Audio Haptic INPUT OUTPUT CNTT-ĐHBK Hà nội 32 Glove Glove tracker receiver Voice Recognition Graphics Processor VE Database Machine Intelligence Video Camera Haptics Host Computer VE Real-time OS Face / Gesture / Motion Analysis 3D Sound Processor Tracker Transmitter 3D Tracker System Head Tracker Receiver Head-mounted display(HMD) Head phones Microphone Generic VR System CNTT-ĐHBK Hà nội 33 Màn hình và các thiết bị tương tác Display & interactive Devices Visual Displays (3D imagery) • Head Mounted Displays (HMD) • Projection Displays (CAVE, Virtual Plane) Acoustic Displays (spatial sound) • Multi-Channel Sound Systems • Specialized Convolution Processors (e.g. Convolvotron) Haptic Displays (force feedback) • Robot Arms (e.g. Grope, Phantom) • Active Joystics (e.g. Microsoft Sidewinder) • Vibrotactile Devices (e.g. Logitec Cyberman) CNTT-ĐHBK Hà nội 34 3D Input/output Head-mounted display(HMD) Degree of Freedom (DOF) 6 DOF: translation and rotation of X, Y, Z axes 3D mouse Sonar-based 3D Trackball (Space-ball) Pressure sensors Pushing, pulling, and twisting Joysticks Specific platforms of exploration Gloves Finger angle (flexible sensors) Tracking the movement of the hands Sonic or electromagnetic system Postures CNTT-ĐHBK Hà nội 35 3D Input (Haptic device) Dials 3D array Force-feedback devices Hand and body tracking LEDs Hi-ball tracker Puppets Eye Tracking Gaze sensing Laser Scanner CNTT-ĐHBK Hà nội 36 4 categories of haptic devices Hand position and orientation forces and torque feedback devices tactile devices devices to produce other stimuli such as heat or cold. Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 7 CNTT-ĐHBK Hà nội 37 Sensory Interface CNTT-ĐHBK Hà nội 38 Motor Interface CNTT-ĐHBK Hà nội 39 X. CAVE "CAVE Automatic Virtual Environment”. 1. Introduction One of the leading VR environments is the CAVE. “CAVE” stands for “CAVE Automatic Virtual Environment”. Originally a hardware/software combination, the CAVE was developed at the Electronic Visualization Lab at the U. of Illinois, Chicago, in the early 1990’s. The software component has since been separated and turned into a commercial product (CAVELIB, sold by VRCO) that runs in any number of VR environments. CNTT-ĐHBK Hà nội 40 CAVE - An Immersive VR Environment (EVL, University of Illinois at Chicago) CNTT-ĐHBK Hà nội 41 2.CAVE Hardware Standard CAVE hardware consists of: Any number of walls (screens). • The original idea was four: three vertical and a floor. • ARSC has a 1-wall CAVE called an “ImmersaDesk”; we plan to get a 3-or-4 wall CAVE soon. Any number of stereo glasses. • One of these is for the driver; it has a tracker on it. A wand. • This is a stick with a tracker on it, along with some buttons and a directional control (“joystick”). • The wand functions like a 3-D mouse. CNTT-ĐHBK Hà nội 42 3.CAVE: Software Like GLUT, CAVELIB handles program execution via registered callbacks. GLUT can still be used with CAVELIB, but you never call glutMainLoop, and so GLUT callback registration does nothing. Thus, the full features of GLUT are not available in CAVE programs. On the other hand, for programmers who are familiar with GLUT, learning CAVELIB is not hard. Bài 12 Thực tại ảo Khoa CNTT - ĐHBK Hà nội hunglt@it-hut.edu.vn 0913030731 8 CNTT-ĐHBK Hà nội 43 CAVE: Software [2/3] CAVE programs run as a collection of processes. The processes are created and managed by CAVELIB. The programmer does no forking. There is a main process, one process for each wall (and various other processes that the programmer does not need to worry about). These processes may need to access common data. • There are facilities for allocating shared memory. • Read/write locks are available. Most of this is handled by CAVELIB, but the programmer needs to explicitly allocated shared memory and set/clear locks. CNTT-ĐHBK Hà nội 44 CAVE: Software [3/3] CAVELIB includes facilities for: Determining head position and orientation. Computing projection matrices for each wall, for each eye. • This is done automatically. • For example, a standard 4-wall CAVE needs 8 projection matrices for each frame of animation (assuming the user has 2 eyes). Determining wand position and orientation, as well as the state of the wand buttons and joystick. Managing all the various processes. Allocating shared memory areas. Setting and clearing read/write locks on objects. Determining the time. Starting up and ending the whole mess.
File đính kèm:
- bai_giang_do_hoa_hien_thuc_ao_bai_12_hien_thuc_ao_virtual_re.pdf