vrml - 1 virtual reality modeling language (vrml) peter o’grady

46
VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

Upload: ethelbert-lane

Post on 28-Dec-2015

235 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 1

Virtual Reality Modeling

Language (VRML)

Peter O’Grady

Page 2: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 2

VRML

Background Example VRML Versions VRML language Creating a VRML world

Page 3: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 3

VRML - Background

Sometimes pronounced “vermel”. A language for building 3-D worlds on the

WWW. Use a VRML browser to walk around virtual

world. Browser downloads file containing

description of world (in VRML format). Browser interprets scene descriptions and

renders the resulting image.

Page 4: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 4

VRML - Background (2) Manipulation is performed on client (host)

computer. Use of 3-D cards can speed performance. Rendering performed through lens of a

virtual camera. Can move, twist and twirl. Can alter lighting.

Page 5: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 5

Using VRML

VRMLtext file

*.wrl

VRMLRenderer

usually browser plug-in or

ActiveX control

Page 6: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 6

Page 7: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 7

Page 8: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 8

VRML - History WWW conference in March 1994 -

basic requirements defined. WWW conference October 1994 - draft

specification of VRML 1.0 presented. Used language from a 3-D modeler Version 1.0 introduced April 1995. Version 97 now available and in use

Page 9: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 9

VRML Versions 1.0 Initial version. Static images. 97 aims to be multi-user, objects

defined their behavior, “participants” can see each other

Page 10: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 10

VRML Language

VRML 97 provides these extensions and enhancements to VRML 1.0:– Enhanced static worlds – Interaction – Animation – Scripting – Prototyping

Page 11: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 11

VRML Language Script-like language in ASCII text Given extension .wrl For easy identification of VRML files,

every VRML 97 file must begin with the characters: #VRML V2.0 utf8

Scene graphs consist of “nodes” Each node has attributes See example on web site

Page 12: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 12

VRML Working Process

Generation of a VRML file Transmission of VRML file to viewer Viewing of VRML world Interacting with the VRML world

Page 13: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 13

The Structure of VRML VRML can be viewed at a high level of

abstraction as a collection of objects which are called nodes.

These objects, or nodes, are defined for 3D graphics

Nodes are arranged in hierarchical structures called scene graphs, which define an ordering for the nodes.

Page 14: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 14

The Structure of VRML This was originally based on the Open

Inventor 3D toolkit developed by SGI, for VRML 1.0.

The scene graph represents such aspects of a 3D world as geometry, materials, textures, geometric transformations, lights, viewpoints, and nesting structures.

Page 15: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 15

Characteristics of a Node

A node might be a cube, a sphere, a texture map, a transformation, etc.

The node has parameters that distinguish the node from other nodes of the same type.

The node has a name. The node can be part of a hierarchy.

Page 16: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 16

Enhancement of VRML VRML 97 adds five constructs to VRML

1.0 that can significantly improve a 3D world.

Four of these (namely node event field, routes, sensors, interpolators) connect and control animations, actions and reactions.

The fifth (script nodes) allows for the interface with JavaScript or Java programs.

Page 17: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 17

Enhancement of VRML

In addition, VRML 97 allows for video images (in MPEG format) to be mapped to a surface, collision detection, fog, text that always points to the user, contoured terrains, and texture mapped backgrounds.

Page 18: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 18

VRML Language -Nodes Cylinder {

bottom TRUE

height 2

radius 1

side TRUE

top TRUE

}

Page 19: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 19

VRML Language -Nodes Cone {

bottomRadius 1

height 2

side TRUE

bottom TRUE

}

Page 20: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 20

VRML Language -Nodes Box {

size 2 2 2

}

Page 21: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 21

VRML Language -Nodes

Sphere { radius 1}

Page 22: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 22

Coordinate Systems and Transformations

VRML uses a Cartesian, right-handed, 3-dimensional coordinate system.

By default, objects are projected onto a 2-dimensional display device by projecting them in the direction of the positive Z-axis, with the positive X-axis to the right and the positive Y-axis up.

Page 23: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 23

VRML Language -Nodes

Transform { children [ ]

scale 1 1 1

translation 0 0 0

}

Page 24: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 24

VRML Language -Nodes Coordinate {

point [ ]

}

