24
AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN) LING KAH WEI (Multimedia Computing) This project is submitted in partial fulfillment of The requirements for the degree of Bachelor of Computer Sciences with Honours UNIVERSITY MALAYSIA SARAWAK 2005

AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

LING KAH WEI

(Multimedia Computing)

This project is submitted in partial fulfillment of

The requirements for the degree of Bachelor of Computer Sciences with Honours

UNIVERSITY MALAYSIA SARAWAK

2005

Page 2: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

1. Final cover, fyp, table of content1 is the report of the final year project.

2. The AR-BAMAN program is in the folder bin

3. To run the program you need to have a webcam with 1.0 usb or higher plug in the

computer.

4. You also need to have marker.

5. Print the marker, which are in the acrobat format.

6. Put it directly under the web cam

7. Run the simpleVRML program.

Page 3: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

ii

DECLARATION

No portion of the work referred to in this report has been submitted in support of

an application for another degree or qualification of this or any other university or

institution of higher learning

---------------------------------- -------------------------------

Ling Kah Wei Date

8518

Page 4: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

iii

ACKNOWLEDGEMENTS

Many wonderful people have help to make this project successful and interesting.

I would like to thank Mr. Sylvester Arnab a great lecturer of Faculty of Computer

Science And Information Technology and my supervisor, for his time, advice, guidance,

effort, support and in offering the idea and information needed for this project.

I would like to extend my gratitude to Miss Chieng Siew Chuo who demonstrated

unwavering support, encouragement, time, effort and help in getting the software I

needed in this project.

Last but not least, many thanks to my family members and friends for their helps,

efforts and understanding throughout this project.

Page 5: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

iv

ABSTRACT

In this era of information technology, computer science is becoming more and

more important. Augmented Reality (AR), which is part of the computer science field, is

becoming more popular. AR is a combination of real world object together with

computer-generated objects. AR has been successfully implemented in historical sites,

magic books, military equipment and other fields. Augmented Reality Based Map

Navigation AR-BAMAN is a research and application on AR field. This system is to

enhance current UNIMAS map. With AR-BAMAN, user will be able to navigate their

way around UNIMAS easier. This is because AR-BAMAN is able to display the 3D

objects (buildings) to ‘emerge’ on the UNIMAS map in the computer when the map is

put under the web camera. The 3D objects are build using Virtual Reality Mark Up

Language (VRML). The map of UNIMAS is designed using markers. ARToolkit is used

to recognize the marker and display the VRML objects on top of it. The main feature of

this system is that it recognized the markers (real object), combine with computer

generated objects and display it on the monitor. This report discussed the introduction of

AR-BAMAN, background review, requirements and analysis, system design, system

implementation, testing, and future works.

Page 6: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

v

ABSTRAK

Dalam era teknologi maklumat ini, sians computer menjadi bidang yang semakin

penting. Augmented Reality (AR), juga merupakan sebahagian daripada sains komputer

juga menjadi semakin popular. AR adalah gabungan antara object dari dunia nyata

dengan object yang dibentuk dengan computer. AR telah diaplikasikan dengan

berjayanya dalam pelbagai benda seperti peralatan tentera, kawasan bersejarah, buku

magik dan bidang lain. Peta AR ini merupakan kajian dan pengaplikasian AR. Peta AR

dapat menunjukkan objek 3D (bangunan) ‘muncul’ di atas peta UNIMAS dalam

komputer apabila peta UNIMAS diletakkan di bawah webcam. Objek 3D ini dibina the

mengunakan Virtual Reality Mark Up language (VRML). Peta UNIMAS dibina dengan

menggunakan tanda (marker). ARToolkit digunakan untuk mengenali tanda tersebut dan

menpamerkan objek 3D di atas tanda tersebut. Ciri-ciri utama system ini adalah ia dapat

mengenali tanda-tanda (objek nyata), mengabungkannya dengan objek yang dihasilkan

