Commit 1f1f34d3c15e6b481b88cf4d3ee4ed2555556afd
Merge branch 'master' of https://github.com/biometrics/openbr
Showing
5 changed files
with
82 additions
and
153 deletions
openbr/core/common.h
| @@ -153,11 +153,10 @@ void MeanStdDev(const V<T> &vals, double *mean, double *stddev) | @@ -153,11 +153,10 @@ void MeanStdDev(const V<T> &vals, double *mean, double *stddev) | ||
| 153 | template<template<typename> class C, typename T> | 153 | template<template<typename> class C, typename T> |
| 154 | T Median(C<T> vals, T *q1 = 0, T *q3 = 0) | 154 | T Median(C<T> vals, T *q1 = 0, T *q3 = 0) |
| 155 | { | 155 | { |
| 156 | - if (vals.isEmpty()) return std::numeric_limits<float>::quiet_NaN(); | ||
| 157 | qSort(vals); | 156 | qSort(vals); |
| 158 | - if (q1 != 0) *q1 = vals[1*vals.size()/4]; | ||
| 159 | - if (q3 != 0) *q3 = vals[3*vals.size()/4]; | ||
| 160 | - return vals[vals.size()/2]; | 157 | + if (q1 != 0) *q1 = vals.isEmpty() ? 0 : vals[1*vals.size()/4]; |
| 158 | + if (q3 != 0) *q3 = vals.isEmpty() ? 0 : vals[3*vals.size()/4]; | ||
| 159 | + return vals.isEmpty() ? 0 : vals[vals.size()/2]; | ||
| 161 | } | 160 | } |
| 162 | 161 | ||
| 163 | /*! | 162 | /*! |
openbr/openbr_export.cpp
| @@ -24,7 +24,7 @@ | @@ -24,7 +24,7 @@ | ||
| 24 | * OpenBR originated within The MITRE Corporation from a need to streamline the process of prototyping new algorithms. | 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>. | 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 | * | 26 | * |
| 27 | - * \image html "share/openbr/abstraction.svg" "The two principal software artifacts are the shared library 'openbr' and command line application 'br'." | 27 | + * \image html "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 |
| @@ -45,8 +45,7 @@ | @@ -45,8 +45,7 @@ | ||
| 45 | * - \subpage windows_msvc | 45 | * - \subpage windows_msvc |
| 46 | * - \subpage windows_mingw | 46 | * - \subpage windows_mingw |
| 47 | * - \subpage osx_clang | 47 | * - \subpage osx_clang |
| 48 | - * - \subpage linux_gcc | ||
| 49 | - * - \subpage linux_icc | 48 | + * - \subpage linux_all |
| 50 | * | 49 | * |
| 51 | * \section installation_from_binary From Binary | 50 | * \section installation_from_binary From Binary |
| 52 | * Pre-compiled releases are not currently provided, but they can be built from source using the instructions above. | 51 | * Pre-compiled releases are not currently provided, but they can be built from source using the instructions above. |
| @@ -70,13 +69,13 @@ $ export DYLD_FRAMEWORK_PATH=../lib:${DYLD_FRAMEWORK_PATH} | @@ -70,13 +69,13 @@ $ export DYLD_FRAMEWORK_PATH=../lib:${DYLD_FRAMEWORK_PATH} | ||
| 70 | * No configuration is necessary! | 69 | * No configuration is necessary! |
| 71 | * | 70 | * |
| 72 | * \section installation_license_dongle License Dongle | 71 | * \section installation_license_dongle License Dongle |
| 73 | - * If you were given a USB License Dongle, then dongle must be in the computer in order to use the SDK. | 72 | + * In the unlikely event that you were given a USB License Dongle, then dongle must be in the computer in order to use the SDK. |
| 74 | * No configuration of the dongle is needed. | 73 | * No configuration of the dongle is needed. |
| 75 | * | 74 | * |
| 76 | * \section installation_done Start Working | 75 | * \section installation_done Start Working |
| 77 | * To test for successful installation: | 76 | * To test for successful installation: |
| 78 | \verbatim | 77 | \verbatim |
| 79 | -$ cd bin/ | 78 | +$ cd bin |
| 80 | $ br -help | 79 | $ br -help |
| 81 | \endverbatim | 80 | \endverbatim |
| 82 | */ | 81 | */ |
| @@ -88,17 +87,17 @@ $ br -help | @@ -88,17 +87,17 @@ $ br -help | ||
| 88 | * -# You will have to register with Microsoft after installation, but it's free. | 87 | * -# You will have to register with Microsoft after installation, but it's free. |
| 89 | * -# Grab any available <a href="http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update">Visual Studio Updates</a>. | 88 | * -# Grab any available <a href="http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update">Visual Studio Updates</a>. |
| 90 | * -# Download and install <a href="http://msdn.microsoft.com/en-us/windows/hardware/hh852363.aspx">Windows 8 SDK</a>. | 89 | * -# Download and install <a href="http://msdn.microsoft.com/en-us/windows/hardware/hh852363.aspx">Windows 8 SDK</a>. |
| 91 | - * -# <a href="http://www.cmake.org/files/v2.8/cmake-2.8.10.2-win32-x86.exe">Download CMake 2.8.10.2</a> and install. | 90 | + * -# <a href="http://www.cmake.org/files/v2.8/cmake-2.8.10.2-win32-x86.exe">Download and Install CMake 2.8.10.2</a> |
| 92 | * -# During installation setup select "add CMake to PATH". | 91 | * -# During installation setup select "add CMake to PATH". |
| 93 | - * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.4/OpenCV-2.4.4.tar.bz2">Download OpenCV 2.4.4</a>. | 92 | + * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.5/opencv-2.4.5.tar.gz">Download OpenCV 2.4.5</a>. |
| 94 | * -# Consider the free open source program <a href="http://www.7-zip.org/">7-Zip</a> if you need a program to unarchive tarballs. | 93 | * -# Consider the free open source program <a href="http://www.7-zip.org/">7-Zip</a> if you need a program to unarchive tarballs. |
| 95 | - * -# Move the "OpenCV-2.4.4" folder to "C:\". | 94 | + * -# Move the "opencv-2.4.5" folder to "C:\". |
| 96 | * -# Open "VS2012 x64 Cross Tools Command Prompt" (from the Start Menu, select "All Programs" -> "Microsoft Visual Studio 2012" -> "Visual Studio Tools" -> "VS2012 x64 Cross Tools Command Prompt") and enter: | 95 | * -# Open "VS2012 x64 Cross Tools Command Prompt" (from the Start Menu, select "All Programs" -> "Microsoft Visual Studio 2012" -> "Visual Studio Tools" -> "VS2012 x64 Cross Tools Command Prompt") and enter: |
| 97 | * \code | 96 | * \code |
| 98 | - * $ cd C:\OpenCV-2.4.4 | 97 | + * $ cd C:\opencv-2.4.5 |
| 99 | * $ mkdir build-msvc2012 | 98 | * $ mkdir build-msvc2012 |
| 100 | * $ cd build-msvc2012 | 99 | * $ cd build-msvc2012 |
| 101 | - * $ cmake -G "NMake Makefiles" -DBUILD_opencv_java=OFF -DBUILD_opencv_world=ON -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF -DWITH_FFMPEG=OFF -DCMAKE_BUILD_TYPE=Debug .. | 100 | + * $ cmake -G "NMake Makefiles" -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF -DWITH_FFMPEG=OFF -DCMAKE_BUILD_TYPE=Debug .. |
| 102 | * $ nmake | 101 | * $ nmake |
| 103 | * $ nmake install | 102 | * $ nmake install |
| 104 | * $ cmake -DCMAKE_BUILD_TYPE=Release .. | 103 | * $ cmake -DCMAKE_BUILD_TYPE=Release .. |
| @@ -106,19 +105,7 @@ $ br -help | @@ -106,19 +105,7 @@ $ br -help | ||
| 106 | * $ nmake install | 105 | * $ nmake install |
| 107 | * $ nmake clean | 106 | * $ nmake clean |
| 108 | * \endcode | 107 | * \endcode |
| 109 | - * -# <a href="http://releases.qt-project.org/qt5/5.0.1/single/qt-everywhere-opensource-src-5.0.1.zip">Download Qt 5.0.1</a> and unzip. | ||
| 110 | - * -# Install Perl/Python/Ruby dependencies as explained in the "Windows" section of "README". Make sure they are added to "path" when given the option during installation. | ||
| 111 | - * -# <a href="http://www.microsoft.com/en-us/download/confirmation.aspx?id=6812">Download Direct X Software Developement Kit</a> and install. | ||
| 112 | - * -# From the VS2012 x64 Cross Tools Command Prompt: | ||
| 113 | - * \code | ||
| 114 | - * $ cd qt-everywhere-opensource-src-5.0.1 | ||
| 115 | - * $ configure -prefix C:\Qt\5.0.1\msvc2012 -opensource -confirm-license -nomake examples -nomake tests | ||
| 116 | - * $ nmake | ||
| 117 | - * $ nmake install | ||
| 118 | - * $ cd .. | ||
| 119 | - * $ rmdir /Q /S qt-everywhere-opensource-src-5.0.1 | ||
| 120 | - * \endcode | ||
| 121 | - * -# nmake will take several hours to finish. | 108 | + * -# <a href="http://download.qt-project.org/official_releases/qt/5.0/5.0.2/qt-windows-opensource-5.0.2-msvc2012_64-x64-offline.exe">Download and Install Qt 5.0.2</a> |
| 122 | * -# Create a <a href="github.com">GitHub</a> account and follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. | 109 | * -# Create a <a href="github.com">GitHub</a> account and follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. |
| 123 | * -# Launch "Git Bash" from the Desktop and clone OpenBR: | 110 | * -# Launch "Git Bash" from the Desktop and clone OpenBR: |
| 124 | * \code | 111 | * \code |
| @@ -134,31 +121,30 @@ $ br -help | @@ -134,31 +121,30 @@ $ br -help | ||
| 134 | * $ cd C:\openbr | 121 | * $ cd C:\openbr |
| 135 | * $ mkdir build-msvc2012 | 122 | * $ mkdir build-msvc2012 |
| 136 | * $ cd build-msvc2012 | 123 | * $ cd build-msvc2012 |
| 137 | - * $ cmake -G "CodeBlocks - NMake Makefiles" -DCMAKE_PREFIX_PATH="C:/OpenCV-2.4.4/build-msvc2012/install;C:/Qt/5.0.1/msvc2012" -DCMAKE_INSTALL_PREFIX="./install" -DBR_INSTALL_DEPENDENCIES=ON -DCMAKE_BUILD_TYPE=Release .. | 124 | + * $ cmake -G "CodeBlocks - NMake Makefiles" -DCMAKE_PREFIX_PATH="C:/openCV-2.4.5/build-msvc2012/install;C:/Qt/Qt5.0.2/5.0.2/msvc2012_64" -DCMAKE_INSTALL_PREFIX="./install" -DBR_INSTALL_DEPENDENCIES=ON -DCMAKE_BUILD_TYPE=Release .. |
| 138 | * $ nmake | 125 | * $ nmake |
| 139 | * $ nmake install | 126 | * $ nmake install |
| 140 | * \endcode | 127 | * \endcode |
| 141 | * -# Check out the "install" folder. | 128 | * -# Check out the "install" folder. |
| 142 | * -# Hack OpenBR! | 129 | * -# Hack OpenBR! |
| 143 | - * -# <a href="http://releases.qt-project.org/qtcreator/2.6.2/qt-creator-windows-opensource-2.6.2.exe">Download Qt Creator</a> IDE and install. | ||
| 144 | * -# From the VS2012 x64 Cross Tools Command Prompt: | 130 | * -# From the VS2012 x64 Cross Tools Command Prompt: |
| 145 | * \code | 131 | * \code |
| 146 | - * $ C:\Qt\qtcreator-2.6.2\bin\qtcreator.exe | 132 | + * $ C:\Qt\Qt5.0.2\Tools\QtCreator\bin\qtcreator.exe |
| 147 | * \endcode | 133 | * \endcode |
| 148 | * -# From the Qt Creator "Tools" menu select "Options..." | 134 | * -# From the Qt Creator "Tools" menu select "Options..." |
| 149 | * -# Under "Kits" select "Desktop (default)" | 135 | * -# Under "Kits" select "Desktop (default)" |
| 150 | - * -# For "Compiler:" select "Microsoft Visual C++ Compiler 11.0 (amd64)" and click "OK" | 136 | + * -# For "Compiler:" select "Microsoft Visual C++ Compiler 11.0 (x86_amd64)" and click "OK" |
| 151 | * -# From the Qt Creator "File" menu select "Open File or Project...". | 137 | * -# From the Qt Creator "File" menu select "Open File or Project...". |
| 152 | * -# Select "C:\openbr\CMakeLists.txt" then "Open". | 138 | * -# Select "C:\openbr\CMakeLists.txt" then "Open". |
| 153 | - * -# Browse to your prexisting build directory "C:\openbr\build-msvc2012" then select "Next". | ||
| 154 | - * -# Clear any text in the "arguments" box then select "Run CMake" then "Finish". | ||
| 155 | - * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator-2.6/">here</a> if you need. | 139 | + * -# If prompted for the location of CMake, enter "C:\Program Files (x86)\CMake 2.8\bin\cmake.exe". |
| 140 | + * -# Browse to your pre-existing build directory "C:\openbr\build-msvc2012" then select "Next". | ||
| 141 | + * -# Select "Run CMake" then "Finish". | ||
| 142 | + * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator">here</a> if you need. | ||
| 156 | * -# (Optional) Package OpenBR! | 143 | * -# (Optional) Package OpenBR! |
| 157 | - * -# <a href="http://sourceforge.net/projects/nsis/files/NSIS%202/2.46/nsis-2.46-setup.exe/download?use_mirror=iweb&download=">Download NSIS 2.46</a> and install. | ||
| 158 | * -# From the VS2012 x64 Cross Tools Command Prompt: | 144 | * -# From the VS2012 x64 Cross Tools Command Prompt: |
| 159 | * \code | 145 | * \code |
| 160 | * $ cd C:\openbr\build-msvc2012 | 146 | * $ cd C:\openbr\build-msvc2012 |
| 161 | - * $ nmake package | 147 | + * $ cpack -G ZIP |
| 162 | * \endcode | 148 | * \endcode |
| 163 | */ | 149 | */ |
| 164 | 150 | ||
| @@ -180,7 +166,7 @@ $ br -help | @@ -180,7 +166,7 @@ $ br -help | ||
| 180 | * $ cmake -G "MinGW Makefiles" -DBUILD_opencv_java=OFF -DBUILD_opencv_world=ON -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF -DWITH_FFMPEG=OFF -DCMAKE_BUILD_TYPE=Debug .. | 166 | * $ cmake -G "MinGW Makefiles" -DBUILD_opencv_java=OFF -DBUILD_opencv_world=ON -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF -DWITH_FFMPEG=OFF -DCMAKE_BUILD_TYPE=Debug .. |
| 181 | * $ mingw32-make | 167 | * $ mingw32-make |
| 182 | * $ mingw32-make install | 168 | * $ mingw32-make install |
| 183 | - * $ cmake -DCMAKE_BUILD_TYPE=Release | 169 | + * $ cmake -DCMAKE_BUILD_TYPE=Release .. |
| 184 | * $ mingw32-make | 170 | * $ mingw32-make |
| 185 | * $ mingw32-make install | 171 | * $ mingw32-make install |
| 186 | * $ mingw32-make clean | 172 | * $ mingw32-make clean |
| @@ -229,7 +215,7 @@ $ br -help | @@ -229,7 +215,7 @@ $ br -help | ||
| 229 | * -# For "Compiler:" select "MinGW (x86 64bit)" and click "OK" | 215 | * -# For "Compiler:" select "MinGW (x86 64bit)" and click "OK" |
| 230 | * -# From the Qt Creator "File" menu select "Open File or Project...". | 216 | * -# From the Qt Creator "File" menu select "Open File or Project...". |
| 231 | * -# Select "C:\openbr\CMakeLists.txt" then "Open". | 217 | * -# Select "C:\openbr\CMakeLists.txt" then "Open". |
| 232 | - * -# Browse to your prexisting build directory "C:\openbr\build-mingw64" then select "Next". | 218 | + * -# Browse to your pre-existing build directory "C:\openbr\build-mingw64" then select "Next". |
| 233 | * -# Clear any text in the "arguments" box then select "Run CMake" then "Finish". | 219 | * -# Clear any text in the "arguments" box then select "Run CMake" then "Finish". |
| 234 | * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator-2.6/">here</a> if you need. | 220 | * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator-2.6/">here</a> if you need. |
| 235 | * -# (Optional) Package OpenBR! | 221 | * -# (Optional) Package OpenBR! |
| @@ -244,7 +230,7 @@ $ br -help | @@ -244,7 +230,7 @@ $ br -help | ||
| 244 | /*! | 230 | /*! |
| 245 | * \page osx_clang OS X Mountain Lion - Clang/LLVM 3.1 - x64 | 231 | * \page osx_clang OS X Mountain Lion - Clang/LLVM 3.1 - x64 |
| 246 | * -# Download and install the latest "Xcode" and "Command Line Tools" from the <a href="https://developer.apple.com/downloads/index.action#">Apple Developer Downloads</a> page. | 232 | * -# Download and install the latest "Xcode" and "Command Line Tools" from the <a href="https://developer.apple.com/downloads/index.action#">Apple Developer Downloads</a> page. |
| 247 | - * -# <a href="http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz">Download CMake 2.8.10.2</a>. | 233 | + * -# <a href="http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz">Download CMake 2.8.10.2</a> |
| 248 | * \code | 234 | * \code |
| 249 | * $ cd ~/Downloads | 235 | * $ cd ~/Downloads |
| 250 | * $ tar -xf cmake-2.8.10.2.tar.gz | 236 | * $ tar -xf cmake-2.8.10.2.tar.gz |
| @@ -253,22 +239,22 @@ $ br -help | @@ -253,22 +239,22 @@ $ br -help | ||
| 253 | * $ make -j4 | 239 | * $ make -j4 |
| 254 | * $ sudo make install | 240 | * $ sudo make install |
| 255 | * $ cd .. | 241 | * $ cd .. |
| 256 | - * $ rm -r cmake-2.8.10.2 | 242 | + * $ rm -rf cmake-2.8.10.2* |
| 257 | * \endcode | 243 | * \endcode |
| 258 | - * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.4/OpenCV-2.4.4.tar.bz2">Download OpenCV 2.4.4</a>. | 244 | + * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.5/opencv-2.4.5.tar.gz">Download OpenCV 2.4.5</a> |
| 259 | * \code | 245 | * \code |
| 260 | * $ cd ~/Downloads | 246 | * $ cd ~/Downloads |
| 261 | - * $ tar -xf OpenCV-2.4.4.tar.bz2 | ||
| 262 | - * $ cd OpenCV-2.4.4 | 247 | + * $ tar -xf opencv-2.4.5.tar.gz |
| 248 | + * $ cd opencv-2.4.5 | ||
| 263 | * $ mkdir build | 249 | * $ mkdir build |
| 264 | * $ cd build | 250 | * $ cd build |
| 265 | - * $ cmake -DBUILD_opencv_java=OFF -DBUILD_opencv_world=OFF -DCMAKE_BUILD_TYPE=Release .. | 251 | + * $ cmake -DCMAKE_BUILD_TYPE=Release .. |
| 266 | * $ make -j4 | 252 | * $ make -j4 |
| 267 | * $ sudo make install | 253 | * $ sudo make install |
| 268 | * $ cd ../.. | 254 | * $ cd ../.. |
| 269 | - * $ rm -r OpenCV-2.4.4 | 255 | + * $ rm -rf opencv-2.4.5* |
| 270 | * \endcode | 256 | * \endcode |
| 271 | - * -# <a href="http://releases.qt-project.org/qt5/5.0.1/qt-mac-opensource-5.0.1-clang-offline.dmg">Download Qt 5.0.1</a> and install. | 257 | + * -# <a href="http://download.qt-project.org/official_releases/qt/5.0/5.0.2/qt-mac-opensource-5.0.2-clang-offline.dmg">Download and install Qt 5.0.2</a> |
| 272 | * -# Create a <a href="github.com">GitHub</a> account, follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. | 258 | * -# Create a <a href="github.com">GitHub</a> account, follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. |
| 273 | * \code | 259 | * \code |
| 274 | * $ git clone https://github.com/biometrics/openbr.git | 260 | * $ git clone https://github.com/biometrics/openbr.git |
| @@ -278,30 +264,36 @@ $ br -help | @@ -278,30 +264,36 @@ $ br -help | ||
| 278 | * \endcode | 264 | * \endcode |
| 279 | * -# Build OpenBR! | 265 | * -# Build OpenBR! |
| 280 | * \code | 266 | * \code |
| 281 | - * $ cd openbr | ||
| 282 | - * $ mkdir build | 267 | + * $ mkdir build # from the OpenBR root directory |
| 283 | * $ cd build | 268 | * $ cd build |
| 284 | - * $ cmake -DCMAKE_PREFIX_PATH=~/Qt5.0.1/5.0.1/clang_64 -DCMAKE_BUILD_TYPE=Release .. | 269 | + * $ cmake -DCMAKE_PREFIX_PATH=~/Qt5.0.2/5.0.2/clang_64 -DCMAKE_BUILD_TYPE=Release .. |
| 285 | * $ make -j4 | 270 | * $ make -j4 |
| 286 | * $ sudo make install | 271 | * $ sudo make install |
| 287 | * \endcode | 272 | * \endcode |
| 288 | * -# Hack OpenBR! | 273 | * -# Hack OpenBR! |
| 289 | * -# Open Qt Creator IDE | 274 | * -# Open Qt Creator IDE |
| 290 | * \code | 275 | * \code |
| 291 | - * $ open ~/Qt5.0.1/Qt\ Creator.app | 276 | + * $ open ~/Qt5.0.2/Qt\ Creator.app |
| 292 | * \endcode | 277 | * \endcode |
| 293 | * -# From the Qt Creator "File" menu select "Open File or Project...". | 278 | * -# From the Qt Creator "File" menu select "Open File or Project...". |
| 294 | - * -# Select "~/openbr/CMakeLists.txt" then "Open". | ||
| 295 | - * -# Browse to your prexisting build directory "~/openbr/build" then select "Continue". | 279 | + * -# Select "openbr/CMakeLists.txt" then "Open". |
| 280 | + * -# Browse to your pre-existing build directory "openbr/build" then select "Continue". | ||
| 296 | * -# Select "Run CMake" then "Done". | 281 | * -# Select "Run CMake" then "Done". |
| 297 | * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator">here</a> if you need. | 282 | * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator">here</a> if you need. |
| 283 | + * -# (Optional) Test OpenBR! | ||
| 284 | + * \code | ||
| 285 | + * $ cd openbr/scripts | ||
| 286 | + * $ ./downloadDatasets.sh | ||
| 287 | + * $ cd ../build | ||
| 288 | + * $ make test | ||
| 289 | + * \endcode | ||
| 298 | * -# (Optional) Package OpenBR! | 290 | * -# (Optional) Package OpenBR! |
| 299 | * \code | 291 | * \code |
| 300 | * $ cd openbr/build | 292 | * $ cd openbr/build |
| 301 | - * $ make package | 293 | + * $ sudo cpack -G TGZ |
| 302 | * \endcode | 294 | * \endcode |
| 303 | * -# (Optional) Build OpenBR documentation! | 295 | * -# (Optional) Build OpenBR documentation! |
| 304 | - * -# <a href="ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.2.src.tar.gz">Download Doxygen 1.8.2</a> and install: | 296 | + * -# <a href="ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.2.src.tar.gz">Download Doxygen 1.8.2</a> |
| 305 | * \code | 297 | * \code |
| 306 | * $ cd ~/Downloads | 298 | * $ cd ~/Downloads |
| 307 | * $ tar -xf doxygen-1.8.2.src.tar.gz | 299 | * $ tar -xf doxygen-1.8.2.src.tar.gz |
| @@ -310,9 +302,9 @@ $ br -help | @@ -310,9 +302,9 @@ $ br -help | ||
| 310 | * $ make -j4 | 302 | * $ make -j4 |
| 311 | * $ sudo make install | 303 | * $ sudo make install |
| 312 | * $ cd .. | 304 | * $ cd .. |
| 313 | - * $ rm -r doxygen-1.8.2 | 305 | + * $ rm -rf doxygen-1.8.2* |
| 314 | * \endcode | 306 | * \endcode |
| 315 | - * -# Modify build settings and recompile: | 307 | + * -# Modify build settings and recompile. |
| 316 | * \code | 308 | * \code |
| 317 | * $ cd openbr/build | 309 | * $ cd openbr/build |
| 318 | * $ cmake -DBR_BUILD_DOCUMENTATION=ON .. | 310 | * $ cmake -DBR_BUILD_DOCUMENTATION=ON .. |
| @@ -322,42 +314,33 @@ $ br -help | @@ -322,42 +314,33 @@ $ br -help | ||
| 322 | */ | 314 | */ |
| 323 | 315 | ||
| 324 | /*! | 316 | /*! |
| 325 | - * \page linux_gcc Ubuntu 12.04 LTS - GCC 4.6.3 - x64 | ||
| 326 | - * -# Install GCC 4.6.3. | 317 | + * \page linux_all Ubuntu 13.04 - GCC 4.7.3 or ICC 13.1.1 - x64 |
| 318 | + * -# Install GCC 4.7.3 | ||
| 327 | * \code | 319 | * \code |
| 328 | * $ sudo apt-get update | 320 | * $ sudo apt-get update |
| 329 | * $ sudo apt-get install build-essential | 321 | * $ sudo apt-get install build-essential |
| 330 | * \endcode | 322 | * \endcode |
| 331 | - * -# <a href="http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz">Download CMake 2.8.10.2</a>. | 323 | + * -# (Optional) Assuming you meet the eligibility requirements and you want to use ICC instead of GCC, <a href="http://software.intel.com/en-us/non-commercial-software-development">Download and Install Intel C++ Studio XE 2013</a>. |
| 324 | + * -# Install CMake 2.8.10.1 | ||
| 332 | * \code | 325 | * \code |
| 333 | - * $ cd ~/Downloads | ||
| 334 | - * $ tar -xf cmake-2.8.10.2.tar.gz | ||
| 335 | - * $ cd cmake-2.8.10.2 | ||
| 336 | - * $ ./configure | ||
| 337 | - * $ make -j4 | ||
| 338 | - * $ sudo make install | ||
| 339 | - * $ cd .. | ||
| 340 | - * $ rm -r cmake-2.8.10.2 | 326 | + * $ sudo apt-get install cmake cmake-curses-gui |
| 341 | * \endcode | 327 | * \endcode |
| 342 | - * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.4/OpenCV-2.4.4.tar.bz2">Download OpenCV 2.4.4</a>. | 328 | + * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.5/opencv-2.4.5.tar.gz">Download OpenCV 2.4.5</a> |
| 343 | * \code | 329 | * \code |
| 344 | * $ cd ~/Downloads | 330 | * $ cd ~/Downloads |
| 345 | - * $ tar -xf OpenCV-2.4.4.tar.bz2 | ||
| 346 | - * $ cd OpenCV-2.4.4 | 331 | + * $ tar -xf opencv-2.4.5.tar.gz |
| 332 | + * $ cd opencv-2.4.5 | ||
| 347 | * $ mkdir build | 333 | * $ mkdir build |
| 348 | * $ cd build | 334 | * $ cd build |
| 349 | - * $ cmake -DBUILD_opencv_java=OFF -DBUILD_opencv_world=ON -DCMAKE_BUILD_TYPE=Release .. | 335 | + * $ cmake -DCMAKE_BUILD_TYPE=Release .. |
| 350 | * $ make -j4 | 336 | * $ make -j4 |
| 351 | * $ sudo make install | 337 | * $ sudo make install |
| 352 | * $ cd ../.. | 338 | * $ cd ../.. |
| 353 | - * $ rm -r OpenCV-2.4.4 | 339 | + * $ rm -rf opencv-2.4.5* |
| 354 | * \endcode | 340 | * \endcode |
| 355 | - * -# <a href="http://releases.qt-project.org/qt5/5.0.1/qt-linux-opensource-5.0.1-x86_64-offline.run">Download Qt 5.0.1</a>. | 341 | + * -# Install Qt 5.0.1 |
| 356 | * \code | 342 | * \code |
| 357 | - * $ cd ~/Downloads | ||
| 358 | - * $ chmod +x qt-linux-opensource-5.0.1-x86_64-offline.run | ||
| 359 | - * $ ./qt-linux-opensource-5.0.1-x86_64-offline.run | ||
| 360 | - * $ rm qt-linux-opensource-5.0.1-x86_64-offline.run | 343 | + * $ sudo apt-get install qt5-default libqt5svg5-dev qtcreator |
| 361 | * \endcode | 344 | * \endcode |
| 362 | * -# Create a <a href="github.com">GitHub</a> account, follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. | 345 | * -# Create a <a href="github.com">GitHub</a> account, follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. |
| 363 | * \code | 346 | * \code |
| @@ -368,94 +351,43 @@ $ br -help | @@ -368,94 +351,43 @@ $ br -help | ||
| 368 | * \endcode | 351 | * \endcode |
| 369 | * -# Build OpenBR! | 352 | * -# Build OpenBR! |
| 370 | * \code | 353 | * \code |
| 371 | - * $ cd openbr | ||
| 372 | - * $ mkdir build | 354 | + * $ mkdir build # from the OpenBR root directory |
| 373 | * $ cd build | 355 | * $ cd build |
| 374 | - * $ cmake -DCMAKE_PREFIX_PATH=~/Qt5.0.1/5.0.1/gcc_64 -DCMAKE_BUILD_TYPE=Release .. | 356 | + * $ cmake -DCMAKE_BUILD_TYPE=Release .. # GCC Only |
| 357 | + * $ cmake -DCMAKE_C_COMPILER=/opt/intel/bin/icc -DCMAKE_CXX_COMPILER=/opt/intel/bin/icpc -DCMAKE_BUILD_TYPE=Release .. # ICC Only | ||
| 375 | * $ make -j4 | 358 | * $ make -j4 |
| 376 | * $ sudo make install | 359 | * $ sudo make install |
| 377 | * \endcode | 360 | * \endcode |
| 378 | * -# Hack OpenBR! | 361 | * -# Hack OpenBR! |
| 379 | * -# Open Qt Creator IDE | 362 | * -# Open Qt Creator IDE |
| 380 | * \code | 363 | * \code |
| 381 | - * $ ~/Qt5.0.1/Tools/QtCreator/bin/qtcreator & | 364 | + * $ qtcreator & |
| 382 | * \endcode | 365 | * \endcode |
| 383 | * -# From the Qt Creator "File" menu select "Open File or Project...". | 366 | * -# From the Qt Creator "File" menu select "Open File or Project...". |
| 384 | - * -# Select "~/openbr/CMakeLists.txt" then "Open". | ||
| 385 | - * -# Browse to your prexisting build directory "~/openbr/build" then select "Next". | 367 | + * -# Select "openbr/CMakeLists.txt" then "Open". |
| 368 | + * -# Browse to your pre-existing build directory "openbr/build" then select "Next". | ||
| 386 | * -# Select "Run CMake" then "Finish". | 369 | * -# Select "Run CMake" then "Finish". |
| 387 | - * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator-2.6/">here</a> if you need. | ||
| 388 | - * -# (Optional) Package OpenBR! | ||
| 389 | - * \code | ||
| 390 | - * $ cd openbr/build | ||
| 391 | - * $ make package | ||
| 392 | - * \endcode | ||
| 393 | - */ | ||
| 394 | - | ||
| 395 | -/*! | ||
| 396 | - * \page linux_icc Ubuntu 12.04 LTS - Intel C++ Studio XE 2013 - x64 | ||
| 397 | - * -# Assuming you meet the eligibility requirements, <a href="http://software.intel.com/en-us/non-commercial-software-development">Download Intel C++ Studio XE 2013</a> and install. | ||
| 398 | - * -# <a href="http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz">Download CMake 2.8.10.2</a>. | ||
| 399 | - * \code | ||
| 400 | - * $ cd ~/Downloads | ||
| 401 | - * $ tar -xf cmake-2.8.10.2.tar.gz | ||
| 402 | - * $ cd cmake-2.8.10.2 | ||
| 403 | - * $ ./configure | ||
| 404 | - * $ make -j4 | ||
| 405 | - * $ sudo make install | ||
| 406 | - * $ cd .. | ||
| 407 | - * $ rm -r cmake-2.8.10.2 | ||
| 408 | - * \endcode | ||
| 409 | - * -# <a href="http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.4/OpenCV-2.4.4.tar.bz2">Download OpenCV 2.4.4</a>. | ||
| 410 | - * \code | ||
| 411 | - * $ cd ~/Downloads | ||
| 412 | - * $ tar -xf OpenCV-2.4.4.tar.bz2 | ||
| 413 | - * $ cd OpenCV-2.4.4 | ||
| 414 | - * $ mkdir build | ||
| 415 | - * $ cd build | ||
| 416 | - * $ cmake cmake -DBUILD_opencv_java=OFF -DBUILD_opencv_world=ON -DCMAKE_BUILD_TYPE=Release .. | ||
| 417 | - * $ make -j4 | ||
| 418 | - * $ sudo make install | ||
| 419 | - * $ cd ../.. | ||
| 420 | - * $ rm -r OpenCV-2.4.4 | ||
| 421 | - * \endcode | ||
| 422 | - * -# <a href="http://releases.qt-project.org/qt5/5.0.1/qt-linux-opensource-5.0.1-x86_64-offline.run">Download Qt 5.0.1</a>. | ||
| 423 | - * \code | ||
| 424 | - * $ cd ~/Downloads | ||
| 425 | - * $ chmod +x qt-linux-opensource-5.0.1-x86_64-offline.run | ||
| 426 | - * $ ./qt-linux-opensource-5.0.1-x86_64-offline.run | ||
| 427 | - * $ rm qt-linux-opensource-5.0.1-x86_64-offline.run | ||
| 428 | - * \endcode | ||
| 429 | - * -# Create a <a href="github.com">GitHub</a> account, follow their instructions for <a href="https://help.github.com/articles/set-up-git">setting up Git</a>. | 370 | + * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator">here</a> if you need. |
| 371 | + * -# (Optional) Test OpenBR! | ||
| 430 | * \code | 372 | * \code |
| 431 | - * $ git clone https://github.com/biometrics/openbr.git | ||
| 432 | - * $ cd openbr | ||
| 433 | - * $ git submodule init | ||
| 434 | - * $ git submodule update | 373 | + * $ cd openbr/scripts |
| 374 | + * $ ./downloadDatasets.sh | ||
| 375 | + * $ cd ../build | ||
| 376 | + * $ make test | ||
| 435 | * \endcode | 377 | * \endcode |
| 436 | - * -# Build OpenBR! | 378 | + * -# (Optional) Package OpenBR! |
| 437 | * \code | 379 | * \code |
| 438 | - * $ cd openbr | ||
| 439 | - * $ mkdir build-icc | ||
| 440 | - * $ cd build-icc | ||
| 441 | - * $ cmake -DCMAKE_C_COMPILER=/opt/intel/bin/icc -DCMAKE_CXX_COMPILER=/opt/intel/bin/icpc -DCMAKE_PREFIX_PATH=~/Qt5.0.1/5.0.1/gcc_64 -DCMAKE_BUILD_TYPE=Release .. | ||
| 442 | - * $ make -j4 | ||
| 443 | - * $ sudo make install | 380 | + * $ cd openbr/build |
| 381 | + * $ sudo cpack -G TGZ | ||
| 444 | * \endcode | 382 | * \endcode |
| 445 | - * -# Hack OpenBR! | ||
| 446 | - * -# Open Qt Creator IDE | ||
| 447 | - * \code | ||
| 448 | - * $ ~/Qt5.0.1/Tools/QtCreator/bin/qtcreator & | ||
| 449 | - * \endcode | ||
| 450 | - * -# From the Qt Creator "File" menu select "Open File or Project...". | ||
| 451 | - * -# Select "~/openbr/CMakeLists.txt" then "Open". | ||
| 452 | - * -# Browse to your prexisting build directory "~/openbr/build" then select "Next". | ||
| 453 | - * -# Select "Run CMake" then "Finish". | ||
| 454 | - * -# You're all set! You can find more information on Qt Creator <a href="http://qt-project.org/doc/qtcreator-2.6/">here</a> if you need. | ||
| 455 | - * -# (Optional) Package OpenBR! | 383 | + * -# (Optional) Build OpenBR documentation! |
| 456 | * \code | 384 | * \code |
| 385 | + * $ sudo apt-get install doxygen | ||
| 457 | * $ cd openbr/build | 386 | * $ cd openbr/build |
| 458 | - * $ make package | 387 | + * $ cmake -DBR_BUILD_DOCUMENTATION=ON .. |
| 388 | + * $ make -j4 | ||
| 389 | + * $ sudo apt-get install libgnome2-bin | ||
| 390 | + * $ gnome-open html/index.html | ||
| 459 | * \endcode | 391 | * \endcode |
| 460 | */ | 392 | */ |
| 461 | 393 |
openbr/openbr_plugin.cpp
| @@ -425,8 +425,6 @@ TemplateList TemplateList::fromGallery(const br::File &gallery) | @@ -425,8 +425,6 @@ TemplateList TemplateList::fromGallery(const br::File &gallery) | ||
| 425 | if (crossValidate > 0) srand(0); | 425 | if (crossValidate > 0) srand(0); |
| 426 | 426 | ||
| 427 | for (int i=newTemplates.size()-1; i>=0; i--) { | 427 | for (int i=newTemplates.size()-1; i>=0; i--) { |
| 428 | - newTemplates[i].file.append(gallery.localMetadata()); | ||
| 429 | - newTemplates[i].file.append(file.localMetadata()); | ||
| 430 | newTemplates[i].file.set("Index", i+templates.size()); | 428 | newTemplates[i].file.set("Index", i+templates.size()); |
| 431 | newTemplates[i].file.set("Gallery", gallery.name); | 429 | newTemplates[i].file.set("Gallery", gallery.name); |
| 432 | 430 |
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 = ${CMAKE_SOURCE_DIR} | 758 | +IMAGE_PATH = ${CMAKE_SOURCE_DIR}/share/openbr |
| 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/cmake/InstallDependencies.cmake
| @@ -33,7 +33,7 @@ function(install_qt_library lib) | @@ -33,7 +33,7 @@ function(install_qt_library lib) | ||
| 33 | if(${CMAKE_BUILD_TYPE} MATCHES Debug) | 33 | if(${CMAKE_BUILD_TYPE} MATCHES Debug) |
| 34 | set(BR_INSTALL_DEPENDENCIES_SUFFIX "d") | 34 | set(BR_INSTALL_DEPENDENCIES_SUFFIX "d") |
| 35 | endif() | 35 | endif() |
| 36 | - install(FILES ${_qt5Core_install_prefix}/lib/Qt5${lib}${BR_INSTALL_DEPENDENCIES_SUFFIX}.dll DESTINATION bin) | 36 | + install(FILES ${_qt5Core_install_prefix}/bin/Qt5${lib}${BR_INSTALL_DEPENDENCIES_SUFFIX}.dll DESTINATION bin) |
| 37 | elseif(CMAKE_HOST_APPLE) | 37 | elseif(CMAKE_HOST_APPLE) |
| 38 | install(DIRECTORY ${_qt5Core_install_prefix}/lib/Qt${lib}.framework DESTINATION lib) | 38 | install(DIRECTORY ${_qt5Core_install_prefix}/lib/Qt${lib}.framework DESTINATION lib) |
| 39 | else() | 39 | else() |