Page 25: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 25

VRML Language -Nodes

Color {

color [ ]

}

Page 26: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 26

VRML Language -Nodes

PointSet { color NULL coord NULL}

Page 27: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 27

VRML Language -Nodes IndexedFaceSet {

color NULL

coord NULL

coordIndex [ ]

normalIndex [ ]

normalPerVertex TRUE

solid TRUE

}

Page 28: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 28

VRML Language -Nodes

Appearance { material NULL

texture NULL

textureTransform NULL

}

Page 29: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 29

VRML Language Material - with attributes such as diffuseColor,

and shininess diffuseColor 0 0 0 is black, 1 1 1 is white shininess 1.0 is highly reflective Translation - to specify position of object Level of Detail (LOD) nodes allow varying level

of detail with distance WWWAnchor creates link to another VRML

world

Page 30: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 30

Example 1 - source code#VRML V2.0 utf8

DEF Machine3 Transform { translation 2 0 0 rotation 0 1 0 0 children [ Shape { geometry Box { size 6 10 6 } appearance Appearance { material Material { diffuseColor 0.2 0 0.8 } }

Page 31: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 31

Example 2 - source code#VRML V2.0 utf8Transform {

scale 5 5 5children [

Shape {appearance Appearance {material Material {

ambientIntensity 0.8 diffuseColor 1 0 0 emissiveColor 1 0 0 #shininess 1 specularColor 0 0 0 transparency 0 }

}

geometry IndexedFaceSet {coord Coordinate { point

[-0.106390.50.153638,-0.10757

Page 32: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 32

Example 2 - VRML World

Page 33: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 33

Creating VRML Worlds

Free formed surfaces, such as that arising from imaging, are not included in the VRML specification.

Therefore, a set of polygons should approximate to a free-formed surface or curve.

Page 34: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 34

Creating VRML Worlds

For the purpose of rendering and shading the created polygons, their normal vectors are calculated and given to the respective polygons.

Suppose that the surface is an imaging object. Then, the surface is translated into a VRML file format.

Page 35: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 35

Creating VRML Worlds - One Proposal

Maxi

iP(||||)

Page 36: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 36

Working With VRML Native code Converters Software that produces VRML code Can be large files - problem is to make

the code efficient IIL work gives about 100:1 reduction

from original data set.

Page 37: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 37

Examples - See IIL Site Data from MRI Data from CT

– Lung– Lung and tumor

Page 38: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 38

VRML and Medical Applications

Visualization over WWW Need advanced methods to map from

data to VRML. Acceleration

– 3D boards– Better software

Page 39: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 39

Medical Applications - Creation of Virtual Reality Worlds from Medical Imaging Data

Image Segmentation VRML Mapping

Page 40: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 40

Literature on Medical Image Segmentation

Manually Automatically Semi-automatically

– Thresholding– Boundary finding– Mathematical Morphology– Region Growing

Page 41: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 41

Literature on Medical Image Segmentation

Segmentation is a challenging task, especially considering an organ like the lung.

Much of the work on lung segmentation has involved manual segmentation (Naidich et al, 1993) but this involves considerable labor and can be prone to bias.

Page 42: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 42

Literature on Medical Image Segmentation

Two Dimensional (2D) images require that the physician mentally determine 3D images from 2D slices, and this is difficult and error prone.

The fundamental problems with current approaches to 3D display of scans are that they are not interactive once reported.

Page 43: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 43

Boundary Identification (2D Segmentation)

Grouping Analysis

Vx(Px,y,z) = ABS((MEAN (Px-p,y,z ,…. Px-2,y,z , Px-1,y,z )-MEAN (Px+1,y,z , Px+2,y,z , …Px+p,y,z ))

0

20

40

60

80

100

120

140

pixel

valu

e o

f p

ixel

Pr,s,t

Page 44: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 44

Case Study - Lung/Tumor

Page 45: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 45

Case Study - Lung/Tumor

Page 46: VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady

VRML - 46

Other Considerations Variety of VRML browsers available. Netscape uses Cosmo player (from SGI,

CA) for VRML Microsoft new browser with IE 4 For Windows 9x, Direct3D has been defined. 3D Boards now have Direct3D drivers Need to have VRML browser with Direct3D

support.