Openvg: Benchmarking and Artistic Opportunities
Total Page:16
File Type:pdf, Size:1020Kb
OpenVG: Benchmarking and artistic opportunities Brice Chevillard Master of Science in Computer Science Submission date: February 2007 Supervisor: Maria Letizia Jaccheri, IDI Norwegian University of Science and Technology Department of Computer and Information Science Problem Description OpenVG: Benchmarking and artistic opportunities Assignment given: 01. August 2006 Supervisor: Maria Letizia Jaccheri, IDI Abstract OpenVG is a new open standard for 2 dimensions vector graphics for handheld devices. This project, which is a master thesis and an internship, aims to study the standard itself deeply before to study the role it can play in the future of artistic content creation.We will see that under some few conditions, OpenVG has everything to fulfil its role in the market and to attract digital artists who would like to enlarge their creation field. But the major aim of the project is to develop a benchmark for both hardware and software implementations. And to achieve this goal, a study of the theory of performance evaluation is necessary. And after developing the benchmark, it is interesting to run some few tests to illustrate some principles enounced while studying performance evaluation. I would like to thank Letizia Jaccheri for her patience, and for helping in this project but over all for her priceless help in achieving my Norwegian scholarship. Table of content Table of content ........................................................................................................................ 3 1 Introduction ........................................................................................................................... 5 1.1 Background............................................................................................................... 5 1.2 Graphics in handheld devices........................................................................................ 6 1.3 Introducing Open VG ................................................................................................... 8 1.3.1 Background.............................................................................................................. 8 1.3.2 The need for OpenVG........................................................................................... 10 1.4 SART Project................................................................................................................ 12 1.4.1 Presentation ........................................................................................................... 12 1.4.2 Actors...................................................................................................................... 12 1.4.3 Organization .......................................................................................................... 13 1.5 Aims and challenges..................................................................................................... 14 1.6 Summary....................................................................................................................... 14 2 OpenVG................................................................................................................................ 14 2.1 Introduction .................................................................................................................. 15 2.2 Basics ............................................................................................................................. 15 2.2.1 Notions and definitions ......................................................................................... 15 2.2.2 The pipeline............................................................................................................ 17 2.3 EGL ............................................................................................................................... 20 2.4 Generalities ................................................................................................................... 24 2.4.1 Parameters ............................................................................................................. 24 2.4.2 Transformations.................................................................................................... 27 2.5 Path................................................................................................................................ 30 2.6 Paint............................................................................................................................... 45 2.6.1 Paint generalities ................................................................................................... 45 2.6.2 The paint types ...................................................................................................... 46 2.6.2.1 Solid colour ..................................................................................................... 46 2.6.2.2 Gradient paints............................................................................................... 47 2.7 Images............................................................................................................................ 51 2.7.1 Generalities about images..................................................................................... 51 2.7.2 Manipulating images............................................................................................. 53 2.7.3 Images and drawing surface................................................................................. 55 2.8 Advanced features........................................................................................................ 56 2.8.1 Image filters ........................................................................................................... 57 2.8.2 Scissoring and masking......................................................................................... 59 2.8.3 Blending.................................................................................................................. 60 2.8.4 The VGU library ................................................................................................... 62 2.9 Summary....................................................................................................................... 66 3 Innovation and artistic opportunities in OpenVG ........................................................... 66 3.1 Goals .............................................................................................................................. 66 3.2 Research method .......................................................................................................... 67 3.4 Conversations with Gabor Papp................................................................................. 68 3.5 Synthesis........................................................................................................................ 69 4 Performance evaluation...................................................................................................... 70 4.2 Metrics........................................................................................................................... 71 4.2.1 Definitions and goals ............................................................................................. 71 4.2.2 Characteristics....................................................................................................... 71 4.2.3 Some metrics.......................................................................................................... 72 4.2.4 Discussion............................................................................................................... 74 4.3 Measurement and analysis .......................................................................................... 74 4.3.1 Errors ..................................................................................................................... 75 4.3.2 Mathematic tools ................................................................................................... 76 4.4 Benchmarking............................................................................................................... 78 4.4.1 Definition................................................................................................................ 79 4.4.2 Types of benchmarks ............................................................................................ 79 4.4.3 Benchmark strategies............................................................................................ 80 4.5 Summary....................................................................................................................... 81 5 First benchmark iteration .................................................................................................. 82 5.1 Goals .............................................................................................................................. 82 5.2 Implementation............................................................................................................. 83 5.3 Problems encountered.................................................................................................. 90 5.4 Feedback and observations ......................................................................................... 91 6 Second iteration................................................................................................................... 91 6.1 Goals .............................................................................................................................