dari computer dan ditunjukkan dalam computer. Laporan ini membincangkan tentang

pengenalan peta AR, review, analisis, perekaan, implementasi, ujian dan kerja masa

depan.

Page 7: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

vi

TABLE OF CONTENTS

Page

TITLE PAGE

DECLARATION ii

ACKNOWLEDGEMENT iii

ABSTRACT iv

ABSTRAK v

TABLE OF CONTENTS vi

LIST OF FIGURES xii

LIST OF TABLES xv

CHAPTER 1 INTRODUCTION

1.1 Background 1

1.2 Problem Statement 2

1.3 Objectives 2

1.4 Scope 3

1.5 Methodology 3

1.5.1 Object-Oriented Analysis 5

1.5.2 Object-Oriented Design 6

1.5.3 Object-Oriented Implementation 7

1.5.4 Incremental Testing 8

1.6 Expected Outcome 8

Page 8: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

vii

1.7 Significant of Research 8

1.8 Outline of Report 9

CHAPTER 2 BACKGROUND REVIEW

2.1 Introduction 11

2.2 Literature Review 11

2.2.1 Augmented Reality 11

2.2.2 Augmented Reality VS. Virtual Reality 12

2.2.3 Registration Problems 13

2.3 Technical Review 14

2.3.1 Similar System Review 14

2.3.1.1 Magic Book 14

2.3.1.2 Black Magic 16

2.3.1.3 Augmented Groove 17

2.3.2 Comparisons of The Reviewed Systems 18

2.3.2.1 Comparisons of Technology 18

2.3.2.2 Comparison on System Features and 19

Functionality

2.3.3 Implementation Tools Studies 19

2.3.3.1 Programming Tools 20

2.3.3.1.1 C++ 20

2.3.3.2 Graphic Tools 20

2.3.3.2.1 Virtual Reality Mark-Up Language 20

Page 9: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

viii

2.3.3.2.2 Java3D 21

2.3.3.2.3 3D Studio Max 21

2.3.3.3 Database 22

2.3.3.3.1 Microsoft Access 2000 22

2.3.3.3.2 Oracle8 23

2.3.3.3.3 MySQL 23

2.3.3.4 ARToolkit 24

2.4 Summary 24

CHAPTER 3 REQUIREMENTS ANALYSIS AND SPECIFICATION

3.1 Introduction 25

3.2 Requirements Analysis Techniques 25

3.2.1 Object-Oriented Analysis 26

3.2.2 Identifying Actors 26

3.2.3 Use Case 28

3.2.4 Activity Diagram 29

3.2.5 Interaction Diagram 32

3.3 Requirements Specifications 34

3.3.1 User Requirements 34

3.3.2 Functional Requirements 35

3.3.2.1 VRML Module 35

3.3.2.2 ARToolkit Module 36

3.3.3 Software Requirements 36

Page 10: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

ix

3.3.4 Hardware Requirements 37

3.4 Conclusion 38

CHAPTER 4 SYSTEM DESIGN

4.1 Introduction 39

4.2 System General Description 39

4.3 Object-Oriented Design 40

4.3.1 Identify And Design Classes, Attributes And Methods 40

4.3.2 Apply Design Axioms To Build UML Class Diagram 42

4.3.3 Design Access Layer 45

4.3.4 Design View Layer 45

4.3.4.1 Designing 3D Buildings 46

4.3.4.2 Designing The Marker 49

4.3.4.3 Designing The Map 50

4.4 Summary 50

CHAPTER 5 IMPLEMENTATION

5.1 Introduction 52

5.2 Database Implementation 52

5.3 Implementation of The 3D Objects 52

5.4 Implementation of Marker 59

5.5 Integrate 3D Object With The Marker 60

5.6 UNIMAS Map 62

Page 11: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

x

5.7 Conclusion 63

CHAPTER 6 SYSTEM TESTING AND EVALUATION

6.1 Introduction 64

6.2 System Testing 64

