Deliverable 5.2 - the School of Engineering and Design - Brunel ...
Deliverable 5.2 - the School of Engineering and Design - Brunel ...
Deliverable 5.2 - the School of Engineering and Design - Brunel ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
ICT Project 3D VIVANT– <strong>Deliverable</strong> <strong>5.2</strong>Contract no.:248420Search & Retrieval Mechanisms &Tools5 IMPLEMENTATION DETAILS AND TOOLSThe search <strong>and</strong> retrieval framework integrates various tools <strong>and</strong> technologies in order to fulfil <strong>the</strong>required functionalities.The S<strong>of</strong>tware is implemented in C++ using <strong>the</strong> Qt 4.7.3 framework [3], <strong>the</strong> opencv (Open ComputerVision) library[4] <strong>and</strong> GLC library for 3D rendering [5]. The s<strong>of</strong>tware was compiled with MS VisualStudio 2008 compiler <strong>and</strong> tested on Windows XP <strong>and</strong> Windows 7 platforms.Qt frameworkQt is a cross platform application <strong>and</strong> UI framework that provides a broad set <strong>of</strong> tools for fast <strong>and</strong>efficient coding. The most important libraries are:Qt Core, which contains all <strong>the</strong> necessary classes for a core application. It is <strong>the</strong> foundation<strong>of</strong> all Qt-based applications. The key functions are: File I/O, objects h<strong>and</strong>ling, multithreading<strong>and</strong> concurrency, plugins <strong>and</strong> settings management <strong>and</strong> finally signals <strong>and</strong> slots interobjectcommunications.Qt GUI module contains <strong>the</strong> functionality needed to develop advanced UI applications. Animportant feature <strong>of</strong> <strong>the</strong> module is that it uses <strong>the</strong> native graphics API <strong>of</strong> each platform itsupports, taking full advantage <strong>of</strong> <strong>the</strong> system resources.Except from <strong>the</strong>se basic library modules, Qt includes also <strong>the</strong> following libraries:1. 2D graphics Canvas2. OpenGL, which was used with GLC library3. WebKit, which was used for <strong>the</strong> rendering <strong>of</strong> <strong>the</strong> hyperlinked frames from <strong>the</strong> integralsequences4. Scripting5. Multimedia6. Networking7. XML8. Database9. Unit Testing10. Declarative UIs for touch enables <strong>and</strong> embedded devicesOpenCV libraryOpenCV is a well-known, open source, Computer Vision library with a large community <strong>of</strong>developers <strong>and</strong> users. OpenCV provides a set <strong>of</strong> image I/O, image processing, computer vision <strong>and</strong>machine intelligence algorithms that are well documented <strong>and</strong> thoroughly tested from <strong>the</strong> users’community.GLC libraryGLC library provides input/output functionality for most <strong>of</strong> <strong>the</strong> well-known 3D data formats such as:4/03/2013 23