Commit 7dc7471aede7e4ed09a0ae3dc34eb5c09e75dbdb

Authored by Josh Klontz
1 parent fff66ad3

spruced up documentation

app/br/br.cpp
@@ -24,9 +24,9 @@ @@ -24,9 +24,9 @@
24 24
25 /*! 25 /*!
26 * \defgroup cli Command Line Interface 26 * \defgroup cli Command Line Interface
27 - * \brief Command line application for running algorithms and evaluating results. 27 + * \brief Command line wrapper of the \ref c_sdk.
28 * 28 *
29 - * The easiest and fastest way to leverage the project, we use it all the time! 29 + * The easiest and fastest way to run algorithms and evaluating results, we use it all the time!
30 * Commands are designed to mirror the \ref c_sdk and are evaluated in the order they are entered. 30 * Commands are designed to mirror the \ref c_sdk and are evaluated in the order they are entered.
31 * To get started, try running: 31 * To get started, try running:
32 * \code 32 * \code
openbr/openbr.h
@@ -25,7 +25,7 @@ extern "C" { @@ -25,7 +25,7 @@ extern "C" {
25 25
26 /*! 26 /*!
27 * \defgroup c_sdk C SDK 27 * \defgroup c_sdk C SDK
28 - * \brief High-level API for running algorithms and evaluating results with wrappers available for other programming languages. 28 + * \brief High-level API for running algorithms and evaluating results.
29 * 29 *
30 * In order to provide a high-level interface that is usable from the command line and callable from other programming languages, 30 * In order to provide a high-level interface that is usable from the command line and callable from other programming languages,
31 * the API is designed to operate at the "file system" level. 31 * the API is designed to operate at the "file system" level.
openbr/openbr_export.cpp
@@ -17,22 +17,27 @@ @@ -17,22 +17,27 @@
17 /*! 17 /*!
18 * \mainpage 18 * \mainpage
19 * \section overview Overview 19 * \section overview Overview
20 - * OpenBR \cite openbr is a toolkit for biometric recognition and evaluation.  
21 - * Supported use cases include training new recognition algorithms, interfacing with commercial systems, and measuring algorithm performance.  
22 - * Free algorithms are also available for specific modalities including \ref cpp_face_recognition, \ref cpp_age_estimation, and \ref cpp_gender_estimation. 20 + * OpenBR \cite openbr is a framework for investigating new modalities, improving existing algorithms, interfacing with commercial systems, measuring recognition performance, and deploying automated biometric systems.
  21 + * The project is designed to facilitate rapid algorithm prototyping, and features a mature core framework, flexible plugin system, and support for open and closed source development.
  22 + * Off-the-shelf algorithms are also available for specific modalities including \ref cpp_face_recognition, \ref cpp_age_estimation, and \ref cpp_gender_estimation.
23 * 23 *
24 - * There are three modules users may interact with:  
25 - * - \ref cli - \copybrief cli  
26 - * - \ref c_sdk - \copybrief c_sdk  
27 - * - \ref cpp_plugin_sdk - \copybrief cpp_plugin_sdk 24 + * OpenBR originated within The MITRE Corporation from a need to streamline the process of prototyping new algorithms.
  25 + * The project was later published as open source software under the <a href="http://www.apache.org/licenses/LICENSE-2.0.html">Apache 2</a> license and is <i>free for academic and commercial use</i>.
  26 + *
  27 + * \image html "share/openbr/abstraction.svg" "The two principal software artifacts are the shared library 'openbr' and command line application 'br'."
28 * 28 *
29 * \section get_started Get Started 29 * \section get_started Get Started
30 * - \ref installation - \copybrief installation 30 * - \ref installation - \copybrief installation
  31 + *
  32 + * \section learn_more Learn More
  33 + * - \ref cli - \copybrief cli
  34 + * - \ref c_sdk - \copybrief c_sdk
  35 + * - \ref cpp_plugin_sdk - \copybrief cpp_plugin_sdk
31 */ 36 */
32 37
33 /*! 38 /*!
34 * \page installation Installation 39 * \page installation Installation
35 - * \brief A hacker's guide to building, editing, and running the project. 40 + * \brief A hacker's guide to building, editing, and running OpenBR.
36 * 41 *
37 * \section installation_from_source From Source 42 * \section installation_from_source From Source
38 * Installation from source is the recommended method for getting OpenBR on your machine. 43 * Installation from source is the recommended method for getting OpenBR on your machine.
openbr/openbr_plugin.h
@@ -44,7 +44,7 @@ @@ -44,7 +44,7 @@
44 44
45 /*! 45 /*!
46 * \defgroup cpp_plugin_sdk C++ Plugin SDK 46 * \defgroup cpp_plugin_sdk C++ Plugin SDK
47 - * \brief Plugin API for developing new algorithms. 47 + * \brief Plugin API for extending OpenBR functionality.
48 * 48 *
49 * \code 49 * \code
50 * #include <openbr/openbr_plugin.h> 50 * #include <openbr/openbr_plugin.h>
share/openbr/Doxyfile.in
@@ -755,7 +755,7 @@ EXAMPLE_RECURSIVE = YES @@ -755,7 +755,7 @@ EXAMPLE_RECURSIVE = YES
755 # directories that contain image that are included in the documentation (see 755 # directories that contain image that are included in the documentation (see
756 # the \image command). 756 # the \image command).
757 757
758 -IMAGE_PATH = 758 +IMAGE_PATH = ${CMAKE_SOURCE_DIR}
759 759
760 # The INPUT_FILTER tag can be used to specify a program that doxygen should 760 # The INPUT_FILTER tag can be used to specify a program that doxygen should
761 # invoke to filter for each input file. Doxygen will invoke the filter program 761 # invoke to filter for each input file. Doxygen will invoke the filter program
share/openbr/abstraction.svg
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13 width="512" 13 width="512"
14 - height="416" 14 + height="400"
15 id="svg2" 15 id="svg2"
16 version="1.1" 16 version="1.1"
17 inkscape:version="0.48.2 r9819" 17 inkscape:version="0.48.2 r9819"
@@ -40,12 +40,12 @@ @@ -40,12 +40,12 @@
40 inkscape:pageshadow="2" 40 inkscape:pageshadow="2"
41 inkscape:zoom="1.1446731" 41 inkscape:zoom="1.1446731"
42 inkscape:cx="160.23068" 42 inkscape:cx="160.23068"
43 - inkscape:cy="221.30937" 43 + inkscape:cy="162.70186"
44 inkscape:document-units="px" 44 inkscape:document-units="px"
45 inkscape:current-layer="layer1" 45 inkscape:current-layer="layer1"
46 showgrid="false" 46 showgrid="false"
47 - inkscape:window-width="1386"  
48 - inkscape:window-height="856" 47 + inkscape:window-width="1280"
  48 + inkscape:window-height="756"
49 inkscape:window-x="54" 49 inkscape:window-x="54"
50 inkscape:window-y="0" 50 inkscape:window-y="0"
51 inkscape:window-maximized="0" /> 51 inkscape:window-maximized="0" />
@@ -65,30 +65,30 @@ @@ -65,30 +65,30 @@
65 inkscape:label="Layer 1" 65 inkscape:label="Layer 1"
66 inkscape:groupmode="layer" 66 inkscape:groupmode="layer"
67 id="layer1" 67 id="layer1"
68 - transform="translate(0,-636.36218)"> 68 + transform="translate(0,-652.36218)">
69 <path 69 <path
70 style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1" 70 style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
71 - d="m 385,725.36218 110.00001,0 0,62 -110.00001,0 0,-14 26.32194,0 -0.26587,-34 -26.05607,0 z" 71 + d="m 385,739.36218 110.00001,0 0,62 -110.00001,0 0,-14 26.32194,0 -0.26587,-34 -26.05607,0 z"
72 id="rect3169" 72 id="rect3169"
73 inkscape:connector-curvature="0" 73 inkscape:connector-curvature="0"
74 sodipodi:nodetypes="ccccccccc" /> 74 sodipodi:nodetypes="ccccccccc" />
75 <rect 75 <rect
76 - style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:1.99999988000000006;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 76 + style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:1.99999988;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
77 id="rect5563" 77 id="rect5563"
78 width="153" 78 width="153"
79 height="62" 79 height="62"
80 x="342" 80 x="342"
81 - y="653.36218" /> 81 + y="667.36218" />
82 <rect 82 <rect
83 style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" 83 style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
84 id="rect2985" 84 id="rect2985"
85 width="153" 85 width="153"
86 height="62" 86 height="62"
87 x="17" 87 x="17"
88 - y="653.36218" /> 88 + y="667.36218" />
89 <path 89 <path
90 style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1" 90 style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
91 - d="m 17,725.36218 360,0 0,21 26,0 0,20 -26,0 0,21 -360,0 z" 91 + d="m 17,739.36218 360,0 0,21 26,0 0,20 -26,0 0,21 -360,0 z"
92 id="rect2989" 92 id="rect2989"
93 inkscape:connector-curvature="0" 93 inkscape:connector-curvature="0"
94 sodipodi:nodetypes="ccccccccc" /> 94 sodipodi:nodetypes="ccccccccc" />
@@ -96,24 +96,24 @@ @@ -96,24 +96,24 @@
96 xml:space="preserve" 96 xml:space="preserve"
97 style="font-size:40px;font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans Italic" 97 style="font-size:40px;font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans Italic"
98 x="70.554688" 98 x="70.554688"
99 - y="699.79578" 99 + y="713.79578"
100 id="text2995" 100 id="text2995"
101 sodipodi:linespacing="125%"><tspan 101 sodipodi:linespacing="125%"><tspan
102 sodipodi:role="line" 102 sodipodi:role="line"
103 id="tspan2997" 103 id="tspan2997"
104 x="70.554688" 104 x="70.554688"
105 - y="699.79578">br</tspan></text> 105 + y="713.79578">br</tspan></text>
106 <text 106 <text
107 xml:space="preserve" 107 xml:space="preserve"
108 style="font-size:40px;font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans Italic" 108 style="font-size:40px;font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans Italic"
109 x="122.3311" 109 x="122.3311"
110 - y="770.04187" 110 + y="784.04187"
111 id="text3003" 111 id="text3003"
112 sodipodi:linespacing="125%"><tspan 112 sodipodi:linespacing="125%"><tspan
113 sodipodi:role="line" 113 sodipodi:role="line"
114 id="tspan3005" 114 id="tspan3005"
115 x="122.3311" 115 x="122.3311"
116 - y="770.04187">OpenBR</tspan></text> 116 + y="784.04187">OpenBR</tspan></text>
117 <text 117 <text
118 xml:space="preserve" 118 xml:space="preserve"
119 style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" 119 style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
@@ -130,16 +130,16 @@ @@ -130,16 +130,16 @@
130 xml:space="preserve" 130 xml:space="preserve"
131 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 131 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
132 x="453.27899" 132 x="453.27899"
133 - y="750.23242" 133 + y="764.23242"
134 id="text3019" 134 id="text3019"
135 sodipodi:linespacing="125%"><tspan 135 sodipodi:linespacing="125%"><tspan
136 sodipodi:role="line" 136 sodipodi:role="line"
137 id="tspan3021" 137 id="tspan3021"
138 x="453.27899" 138 x="453.27899"
139 - y="750.23242">Qt &amp;</tspan><tspan 139 + y="764.23242">Qt &amp;</tspan><tspan
140 sodipodi:role="line" 140 sodipodi:role="line"
141 x="453.27899" 141 x="453.27899"
142 - y="772.73242" 142 + y="786.73242"
143 id="tspan3945">OpenCV</tspan></text> 143 id="tspan3945">OpenCV</tspan></text>
144 <text 144 <text
145 xml:space="preserve" 145 xml:space="preserve"
@@ -154,116 +154,116 @@ @@ -154,116 +154,116 @@
154 x="367.25104" 154 x="367.25104"
155 y="257.92224" /></text> 155 y="257.92224" /></text>
156 <rect 156 <rect
157 - style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:1.99999988000000006;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997000000018, 7.99999995000000030;stroke-dashoffset:0" 157 + style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:1.99999988;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997, 7.99999995;stroke-dashoffset:0"
158 id="rect3848" 158 id="rect3848"
159 width="126" 159 width="126"
160 height="62.000004" 160 height="62.000004"
161 x="369" 161 x="369"
162 - y="797.36218" /> 162 + y="811.36218" />
163 <rect 163 <rect
164 - style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999987999999984, 7.99999977999999867;stroke-dashoffset:0" 164 + style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999988, 7.99999978;stroke-dashoffset:0"
165 id="rect3854" 165 id="rect3854"
166 width="62" 166 width="62"
167 height="62" 167 height="62"
168 x="225" 168 x="225"
169 - y="797.36212" /> 169 + y="811.36212" />
170 <rect 170 <rect
171 style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4, 8;stroke-dashoffset:0" 171 style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4, 8;stroke-dashoffset:0"
172 id="rect3856" 172 id="rect3856"
173 width="62" 173 width="62"
174 height="62" 174 height="62"
175 x="225" 175 x="225"
176 - y="869.36218" /> 176 + y="883.36218" />
177 <rect 177 <rect
178 style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4, 8;stroke-dashoffset:0" 178 style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4, 8;stroke-dashoffset:0"
179 id="rect3858" 179 id="rect3858"
180 width="61.999996" 180 width="61.999996"
181 height="62" 181 height="62"
182 x="297" 182 x="297"
183 - y="797.36218" /> 183 + y="811.36218" />
184 <text 184 <text
185 xml:space="preserve" 185 xml:space="preserve"
186 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 186 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
187 x="255.84473" 187 x="255.84473"
188 - y="836.36218" 188 + y="850.36218"
189 id="text3816" 189 id="text3816"
190 sodipodi:linespacing="125%"><tspan 190 sodipodi:linespacing="125%"><tspan
191 sodipodi:role="line" 191 sodipodi:role="line"
192 id="tspan3818" 192 id="tspan3818"
193 x="255.84473" 193 x="255.84473"
194 - y="836.36218">LBP</tspan></text> 194 + y="850.36218">LBP</tspan></text>
195 <text 195 <text
196 xml:space="preserve" 196 xml:space="preserve"
197 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 197 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
198 x="255.64453" 198 x="255.64453"
199 - y="908.1073" 199 + y="922.1073"
200 id="text3820" 200 id="text3820"
201 sodipodi:linespacing="125%"><tspan 201 sodipodi:linespacing="125%"><tspan
202 sodipodi:role="line" 202 sodipodi:role="line"
203 id="tspan3822" 203 id="tspan3822"
204 x="255.64453" 204 x="255.64453"
205 - y="908.1073">HOG</tspan></text> 205 + y="922.1073">HOG</tspan></text>
206 <text 206 <text
207 xml:space="preserve" 207 xml:space="preserve"
208 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 208 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
209 x="327.84473" 209 x="327.84473"
210 - y="836.1073" 210 + y="850.1073"
211 id="text3824" 211 id="text3824"
212 sodipodi:linespacing="125%"><tspan 212 sodipodi:linespacing="125%"><tspan
213 sodipodi:role="line" 213 sodipodi:role="line"
214 id="tspan3826" 214 id="tspan3826"
215 x="327.84473" 215 x="327.84473"
216 - y="836.1073">SVM</tspan></text> 216 + y="850.1073">SVM</tspan></text>
217 <rect 217 <rect
218 - style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4.00000014000000004, 8.00000028000000007;stroke-dashoffset:0" 218 + style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4.00000014, 8.00000028;stroke-dashoffset:0"
219 id="rect3860" 219 id="rect3860"
220 width="62.000004" 220 width="62.000004"
221 height="62.000004" 221 height="62.000004"
222 x="297" 222 x="297"
223 - y="869.36218" /> 223 + y="883.36218" />
224 <text 224 <text
225 xml:space="preserve" 225 xml:space="preserve"
226 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 226 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
227 x="328.6709" 227 x="328.6709"
228 - y="908.36218" 228 + y="922.36218"
229 id="text3828" 229 id="text3828"
230 sodipodi:linespacing="125%"><tspan 230 sodipodi:linespacing="125%"><tspan
231 sodipodi:role="line" 231 sodipodi:role="line"
232 id="tspan3830" 232 id="tspan3830"
233 x="328.6709" 233 x="328.6709"
234 - y="908.36218">...</tspan></text> 234 + y="922.36218">...</tspan></text>
235 <text 235 <text
236 xml:space="preserve" 236 xml:space="preserve"
237 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 237 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
238 x="431.84863" 238 x="431.84863"
239 - y="823.69287" 239 + y="837.69287"
240 id="text3840" 240 id="text3840"
241 sodipodi:linespacing="125%"><tspan 241 sodipodi:linespacing="125%"><tspan
242 sodipodi:role="line" 242 sodipodi:role="line"
243 id="tspan3842" 243 id="tspan3842"
244 x="431.84863" 244 x="431.84863"
245 - y="823.69287" 245 + y="837.69287"
246 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Commercial</tspan><tspan 246 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Commercial</tspan><tspan
247 sodipodi:role="line" 247 sodipodi:role="line"
248 x="431.84863" 248 x="431.84863"
249 - y="846.19287" 249 + y="860.19287"
250 id="tspan5663" 250 id="tspan5663"
251 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Wrapper</tspan></text> 251 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Wrapper</tspan></text>
252 <text 252 <text
253 xml:space="preserve" 253 xml:space="preserve"
254 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 254 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
255 x="419.84863" 255 x="419.84863"
256 - y="678.81708" 256 + y="692.81708"
257 id="text3832" 257 id="text3832"
258 sodipodi:linespacing="125%"><tspan 258 sodipodi:linespacing="125%"><tspan
259 sodipodi:role="line" 259 sodipodi:role="line"
260 id="tspan3834" 260 id="tspan3834"
261 x="419.84863" 261 x="419.84863"
262 - y="678.81708" 262 + y="692.81708"
263 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Commercial</tspan><tspan 263 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Commercial</tspan><tspan
264 sodipodi:role="line" 264 sodipodi:role="line"
265 x="419.84863" 265 x="419.84863"
266 - y="701.31708" 266 + y="715.31708"
267 id="tspan5661" 267 id="tspan5661"
268 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Application</tspan></text> 268 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans">Application</tspan></text>
269 <rect 269 <rect
@@ -272,61 +272,61 @@ @@ -272,61 +272,61 @@
272 width="31.999998" 272 width="31.999998"
273 height="32" 273 height="32"
274 x="288" 274 x="288"
275 - y="945.36218" /> 275 + y="959.36218" />
276 <rect 276 <rect
277 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4, 8;stroke-dashoffset:0" 277 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4, 8;stroke-dashoffset:0"
278 id="rect5411" 278 id="rect5411"
279 width="30" 279 width="30"
280 height="30" 280 height="30"
281 x="289" 281 x="289"
282 - y="994.36218" /> 282 + y="1008.3622" />
283 <text 283 <text
284 xml:space="preserve" 284 xml:space="preserve"
285 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 285 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
286 x="326.41797" 286 x="326.41797"
287 - y="971.02234" 287 + y="985.02234"
288 id="text5512" 288 id="text5512"
289 sodipodi:linespacing="125%"><tspan 289 sodipodi:linespacing="125%"><tspan
290 sodipodi:role="line" 290 sodipodi:role="line"
291 id="tspan5514" 291 id="tspan5514"
292 x="326.41797" 292 x="326.41797"
293 - y="971.02234">Source Code</tspan></text> 293 + y="985.02234">Source Code</tspan></text>
294 <text 294 <text
295 xml:space="preserve" 295 xml:space="preserve"
296 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 296 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
297 x="70.417969" 297 x="70.417969"
298 - y="1017.37" 298 + y="1031.37"
299 id="text5516" 299 id="text5516"
300 sodipodi:linespacing="125%"><tspan 300 sodipodi:linespacing="125%"><tspan
301 sodipodi:role="line" 301 sodipodi:role="line"
302 id="tspan5518" 302 id="tspan5518"
303 x="70.417969" 303 x="70.417969"
304 - y="1017.37">Shared Library</tspan></text> 304 + y="1031.37">Shared Library</tspan></text>
305 <text 305 <text
306 xml:space="preserve" 306 xml:space="preserve"
307 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 307 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
308 x="71.8125" 308 x="71.8125"
309 - y="970.37" 309 + y="984.37"
310 id="text5520" 310 id="text5520"
311 sodipodi:linespacing="125%"><tspan 311 sodipodi:linespacing="125%"><tspan
312 sodipodi:role="line" 312 sodipodi:role="line"
313 id="tspan5522" 313 id="tspan5522"
314 x="71.8125" 314 x="71.8125"
315 - y="970.37">Application</tspan></text> 315 + y="984.37">Application</tspan></text>
316 <text 316 <text
317 xml:space="preserve" 317 xml:space="preserve"
318 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 318 style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
319 x="325.64453" 319 x="325.64453"
320 - y="1017.37" 320 + y="1031.37"
321 id="text5524" 321 id="text5524"
322 sodipodi:linespacing="125%"><tspan 322 sodipodi:linespacing="125%"><tspan
323 sodipodi:role="line" 323 sodipodi:role="line"
324 id="tspan5526" 324 id="tspan5526"
325 x="325.64453" 325 x="325.64453"
326 - y="1017.37">Plugin</tspan><tspan 326 + y="1031.37">Plugin</tspan><tspan
327 sodipodi:role="line" 327 sodipodi:role="line"
328 x="325.64453" 328 x="325.64453"
329 - y="1047.37" 329 + y="1061.37"
330 id="tspan5528" /></text> 330 id="tspan5528" /></text>
331 <rect 331 <rect
332 style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 332 style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
@@ -334,64 +334,64 @@ @@ -334,64 +334,64 @@
334 width="32" 334 width="32"
335 height="32" 335 height="32"
336 x="32" 336 x="32"
337 - y="993.36218" /> 337 + y="1007.3622" />
338 <rect 338 <rect
339 style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 339 style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
340 id="rect5641" 340 id="rect5641"
341 width="32" 341 width="32"
342 height="32" 342 height="32"
343 x="32" 343 x="32"
344 - y="945.36218" /> 344 + y="959.36218" />
345 <rect 345 <rect
346 - y="869.36218" 346 + y="883.36218"
347 x="369" 347 x="369"
348 height="62.000004" 348 height="62.000004"
349 width="126" 349 width="126"
350 id="rect3923" 350 id="rect3923"
351 - style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:1.99999988000000006;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997000000018, 7.99999995000000030;stroke-dashoffset:0" /> 351 + style="fill:#ffffbf;fill-opacity:1;stroke:#000000;stroke-width:1.99999988;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997, 7.99999995;stroke-dashoffset:0" />
352 <text 352 <text
353 sodipodi:linespacing="125%" 353 sodipodi:linespacing="125%"
354 id="text3925" 354 id="text3925"
355 - y="895.08405" 355 + y="909.08405"
356 x="431.84863" 356 x="431.84863"
357 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 357 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
358 xml:space="preserve"><tspan 358 xml:space="preserve"><tspan
359 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans" 359 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
360 - y="895.08405" 360 + y="909.08405"
361 x="431.84863" 361 x="431.84863"
362 id="tspan3927" 362 id="tspan3927"
363 sodipodi:role="line">Commercial</tspan><tspan 363 sodipodi:role="line">Commercial</tspan><tspan
364 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans" 364 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
365 id="tspan3929" 365 id="tspan3929"
366 - y="917.58405" 366 + y="931.58405"
367 x="431.84863" 367 x="431.84863"
368 sodipodi:role="line">Library</tspan></text> 368 sodipodi:role="line">Library</tspan></text>
369 <rect 369 <rect
370 - y="653.36218" 370 + y="667.36218"
371 x="180" 371 x="180"
372 height="62" 372 height="62"
373 width="152" 373 width="152"
374 id="rect3937" 374 id="rect3937"
375 - style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:1.99999988000000006;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" /> 375 + style="fill:#fc8d59;fill-opacity:1;stroke:#000000;stroke-width:1.99999988;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
376 <text 376 <text
377 sodipodi:linespacing="125%" 377 sodipodi:linespacing="125%"
378 id="text3939" 378 id="text3939"
379 - y="678.81708" 379 + y="692.81708"
380 x="256.83887" 380 x="256.83887"
381 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 381 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
382 xml:space="preserve"><tspan 382 xml:space="preserve"><tspan
383 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans" 383 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
384 - y="678.81708" 384 + y="692.81708"
385 x="256.83887" 385 x="256.83887"
386 id="tspan3941" 386 id="tspan3941"
387 sodipodi:role="line">Open Source</tspan><tspan 387 sodipodi:role="line">Open Source</tspan><tspan
388 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans" 388 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
389 id="tspan3943" 389 id="tspan3943"
390 - y="701.31708" 390 + y="715.31708"
391 x="256.83887" 391 x="256.83887"
392 sodipodi:role="line">Application</tspan></text> 392 sodipodi:role="line">Application</tspan></text>
393 <rect 393 <rect
394 - y="797.36218" 394 + y="811.36218"
395 x="17" 395 x="17"
396 height="134" 396 height="134"
397 width="126" 397 width="126"
@@ -413,38 +413,27 @@ @@ -413,38 +413,27 @@
413 xml:space="preserve" 413 xml:space="preserve"
414 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 414 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
415 x="79.859375" 415 x="79.859375"
416 - y="859.6073" 416 + y="873.6073"
417 id="text3993" 417 id="text3993"
418 sodipodi:linespacing="125%"><tspan 418 sodipodi:linespacing="125%"><tspan
419 sodipodi:role="line" 419 sodipodi:role="line"
420 x="79.859375" 420 x="79.859375"
421 - y="859.6073" 421 + y="873.6073"
422 id="tspan4025">Core</tspan><tspan 422 id="tspan4025">Core</tspan><tspan
423 sodipodi:role="line" 423 sodipodi:role="line"
424 x="79.859375" 424 x="79.859375"
425 - y="882.1073" 425 + y="896.1073"
426 id="tspan3960">Framework</tspan><tspan 426 id="tspan3960">Framework</tspan><tspan
427 sodipodi:role="line" 427 sodipodi:role="line"
428 x="79.859375" 428 x="79.859375"
429 - y="904.6073" 429 + y="918.6073"
430 id="tspan4023" /><tspan 430 id="tspan4023" /><tspan
431 sodipodi:role="line" 431 sodipodi:role="line"
432 x="79.859375" 432 x="79.859375"
433 - y="927.1073" 433 + y="941.1073"
434 id="tspan4015" /></text> 434 id="tspan4015" /></text>
435 <text 435 <text
436 xml:space="preserve" 436 xml:space="preserve"
437 - style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:0.50196078;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"  
438 - x="158.38187"  
439 - y="1047.0341"  
440 - id="text4017"  
441 - sodipodi:linespacing="125%"><tspan  
442 - sodipodi:role="line"  
443 - id="tspan4019"  
444 - x="158.38187"  
445 - y="1047.0341">www.openbiometrics.org</tspan></text>  
446 - <text  
447 - xml:space="preserve"  
448 style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" 437 style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
449 x="-44.054493" 438 x="-44.054493"
450 y="241.09709" 439 y="241.09709"
@@ -456,14 +445,14 @@ @@ -456,14 +445,14 @@
456 x="-44.054493" 445 x="-44.054493"
457 y="241.09709" /></text> 446 y="241.09709" /></text>
458 <rect 447 <rect
459 - y="797.36212" 448 + y="811.36212"
460 x="153" 449 x="153"
461 height="62" 450 height="62"
462 width="62" 451 width="62"
463 id="rect3974" 452 id="rect3974"
464 - style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999987999999984, 7.99999977999999867;stroke-dashoffset:0" /> 453 + style="fill:#99d59e;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999988, 7.99999978;stroke-dashoffset:0" />
465 <rect 454 <rect
466 - y="869.36218" 455 + y="883.36218"
467 x="153" 456 x="153"
468 height="62" 457 height="62"
469 width="62" 458 width="62"
@@ -472,22 +461,22 @@ @@ -472,22 +461,22 @@
472 <text 461 <text
473 sodipodi:linespacing="125%" 462 sodipodi:linespacing="125%"
474 id="text3978" 463 id="text3978"
475 - y="836.1073" 464 + y="850.1073"
476 x="183.11035" 465 x="183.11035"
477 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 466 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
478 xml:space="preserve"><tspan 467 xml:space="preserve"><tspan
479 - y="836.1073" 468 + y="850.1073"
480 x="183.11035" 469 x="183.11035"
481 id="tspan3980" 470 id="tspan3980"
482 sodipodi:role="line">PCA</tspan></text> 471 sodipodi:role="line">PCA</tspan></text>
483 <text 472 <text
484 sodipodi:linespacing="125%" 473 sodipodi:linespacing="125%"
485 id="text3982" 474 id="text3982"
486 - y="908.36218" 475 + y="922.36218"
487 x="183.64453" 476 x="183.64453"
488 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans" 477 style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
489 xml:space="preserve"><tspan 478 xml:space="preserve"><tspan
490 - y="908.36218" 479 + y="922.36218"
491 x="183.64453" 480 x="183.64453"
492 id="tspan3984" 481 id="tspan3984"
493 sodipodi:role="line">LDA</tspan></text> 482 sodipodi:role="line">LDA</tspan></text>