6.2.1 Unit Testing 64

6.2.2 Module Testing 65

6.2.3 Integration Testing 67

6.3 System Evaluation 69

6.4 Acceptance Test 69

6.4.1 Ease of Use 69

6.4.2 Interface Design 70

6.4.3 System Features 70

6.5 System Limitation 70

6.6 Conclusion 71

Chapter 7 CONCLUSION AND FUTURE WORKS

7.1 Introduction 72

7.2 Achievement 72

7.3 Future Work 73

7.4 Conclusion 73

Page 12: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

xi

REFERENCES 74

APPENDICES

APPENDIX A: UNIMAS Building 76

APPENDIX B: UNIMAS Map 80

APPENDIX C: VRML Building On Marker 81

Page 13: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

xii

LIST OF FIGURES

Page

Figure 1.1 : The Three Stages Of OOSDLC 4

Figure 1.2 : Object-Oriented Analysis 5

Figure 1.3 : Object-Oriented Design 6

Figure 1.4 : Object-Oriented Implementation 7

Figure 2.1 : Monitor Based Augmented Reality 12

Figure 2.2 : The 3D Objects That Has A Proper Registration 14

Figure 2.3 : User Reading The Magic Book 14

Figure 2.4 : The Image Processing Step Used Un Magic Book 15

Figure 2.5 : Black Magic 16

Figure 2.6 : The Augmented Groove Users Manipulating The Cards 17

Figure 3.1 : User Interact With AR-BAMAN 27

Figure 3.2 : ARToolkit Interact With Other Part Of The Program 27

Figure 3.3 : Use Case Diagram Of AR-BAMAN 28

Figure 3.4 : Use Case Diagram Inside The AR-BAMAN System 29

Figure 3.5 : Activity Diagram of AR-BAMAN 30

Figure 3.6 : Activity Diagram Inside The System 31

Figure 3.7 : Interaction Diagram Between User And AR-BAMAN 32

Figure 3.8 : Interaction Diagram For 3D Object 33

Figure 3.9 : Interaction Diagram Between ARToolkit And Other 33

Sub-System

Page 14: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

xiii

Figure 4.1 : Class Diagram of 3D Object (Chancellory) 41

Figure 4.2 : Class Diagram of 3D Object(Cais) 41

Figure 4.3 : Class Diagram of Unimas 41

Figure 4.4 : Relationship Between ARToolkit With Unimas 42

Figure 4.5 : Relationship Between ARToolkit With Real map 42

Figure 4.6 : Complete Class Diagram For AR-BAMAN 44

Figure 4.7 : Chancellory 46

Figure 4.8 : CAIS 47

Figure 4.9 : Unimas Hall 47

Figure 4.10: Lecture hall 48

Figure 4.11: Faculty 48

Figure 4.12: Seminar Rooms 49

Figure 4.13: Example of markers. Both this markers are different 50

and unique in every direction

Figure 5.1 : VRML Coding For Roof 53

Figure 5.2 : Roof. The roof design from the code in figure 5.1. 54

Figure 5.3 : VRML code for Pillar. 55

Figure 5.4 : The pillar design from the code in figure 5.3. 55

Figure 5.5 : Part Of The Coding For Triangle 56

Figure 5.6 : The Triangle created from coding in figure5.5 57

Figure 5.7 : Part of Chansellory coding showing that it call 57

roof.wrl (sub class).

Page 15: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

xiv

Figure 5.8 : Part of Chansellory coding showing that it call 58

tiang.wrl (sub class).

Figure 5.9 : Let the ARToolkit to recognised the marker. 59

Figure 5.10: Coding above is to relate to Cais.wrl and adjust the 60

position and lighting for object that are going to be

display on the marker.

Figure 5.11: Showing The Coding That Are Change 60

Figure 5.12: Showing The Way Each .dat are associated to a 61

particular pattern

Figure 5.13: Show the top view and the front view of how the 62

program work

