Commit 7dc7471aede7e4ed09a0ae3dc34eb5c09e75dbdb

Authored by Josh Klontz
1 parent fff66ad3

spruced up documentation

app/br/br.cpp
... ... @@ -24,9 +24,9 @@
24 24  
25 25 /*!
26 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 30 * Commands are designed to mirror the \ref c_sdk and are evaluated in the order they are entered.
31 31 * To get started, try running:
32 32 * \code
... ...
openbr/openbr.h
... ... @@ -25,7 +25,7 @@ extern "C" {
25 25  
26 26 /*!
27 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 30 * In order to provide a high-level interface that is usable from the command line and callable from other programming languages,
31 31 * the API is designed to operate at the "file system" level.
... ...
openbr/openbr_export.cpp
... ... @@ -17,22 +17,27 @@
17 17 /*!
18 18 * \mainpage
19 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 29 * \section get_started Get Started
30 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 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 42 * \section installation_from_source From Source
38 43 * Installation from source is the recommended method for getting OpenBR on your machine.
... ...
openbr/openbr_plugin.h
... ... @@ -44,7 +44,7 @@
44 44  
45 45 /*!
46 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 49 * \code
50 50 * #include <openbr/openbr_plugin.h>
... ...
share/openbr/Doxyfile.in
... ... @@ -755,7 +755,7 @@ EXAMPLE_RECURSIVE = YES
755 755 # directories that contain image that are included in the documentation (see
756 756 # the \image command).
757 757  
758   -IMAGE_PATH =
  758 +IMAGE_PATH = ${CMAKE_SOURCE_DIR}
759 759  
760 760 # The INPUT_FILTER tag can be used to specify a program that doxygen should
761 761 # invoke to filter for each input file. Doxygen will invoke the filter program
... ...
share/openbr/abstraction.svg
... ... @@ -11,7 +11,7 @@
11 11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13 13 width="512"
14   - height="416"
  14 + height="400"
15 15 id="svg2"
16 16 version="1.1"
17 17 inkscape:version="0.48.2 r9819"
... ... @@ -40,12 +40,12 @@
40 40 inkscape:pageshadow="2"
41 41 inkscape:zoom="1.1446731"
42 42 inkscape:cx="160.23068"
43   - inkscape:cy="221.30937"
  43 + inkscape:cy="162.70186"
44 44 inkscape:document-units="px"
45 45 inkscape:current-layer="layer1"
46 46 showgrid="false"
47   - inkscape:window-width="1386"
48   - inkscape:window-height="856"
  47 + inkscape:window-width="1280"
  48 + inkscape:window-height="756"
49 49 inkscape:window-x="54"
50 50 inkscape:window-y="0"
51 51 inkscape:window-maximized="0" />
... ... @@ -65,30 +65,30 @@
65 65 inkscape:label="Layer 1"
66 66 inkscape:groupmode="layer"
67 67 id="layer1"
68   - transform="translate(0,-636.36218)">
  68 + transform="translate(0,-652.36218)">
69 69 <path
70 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 72 id="rect3169"
73 73 inkscape:connector-curvature="0"
74 74 sodipodi:nodetypes="ccccccccc" />
75 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 77 id="rect5563"
78 78 width="153"
79 79 height="62"
80 80 x="342"
81   - y="653.36218" />
  81 + y="667.36218" />
82 82 <rect
83 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 84 id="rect2985"
85 85 width="153"
86 86 height="62"
87 87 x="17"
88   - y="653.36218" />
  88 + y="667.36218" />
89 89 <path
90 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 92 id="rect2989"
93 93 inkscape:connector-curvature="0"
94 94 sodipodi:nodetypes="ccccccccc" />
... ... @@ -96,24 +96,24 @@
96 96 xml:space="preserve"
97 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 98 x="70.554688"
99   - y="699.79578"
  99 + y="713.79578"
100 100 id="text2995"
101 101 sodipodi:linespacing="125%"><tspan
102 102 sodipodi:role="line"
103 103 id="tspan2997"
104 104 x="70.554688"
105   - y="699.79578">br</tspan></text>
  105 + y="713.79578">br</tspan></text>
106 106 <text
107 107 xml:space="preserve"
108 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 109 x="122.3311"
110   - y="770.04187"
  110 + y="784.04187"
111 111 id="text3003"
112 112 sodipodi:linespacing="125%"><tspan
113 113 sodipodi:role="line"
114 114 id="tspan3005"
115 115 x="122.3311"
116   - y="770.04187">OpenBR</tspan></text>
  116 + y="784.04187">OpenBR</tspan></text>
117 117 <text
118 118 xml:space="preserve"
119 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 130 xml:space="preserve"
131 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 132 x="453.27899"
133   - y="750.23242"
  133 + y="764.23242"
134 134 id="text3019"
135 135 sodipodi:linespacing="125%"><tspan
136 136 sodipodi:role="line"
137 137 id="tspan3021"
138 138 x="453.27899"
139   - y="750.23242">Qt &amp;</tspan><tspan
  139 + y="764.23242">Qt &amp;</tspan><tspan
140 140 sodipodi:role="line"
141 141 x="453.27899"
142   - y="772.73242"
  142 + y="786.73242"
143 143 id="tspan3945">OpenCV</tspan></text>
144 144 <text
145 145 xml:space="preserve"
... ... @@ -154,116 +154,116 @@
154 154 x="367.25104"
155 155 y="257.92224" /></text>
156 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 158 id="rect3848"
159 159 width="126"
160 160 height="62.000004"
161 161 x="369"
162   - y="797.36218" />
  162 + y="811.36218" />
163 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 165 id="rect3854"
166 166 width="62"
167 167 height="62"
168 168 x="225"
169   - y="797.36212" />
  169 + y="811.36212" />
170 170 <rect
171 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 172 id="rect3856"
173 173 width="62"
174 174 height="62"
175 175 x="225"
176   - y="869.36218" />
  176 + y="883.36218" />
177 177 <rect
178 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 179 id="rect3858"
180 180 width="61.999996"
181 181 height="62"
182 182 x="297"
183   - y="797.36218" />
  183 + y="811.36218" />
184 184 <text
185 185 xml:space="preserve"
186 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 187 x="255.84473"
188   - y="836.36218"
  188 + y="850.36218"
189 189 id="text3816"
190 190 sodipodi:linespacing="125%"><tspan
191 191 sodipodi:role="line"
192 192 id="tspan3818"
193 193 x="255.84473"
194   - y="836.36218">LBP</tspan></text>
  194 + y="850.36218">LBP</tspan></text>
195 195 <text
196 196 xml:space="preserve"
197 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 198 x="255.64453"
199   - y="908.1073"
  199 + y="922.1073"
200 200 id="text3820"
201 201 sodipodi:linespacing="125%"><tspan
202 202 sodipodi:role="line"
203 203 id="tspan3822"
204 204 x="255.64453"
205   - y="908.1073">HOG</tspan></text>
  205 + y="922.1073">HOG</tspan></text>
206 206 <text
207 207 xml:space="preserve"
208 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 209 x="327.84473"
210   - y="836.1073"
  210 + y="850.1073"
211 211 id="text3824"
212 212 sodipodi:linespacing="125%"><tspan
213 213 sodipodi:role="line"
214 214 id="tspan3826"
215 215 x="327.84473"
216   - y="836.1073">SVM</tspan></text>
  216 + y="850.1073">SVM</tspan></text>
217 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 219 id="rect3860"
220 220 width="62.000004"
221 221 height="62.000004"
222 222 x="297"
223   - y="869.36218" />
  223 + y="883.36218" />
224 224 <text
225 225 xml:space="preserve"
226 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 227 x="328.6709"
228   - y="908.36218"
  228 + y="922.36218"
229 229 id="text3828"
230 230 sodipodi:linespacing="125%"><tspan
231 231 sodipodi:role="line"
232 232 id="tspan3830"
233 233 x="328.6709"
234   - y="908.36218">...</tspan></text>
  234 + y="922.36218">...</tspan></text>
235 235 <text
236 236 xml:space="preserve"
237 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 238 x="431.84863"
239   - y="823.69287"
  239 + y="837.69287"
240 240 id="text3840"
241 241 sodipodi:linespacing="125%"><tspan
242 242 sodipodi:role="line"
243 243 id="tspan3842"
244 244 x="431.84863"
245   - y="823.69287"
  245 + y="837.69287"
246 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 247 sodipodi:role="line"
248 248 x="431.84863"
249   - y="846.19287"
  249 + y="860.19287"
250 250 id="tspan5663"
251 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 252 <text
253 253 xml:space="preserve"
254 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 255 x="419.84863"
256   - y="678.81708"
  256 + y="692.81708"
257 257 id="text3832"
258 258 sodipodi:linespacing="125%"><tspan
259 259 sodipodi:role="line"
260 260 id="tspan3834"
261 261 x="419.84863"
262   - y="678.81708"
  262 + y="692.81708"
263 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 264 sodipodi:role="line"
265 265 x="419.84863"
266   - y="701.31708"
  266 + y="715.31708"
267 267 id="tspan5661"
268 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 269 <rect
... ... @@ -272,61 +272,61 @@
272 272 width="31.999998"
273 273 height="32"
274 274 x="288"
275   - y="945.36218" />
  275 + y="959.36218" />
276 276 <rect
277 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 278 id="rect5411"
279 279 width="30"
280 280 height="30"
281 281 x="289"
282   - y="994.36218" />
  282 + y="1008.3622" />
283 283 <text
284 284 xml:space="preserve"
285 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 286 x="326.41797"
287   - y="971.02234"
  287 + y="985.02234"
288 288 id="text5512"
289 289 sodipodi:linespacing="125%"><tspan
290 290 sodipodi:role="line"
291 291 id="tspan5514"
292 292 x="326.41797"
293   - y="971.02234">Source Code</tspan></text>
  293 + y="985.02234">Source Code</tspan></text>
294 294 <text
295 295 xml:space="preserve"
296 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 297 x="70.417969"
298   - y="1017.37"
  298 + y="1031.37"
299 299 id="text5516"
300 300 sodipodi:linespacing="125%"><tspan
301 301 sodipodi:role="line"
302 302 id="tspan5518"
303 303 x="70.417969"
304   - y="1017.37">Shared Library</tspan></text>
  304 + y="1031.37">Shared Library</tspan></text>
305 305 <text
306 306 xml:space="preserve"
307 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 308 x="71.8125"
309   - y="970.37"
  309 + y="984.37"
310 310 id="text5520"
311 311 sodipodi:linespacing="125%"><tspan
312 312 sodipodi:role="line"
313 313 id="tspan5522"
314 314 x="71.8125"
315   - y="970.37">Application</tspan></text>
  315 + y="984.37">Application</tspan></text>
316 316 <text
317 317 xml:space="preserve"
318 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 319 x="325.64453"
320   - y="1017.37"
  320 + y="1031.37"
321 321 id="text5524"
322 322 sodipodi:linespacing="125%"><tspan
323 323 sodipodi:role="line"
324 324 id="tspan5526"
325 325 x="325.64453"
326   - y="1017.37">Plugin</tspan><tspan
  326 + y="1031.37">Plugin</tspan><tspan
327 327 sodipodi:role="line"
328 328 x="325.64453"
329   - y="1047.37"
  329 + y="1061.37"
330 330 id="tspan5528" /></text>
331 331 <rect
332 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 334 width="32"
335 335 height="32"
336 336 x="32"
337   - y="993.36218" />
  337 + y="1007.3622" />
338 338 <rect
339 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 340 id="rect5641"
341 341 width="32"
342 342 height="32"
343 343 x="32"
344   - y="945.36218" />
  344 + y="959.36218" />
345 345 <rect
346   - y="869.36218"
  346 + y="883.36218"
347 347 x="369"
348 348 height="62.000004"
349 349 width="126"
350 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 352 <text
353 353 sodipodi:linespacing="125%"
354 354 id="text3925"
355   - y="895.08405"
  355 + y="909.08405"
356 356 x="431.84863"
357 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 358 xml:space="preserve"><tspan
359 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 361 x="431.84863"
362 362 id="tspan3927"
363 363 sodipodi:role="line">Commercial</tspan><tspan
364 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 365 id="tspan3929"
366   - y="917.58405"
  366 + y="931.58405"
367 367 x="431.84863"
368 368 sodipodi:role="line">Library</tspan></text>
369 369 <rect
370   - y="653.36218"
  370 + y="667.36218"
371 371 x="180"
372 372 height="62"
373 373 width="152"
374 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 376 <text
377 377 sodipodi:linespacing="125%"
378 378 id="text3939"
379   - y="678.81708"
  379 + y="692.81708"
380 380 x="256.83887"
381 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 382 xml:space="preserve"><tspan
383 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 385 x="256.83887"
386 386 id="tspan3941"
387 387 sodipodi:role="line">Open Source</tspan><tspan
388 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 389 id="tspan3943"
390   - y="701.31708"
  390 + y="715.31708"
391 391 x="256.83887"
392 392 sodipodi:role="line">Application</tspan></text>
393 393 <rect
394   - y="797.36218"
  394 + y="811.36218"
395 395 x="17"
396 396 height="134"
397 397 width="126"
... ... @@ -413,38 +413,27 @@
413 413 xml:space="preserve"
414 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 415 x="79.859375"
416   - y="859.6073"
  416 + y="873.6073"
417 417 id="text3993"
418 418 sodipodi:linespacing="125%"><tspan
419 419 sodipodi:role="line"
420 420 x="79.859375"
421   - y="859.6073"
  421 + y="873.6073"
422 422 id="tspan4025">Core</tspan><tspan
423 423 sodipodi:role="line"
424 424 x="79.859375"
425   - y="882.1073"
  425 + y="896.1073"
426 426 id="tspan3960">Framework</tspan><tspan
427 427 sodipodi:role="line"
428 428 x="79.859375"
429   - y="904.6073"
  429 + y="918.6073"
430 430 id="tspan4023" /><tspan
431 431 sodipodi:role="line"
432 432 x="79.859375"
433   - y="927.1073"
  433 + y="941.1073"
434 434 id="tspan4015" /></text>
435 435 <text
436 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 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 438 x="-44.054493"
450 439 y="241.09709"
... ... @@ -456,14 +445,14 @@
456 445 x="-44.054493"
457 446 y="241.09709" /></text>
458 447 <rect
459   - y="797.36212"
  448 + y="811.36212"
460 449 x="153"
461 450 height="62"
462 451 width="62"
463 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 454 <rect
466   - y="869.36218"
  455 + y="883.36218"
467 456 x="153"
468 457 height="62"
469 458 width="62"
... ... @@ -472,22 +461,22 @@
472 461 <text
473 462 sodipodi:linespacing="125%"
474 463 id="text3978"
475   - y="836.1073"
  464 + y="850.1073"
476 465 x="183.11035"
477 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 467 xml:space="preserve"><tspan
479   - y="836.1073"
  468 + y="850.1073"
480 469 x="183.11035"
481 470 id="tspan3980"
482 471 sodipodi:role="line">PCA</tspan></text>
483 472 <text
484 473 sodipodi:linespacing="125%"
485 474 id="text3982"
486   - y="908.36218"
  475 + y="922.36218"
487 476 x="183.64453"
488 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 478 xml:space="preserve"><tspan
490   - y="908.36218"
  479 + y="922.36218"
491 480 x="183.64453"
492 481 id="tspan3984"
493 482 sodipodi:role="line">LDA</tspan></text>
... ...