Figure 5.14: The UNIMAS map design for the system. 62

Figure 6.1 : When the position is not correct the objects will 66

not be on display

Figure 6.2 : If the camera and the marker position correctly then 66

the 3D object will appear.

Figure 6.3 : Show the top view and the front view of 67

Cais( 3D building)

Figure 6.4 : Show that the marker has been rotated. The 3D 68

building follow the way the marker is rotated

Figure 6.5 : Show that even when the marker is tilted, the 68

building still ‘stick’ on the marker

Page 16: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

xv

LIST OF TABLES

Page

Table 2.1 : Comparisons On Technology Used By The 18

Reviewed Systems

Table 2.2 : Comparison on System Features and Functionality 19

Table 3.1 : Minimum Hardware Specification For AR-BAMAN 38

Page 17: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

1

CHAPTER 1 INTRODUCTION

1.1 Introduction

In this information technology age, many organizations have moved towards the

computerized working system. Augmented reality (AR) being part of the computer

sciences is a field that is less known than its counterparts. AR is a variation of virtual

reality (VR). AR is combination of real world objects and computer generated objects.

Through the tool available in AR, viewer will be able to view these two objects

simultaneously. AR can be thought as the “middle ground” between VR (completely

synthetic) and telepresence (completely real) [Milgram 1994]. Augmented Reality Based

Map Navigation (AR-BAMAN) is AR system that implemented on real UNIMAS

temporary campus map. AR-BAMAN will be able to enhance the current normal

UNIMAS map that we have. It will also ensure better, effective and efficient map

navigation around UNIMAS. This report discussed about the background of AR,

literature reviews methodology used, analysis, system design, system implementation,

testing and also future works. The main feature of AR-BAMAN is able display

computer generated 3D structures with the real map at the monitor. As a conclusion, AR

is a growing area in virtual reality research. AR-BAMAN will be able to enhance the

map navigation around UNIMAS.

Page 18: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

2

1.2 Problem Statement

Currently UNIMAS is not using AR to implement in their campus map

navigation. Current physical map is hard for the user to differentiate one building from

another building. This is because they cannot visualize the building by looking at the

map. Sometimes visitors from outside also face the same problems because they does

not know which building they need to go, to deal with their particular matters. For those

people who appreciate the architecture of the unique UNIMAS building will have to

walk around the building to look at it. By using AR-BAMAN it can solve all the above

problems. The user will be able to see the 3D graphics of the building. The user then will

know exactly how the building looks like. This will improve the efficiency and

effectiveness of the map navigations. Lastly, if the user want see how the building look

at each side, they can do it simply by turning the map around.

1.3 Objectives

The objectives of this project are stated as below.

(1) To study and identify current AR application.

(2) To analyze and design an Augmented Reality Based Map for UNIMAS.

(3) To discover the problems of the current UNIMAS map navigation.

(4) To develop a prototype of Augmented Reality Based UNIMAS Map.

Page 19: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

3

1.4 Scope

The scope of AR-BAMAN limited to developing for UNIMAS temporary

campus only. This project emphasizes more on building 3D graphics. The real UNIMAS

map will be put under the webcam and the 3D graphics will “emerge” on the map when

viewed inside the monitor. AR-BAMAN also consists of storing the 3D graphics and

displaying the data. AR-BAMAN is a stand alone application.

1.5 Methodology

The methodology that will be used in this project is the object-oriented system

development life (OOSDLC) cycle using unified modeling language. This methodology

is based on the best practices that have proven successful in system development.

[Bahrami 1999]. OOSDLC consists of three main components that are object-oriented

analysis, object-oriented design and object-oriented implementation. Graphical notation

and use case are used in most of the activities. OOSDLC let us view the system as

cooperation between objects. [Bahrami 1999].

Page 20: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

4

Using OOSDLC, my project is divided into three phrases.

Figure 1.1 The Three Stages Of OOSDLC

These three phases can be iterated. This is to refine the system of AR-BAMAN when

testing conducted does not meet the scope of the project part of the activities can be

iterate to refine the process.

Object-Oriented Analysis

Object-Oriented Design

Object-Oriented

Implementation

Iteration

Page 21: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

5

1.5.1 Object-Oriented Analysis (OOA)

In OOA it is further divided into smaller tasks. Waterfall approach is used to

complete these tasks.

Figure 1.2 Object-Oriented Analysis

During the OOA, actors of AR-BAMAN are identified. Actors are those people who will

use AR-BAMAN. Use case is the functionality that is provided by AR-BAMAN. The

functionality will interact with the actors. The next task is to develop activity diagram.

Activity diagram is to provide the flow inside the use case or classes of AR-BAMAN.

Interaction diagram is to see the sequence of interaction between the user and particular

use case or function in AR-BAMAN. The last task in OOA is to identify the classes and

its attributes and functions that will be used in building AR-BAMAN. The things

Identify actors

Develop interaction

diagrams

Develop use cases

Develop activity

diagrams

Identify classes, attributes and

methods

Refine and iterate

Page 22: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

6

develop in OOA can be refine and iterate. Through iteration, better OOA can be

developed.

1.5.2 Object-Oriented Design (OOD)

In OOD, waterfall approach is also used to complete the task.

Figure 1.3 Object-Oriented Design

In OOD the relationships of the classes that is identify during OOA is being designed.

The classes in AR-BAMAN designed by applying the OOD axioms and collaries.

Axioms 1, the independence axiom which maintain the independence of components

(the relationships between components). Axioms 2, the information axiom which

Design classes,

attributes, methods

and relationships

Apply Design Axioms

to build UML class

diagram

Design view and

access layers and

prototypes

User satisfaction and

usability test based on

use cases

Page 23: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

7

minimize the information content of the design (the complexity of the design). The other

6 corollary are developed from the two axioms. Corollary 1, uncoupled design with less

information content; corollary 2, single purpose; corollary 3, large numbers of simple

classes; corollary 4, strong mapping; corollary 5, standardization; corollary 6, design

with inheritance. The relationships between the classes are then combined together to

become the UML class diagram. Next is to design the view layer and the access layer.

The view layer will be the user interface of the AR-BAMAN. The access layer will

concern with how the AR-BAMAN is going to communicate with the database.

Usability test will be carried out with this design. The process can be refined if user are

not satisfied with it.

1.5.3 Object-Oriented Implementation (OOI)

In OOI, I used iteration approach. The process in OOI is as the diagram below.

Figure 1.4 Object-Oriented Implementation

The components in AR-BAMAN will be developed using object-oriented programming

languages. It will be a component-based development, where the functions of AR-

Using Case tools and

object-oriented

languages (object-

oriented programming)

are used to implement

User satisfaction and

usability test

Page 24: AUGMENTED REALITY BASED MAP NAVIGATION (AR-BAMAN)

8

BAMAN are developed one by one. After a function is being developed, it will when

through user satisfaction and usability test. If it does not satisfy the user, it will be

refined. If it does, continue to implement the next function.

1.5.4 Incremental Testing

In OOSDLC testing is very important. Incremental testing is where by the testing

start at the beginning of the OOA until OOI. Incremental testing makes sure that each

stage is going on just as planned. Testing help to verify that this system have all the

capabilities and features defined in the project‟s scope. Other testing that will be carried

out are unit testing, integration testing, systems testing and acceptance testing.

1.6 Expected Outcome

The expected outcome will be the prototype of Augmented Reality Based Map of

UNIMAS. AR-BAMAN is focused on providing enhancement of the current map

navigation system in UNIMAS. It will be very useful for everyone especially to those

who not familiar with UNIMAS. This project also able to make user have better

understanding on what is augmented reality.

1.7 Significant of Research

The significant of research is to define the problems face during using the

existing system map system. With this AR-BAMAN it will benefit the people who are