├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── pom.xml ├── src ├── main │ ├── java │ │ └── nu │ │ │ └── pattern │ │ │ └── OpenCV.java │ └── resources │ │ └── nu │ │ └── pattern │ │ └── opencv │ │ ├── linux │ │ ├── x86_32 │ │ │ ├── README.md │ │ │ ├── cmake.log │ │ │ └── libopencv_java249.so │ │ └── x86_64 │ │ │ ├── README.md │ │ │ ├── cmake.log │ │ │ └── libopencv_java249.so │ │ └── osx │ │ ├── x86_32 │ │ ├── README.md │ │ ├── cmake.log │ │ └── libopencv_java249.dylib │ │ └── x86_64 │ │ ├── README.md │ │ ├── cmake.log │ │ └── libopencv_java249.dylib └── test │ ├── java │ └── nu │ │ └── pattern │ │ ├── LibraryLoadingTest.java │ │ └── LoadLibraryRunListener.java │ └── resources │ └── logging.properties └── upstream ├── README.md ├── opencv-249.jar ├── opencv-test.jar └── res ├── drawable ├── chessboard.jpg ├── icon.png └── lena.jpg ├── layout └── main.xml ├── raw └── lbpcascade_frontalface.xml └── values └── strings.xml /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | *.sc 3 | .DS_Store 4 | .idea 5 | settings.xml 6 | target 7 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | branches: 2 | only: 3 | - master 4 | - stable 5 | 6 | language: java 7 | 8 | env: 9 | - ARCH=x64 10 | - ARCH=x32 11 | 12 | jdk: 13 | - oraclejdk8 14 | - oraclejdk7 15 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | By downloading, copying, installing or using the software you agree to this license. 2 | If you do not agree to this license, do not download, install, 3 | copy or use the software. 4 | 5 | 6 | License Agreement 7 | For Open Source Computer Vision Library 8 | (3-clause BSD License) 9 | 10 | Redistribution and use in source and binary forms, with or without modification, 11 | are permitted provided that the following conditions are met: 12 | 13 | * Redistributions of source code must retain the above copyright notice, 14 | this list of conditions and the following disclaimer. 15 | 16 | * Redistributions in binary form must reproduce the above copyright notice, 17 | this list of conditions and the following disclaimer in the documentation 18 | and/or other materials provided with the distribution. 19 | 20 | * Neither the names of the copyright holders nor the names of the contributors 21 | may be used to endorse or promote products derived from this software 22 | without specific prior written permission. 23 | 24 | This software is provided by the copyright holders and contributors "as is" and 25 | any express or implied warranties, including, but not limited to, the implied 26 | warranties of merchantability and fitness for a particular purpose are disclaimed. 27 | In no event shall copyright holders or contributors be liable for any direct, 28 | indirect, incidental, special, exemplary, or consequential damages 29 | (including, but not limited to, procurement of substitute goods or services; 30 | loss of use, data, or profits; or business interruption) however caused 31 | and on any theory of liability, whether in contract, strict liability, 32 | or tort (including negligence or otherwise) arising in any way out of 33 | the use of this software, even if advised of the possibility of such damage. 34 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # OpenCV 2.4.9 (packaged by [Pattern](http://pattern.nu)) 2 | 3 | [![Build Status](https://travis-ci.org/PatternConsulting/opencv.svg?branch=stable)](https://travis-ci.org/PatternConsulting/opencv) 4 | 5 | [OpenCV](http://opencv.org) Java bindings packaged with native libraries, seamlessly delivered as a turn-key Maven dependency. 6 | 7 | ## Deprecation Notice 8 | 9 | Due to time constraints, this package is not actively maintained. As of December 29, 2015, it's strongly recommended users migrate to [OpenPnP's excellent fork of this project](https://github.com/openpnp/opencv), generously and regularly maintained by [Jason von Nieda](https://github.com/vonnieda). 10 | 11 | ## Usage 12 | 13 | ### Project 14 | 15 | Pattern's OpenCV package is added to your project as any other dependency. 16 | 17 | #### [Maven](http://maven.apache.org/) 18 | 19 | ```xml 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | nu.pattern 30 | opencv 31 | 2.4.9-7 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | ``` 42 | 43 | #### [SBT](http://scala-sbt.org) 44 | 45 | ```scala 46 | // ... 47 | 48 | libraryDependencies += "nu.pattern" % "opencv" % "2.4.9-7" 49 | 50 | // ... 51 | ``` 52 | 53 | ### API 54 | 55 | Typically, using the upstream [OpenCV Java bindings involves loading the native library](http://docs.opencv.org/doc/tutorials/introduction/desktop_java/java_dev_intro.html#java-sample-with-ant) as follows: 56 | 57 | ```java 58 | static { 59 | System.loadLibrary(org.opencv.core.Core.NATIVE_LIBRARY_NAME); 60 | } 61 | ``` 62 | 63 | Fortunately, this is unchanged except for one caveat. To use the native libraries included with this package, first call [`nu.pattern.OpenCV.loadShared()`](https://github.com/PatternConsulting/opencv/blob/master/src/main/java/nu/pattern/OpenCV.java). 64 | 65 | This call will—exactly once per class loader—first attempt to load from the system-wide installation (exactly as if `System.loadLibrary(org.opencv.core.Core.NATIVE_LIBRARY_NAME);` were called without any preceding steps). If that fails, the loader will select a binary from the package appropriate for the runtime environment's operating system and architecture. It will write that native library to a temporary directory (also defined by the environment), add that directory to `java.library.path`. _This involves writing to disk_, so consider the implications. Temporary files will be garbage-collected on clean shutdown. 66 | 67 | This approach keeps most clients decoupled from Pattern's package and loader. As long as this is done sufficiently early in execution, any library using the OpenCV Java bindings can use the usual load call as documented by the OpenCV project. 68 | 69 | There are, however, cases where Java class loaders are frequently changing (_e.g._, application servers, SBT projects, Scala worksheets), and [spurious attempts to load the native library will result in JNI errors](https://github.com/PatternConsulting/opencv/issues/7). As a partial work-around, this package offers an alternative API, [`nu.pattern.OpenCV.loadLocal()`](https://github.com/PatternConsulting/opencv/blob/master/src/main/java/nu/pattern/OpenCV.java), which—also exactly once per class loader—extracts the binary appropriate for the runtime platform, and passes it to `System#load(String)`. Ultimately, this may eventually load the library redundantly in the same JVM, which could be unsafe in production. Use with caution and understand the implications. 70 | 71 | It's recommended developers using any JNI library read further: 72 | 73 | - [JNI 1.2 Specifications: Library and Version Management](http://docs.oracle.com/javase/7/docs/technotes/guides/jni/jni-12.html#libmanage) 74 | - [Holger Hoffstätte's Comments on Native Libraries, Class Loaders, and Garbage Collection](https://groups.google.com/forum/#!msg/ospl-developer/J4i6cF6yPk0/-3Jm3Qs_HDwJ) 75 | 76 | ## Debugging 77 | 78 | [Java logging](http://docs.oracle.com/javase/8/docs/api/java/util/logging/package-summary.html) is used to produce log messages from `nu.pattern.OpenCV`. 79 | 80 | ## Rationale 81 | 82 | Developers wishing to use the Java API for OpenCV would typically go through the process of building the project, and building it for each platform they wished to support (_e.g._, 32-bit Linux, OS X). This project provides those binaries for inclusion as a typical dependency in Maven, Ivy, and SBT projects. 83 | 84 | Apart from testing, this package deliberately specifies no external dependencies. It does, however, make use of modern Java APIs (such as [Java NIO](http://docs.oracle.com/javase/tutorial/essential/io/fileio.html)). 85 | 86 | ## Contributing 87 | 88 | Producing native binaries is the most cumbersome process in maintaining this package. If you can contribute binaries _for the current version_, please make a pull request including the build artifacts and any platform definitions in `nu.pattern.OpenCV`. 89 | 90 | ## Support 91 | 92 | The following platforms are supported by this package: 93 | 94 | OS | Architecture 95 | --- | --- 96 | OS X | x86_32 97 | OS X | x86_64 98 | Linux | x86_64 99 | Linux | x86_32 100 | 101 | If you can help create binaries for additional platforms, please see notes under [_Contributing_](#contributing). 102 | 103 | ## Credits 104 | 105 | This package is maintained by [Michael Ahlers](http://github.com/michaelahlers). 106 | 107 | ## Acknowledgements 108 | 109 | - [Greg Borenstein](https://github.com/atduskgreg), who's advice and [OpenCV for Processing](https://github.com/atduskgreg/opencv-processing) project informed this package's development. 110 | - [Alex Osborne](https://github.com/ato), for helpful [utility class producing temporary directories with Java NIO that are properly garbage-collected on shutdown](https://gist.github.com/ato/6774390). 111 | -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | 8 | org.sonatype.oss 9 | oss-parent 10 | 7 11 | 12 | 13 | jar 14 | nu.pattern 15 | opencv 16 | 2.4.9-7 17 | Pattern OpenCV 18 | OpenCV packaged with native libraries and loader for multiple platforms. 19 | http://github.com/patternconsulting/opencv 20 | 21 | 22 | UTF-8 23 | 24 | 25 | 26 | 27 | jdk-8 28 | 29 | 1.8 30 | 31 | 32 | 33 | -Xdoclint:none 34 | 35 | 36 | 37 | 38 | release-sign-artifacts 39 | 40 | 41 | gpg.sign 42 | true 43 | 44 | 45 | 46 | 47 | 48 | org.apache.maven.plugins 49 | maven-gpg-plugin 50 | 1.4 51 | 52 | 53 | sign-artifacts 54 | verify 55 | 56 | sign 57 | 58 | 59 | false 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | BSD License 72 | http://github.com/Itseez/opencv/raw/master/LICENSE 73 | 74 | 75 | 76 | 77 | http://github.com/patternconsulting/opencv 78 | scm:git:http://github.com/patternconsulting/opencv.git 79 | scm:git:http://github.com/patternconsulting/opencv.git 80 | v2.4.9-3 81 | 82 | 83 | 84 | GitHub 85 | http://github.com/patternconsulting/opencv/issues 86 | 87 | 88 | 89 | 90 | michaelahlers 91 | Michael Ahlers 92 | michael.ahlers@pattern.nu 93 | Pattern 94 | http://pattern.nu 95 | 96 | maintainer 97 | 98 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | maven-compiler-plugin 108 | 109 | 1.7 110 | 1.7 111 | 112 | 113 | 114 | 115 | 116 | maven-antrun-plugin 117 | 1.3 118 | 119 | 120 | generate-sources 121 | 122 | 123 | Extracting Java classes. 124 | 125 | 126 | 127 | 128 | 129 | 130 | Extracting Java test classes. 131 | 132 | 133 | 134 | 135 | 136 | 137 | Extracting Java sources. 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | run 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | org.codehaus.mojo 155 | build-helper-maven-plugin 156 | 1.8 157 | 158 | 159 | prepare-package 160 | 161 | add-source 162 | 163 | 164 | 165 | ${project.build.directory}/upstream-sources 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | org.apache.maven.plugins 175 | maven-source-plugin 176 | 2.2.1 177 | 178 | 179 | 180 | jar 181 | 182 | 183 | 184 | 185 | 186 | 187 | maven-surefire-plugin 188 | 2.12.4 189 | 190 | 191 | 192 | java.util.logging.config.file 193 | ${project.build.directory}/test-classes/logging.properties 194 | 195 | 196 | 197 | 198 | 199 | listener 200 | nu.pattern.LoadLibraryRunListener 201 | 202 | 203 | 204 | ${project.basedir}/upstream 205 | 206 | 207 | **/OpenCVTestCase.* 208 | 209 | 210 | 211 | 212 | 213 | org.apache.maven.plugins 214 | maven-javadoc-plugin 215 | 2.9.1 216 | 217 | 218 | attach-javadocs 219 | 220 | jar 221 | 222 | 223 | 224 | 225 | 226 | http://docs.opencv.org/java/ 227 | http://docs.oracle.com/javase/8/docs/api/ 228 | 229 | ${javadoc.parameters} 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | junit 238 | junit 239 | 4.11 240 | test 241 | 242 | 243 | 244 | 245 | -------------------------------------------------------------------------------- /src/main/java/nu/pattern/OpenCV.java: -------------------------------------------------------------------------------- 1 | package nu.pattern; 2 | 3 | import org.opencv.core.Core; 4 | import sun.reflect.CallerSensitive; 5 | 6 | import java.io.File; 7 | import java.io.IOException; 8 | import java.io.InputStream; 9 | import java.lang.reflect.Field; 10 | import java.nio.file.FileVisitResult; 11 | import java.nio.file.Files; 12 | import java.nio.file.Path; 13 | import java.nio.file.SimpleFileVisitor; 14 | import java.nio.file.attribute.BasicFileAttributes; 15 | import java.util.Arrays; 16 | import java.util.HashSet; 17 | import java.util.Set; 18 | import java.util.logging.Level; 19 | import java.util.logging.Logger; 20 | import java.util.regex.Pattern; 21 | 22 | public class OpenCV { 23 | 24 | private final static Logger logger = Logger.getLogger(OpenCV.class.getName()); 25 | 26 | static enum OS { 27 | OSX("^[Mm]ac OS X$"), 28 | LINUX("^[Ll]inux$"), 29 | WINDOWS("^[Ww]indows.*"); 30 | 31 | private final Set patterns; 32 | 33 | private OS(final String... patterns) { 34 | this.patterns = new HashSet(); 35 | 36 | for (final String pattern : patterns) { 37 | this.patterns.add(Pattern.compile(pattern)); 38 | } 39 | } 40 | 41 | private boolean is(final String id) { 42 | for (final Pattern pattern : patterns) { 43 | if (pattern.matcher(id).matches()) { 44 | return true; 45 | } 46 | } 47 | return false; 48 | } 49 | 50 | public static OS getCurrent() { 51 | final String osName = System.getProperty("os.name"); 52 | 53 | for (final OS os : OS.values()) { 54 | if (os.is(osName)) { 55 | logger.log(Level.FINEST, "Current environment matches operating system descriptor \"{0}\".", os); 56 | return os; 57 | } 58 | } 59 | 60 | throw new UnsupportedOperationException(String.format("Operating system \"%s\" is not supported.", osName)); 61 | } 62 | } 63 | 64 | static enum Arch { 65 | X86_32("i386", "i686"), 66 | X86_64("amd64", "x86_64"); 67 | 68 | private final Set patterns; 69 | 70 | private Arch(final String... patterns) { 71 | this.patterns = new HashSet(Arrays.asList(patterns)); 72 | } 73 | 74 | private boolean is(final String id) { 75 | return patterns.contains(id); 76 | } 77 | 78 | public static Arch getCurrent() { 79 | final String osArch = System.getProperty("os.arch"); 80 | 81 | for (final Arch arch : Arch.values()) { 82 | if (arch.is(osArch)) { 83 | logger.log(Level.FINEST, "Current environment matches architecture descriptor \"{0}\".", arch); 84 | return arch; 85 | } 86 | } 87 | 88 | throw new UnsupportedOperationException(String.format("Architecture \"%s\" is not supported.", osArch)); 89 | } 90 | } 91 | 92 | private static class UnsupportedPlatformException extends RuntimeException { 93 | private UnsupportedPlatformException(final OS os, final Arch arch) { 94 | super(String.format("Operating system \"%s\" and architecture \"%s\" are not supported.", os, arch)); 95 | } 96 | } 97 | 98 | private static class TemporaryDirectory { 99 | final Path path; 100 | 101 | public TemporaryDirectory() { 102 | try { 103 | path = Files.createTempDirectory(""); 104 | } catch (IOException e) { 105 | throw new RuntimeException(e); 106 | } 107 | } 108 | 109 | public Path getPath() { 110 | return path; 111 | } 112 | 113 | public TemporaryDirectory markDeleteOnExit() { 114 | Runtime.getRuntime().addShutdownHook(new Thread() { 115 | @Override 116 | public void run() { 117 | delete(); 118 | } 119 | }); 120 | 121 | return this; 122 | } 123 | 124 | public void delete() { 125 | if (!Files.exists(path)) { 126 | return; 127 | } 128 | 129 | try { 130 | Files.walkFileTree(path, new SimpleFileVisitor() { 131 | @Override 132 | public FileVisitResult postVisitDirectory(final Path dir, final IOException e) 133 | throws IOException { 134 | Files.deleteIfExists(dir); 135 | return super.postVisitDirectory(dir, e); 136 | } 137 | 138 | @Override 139 | public FileVisitResult visitFile(final Path file, final BasicFileAttributes attrs) 140 | throws IOException { 141 | Files.deleteIfExists(file); 142 | return super.visitFile(file, attrs); 143 | } 144 | }); 145 | } catch (IOException e) { 146 | throw new RuntimeException(e); 147 | } 148 | } 149 | 150 | } 151 | 152 | /** 153 | * Exactly once per {@link ClassLoader}, attempt to load the native library (via {@link System#loadLibrary(String)} with {@link Core#NATIVE_LIBRARY_NAME}). If the first attempt fails, the native binary will be extracted from the classpath to a temporary location (which gets cleaned up on shutdown), that location is added to the {@code java.library.path} system property and {@link ClassLoader#usr_paths}, and then another call to load the library is made. Note this method uses reflection to gain access to private memory in {@link ClassLoader} as there's no documented method to augment the library path at runtime. Spurious calls are safe. 154 | */ 155 | public static void loadShared() { 156 | SharedLoader.getInstance(); 157 | } 158 | 159 | /** 160 | * @see Initialization-on-demand holder idiom 161 | */ 162 | private static class SharedLoader { 163 | private Path libraryPath; 164 | 165 | private SharedLoader() { 166 | try { 167 | System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 168 | logger.log(Level.FINEST, "Loaded existing OpenCV library \"{0}\" from library path.", Core.NATIVE_LIBRARY_NAME); 169 | } catch (final UnsatisfiedLinkError ule) { 170 | 171 | /* Only update the library path and load if the original error indicates it's missing from the library path. */ 172 | if (!String.format("no %s in java.library.path", Core.NATIVE_LIBRARY_NAME).equals(ule.getMessage())) { 173 | logger.log(Level.FINEST, String.format("Encountered unexpected loading error."), ule); 174 | throw ule; 175 | } 176 | 177 | /* Retain this path for cleaning up the library path later. */ 178 | this.libraryPath = extractNativeBinary(); 179 | 180 | addLibraryPath(libraryPath.getParent()); 181 | System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 182 | 183 | logger.log(Level.FINEST, "OpenCV library \"{0}\" loaded from extracted copy at \"{1}\".", new Object[]{Core.NATIVE_LIBRARY_NAME, System.mapLibraryName(Core.NATIVE_LIBRARY_NAME)}); 184 | } 185 | } 186 | 187 | /** 188 | * Cleans up patches done to the environment. 189 | */ 190 | @Override 191 | protected void finalize() throws Throwable { 192 | super.finalize(); 193 | 194 | if (null == libraryPath) { 195 | return; 196 | } 197 | 198 | removeLibraryPath(libraryPath.getParent()); 199 | } 200 | 201 | private static class Holder { 202 | private static final SharedLoader INSTANCE = new SharedLoader(); 203 | } 204 | 205 | public static SharedLoader getInstance() { 206 | return Holder.INSTANCE; 207 | } 208 | 209 | /** 210 | * Adds the provided {@link Path}, normalized, to the {@link ClassLoader#usr_paths} array, as well as to the {@code java.library.path} system property. Uses the reflection API to make the field accessible, and may be unsafe in environments with a security policy. 211 | * 212 | * @see Adding new paths for native libraries at runtime in Java 213 | */ 214 | private static void addLibraryPath(final Path path) { 215 | final String normalizedPath = path.normalize().toString(); 216 | 217 | try { 218 | final Field field = ClassLoader.class.getDeclaredField("usr_paths"); 219 | field.setAccessible(true); 220 | 221 | final Set userPaths = new HashSet<>(Arrays.asList((String[]) field.get(null))); 222 | userPaths.add(normalizedPath); 223 | 224 | field.set(null, userPaths.toArray(new String[userPaths.size()])); 225 | 226 | System.setProperty("java.library.path", System.getProperty("java.library.path") + File.pathSeparator + normalizedPath); 227 | 228 | logger.log(Level.FINEST, "System library path now \"{0}\".", System.getProperty("java.library.path")); 229 | } catch (IllegalAccessException e) { 230 | throw new RuntimeException("Failed to get permissions to set library path"); 231 | } catch (NoSuchFieldException e) { 232 | throw new RuntimeException("Failed to get field handle to set library path"); 233 | } 234 | } 235 | 236 | /** 237 | * Removes the provided {@link Path}, normalized, from the {@link ClassLoader#usr_paths} array, as well as to the {@code java.library.path} system property. Uses the reflection API to make the field accessible, and may be unsafe in environments with a security policy. 238 | */ 239 | private static void removeLibraryPath(final Path path) { 240 | final String normalizedPath = path.normalize().toString(); 241 | 242 | try { 243 | final Field field = ClassLoader.class.getDeclaredField("usr_paths"); 244 | field.setAccessible(true); 245 | 246 | final Set userPaths = new HashSet<>(Arrays.asList((String[]) field.get(null))); 247 | userPaths.remove(normalizedPath); 248 | 249 | field.set(null, userPaths.toArray(new String[userPaths.size()])); 250 | 251 | System.setProperty("java.library.path", System.getProperty("java.library.path").replace(File.pathSeparator + path.normalize().toString(), "")); 252 | } catch (IllegalAccessException e) { 253 | throw new RuntimeException("Failed to get permissions to set library path"); 254 | } catch (NoSuchFieldException e) { 255 | throw new RuntimeException("Failed to get field handle to set library path"); 256 | } 257 | } 258 | } 259 | 260 | /** 261 | * Exactly once per {@link ClassLoader}, extract the native binary from the classpath to a temporary location (which gets cleaned up on shutdown), and load that binary (via {@link System#load(String)}). Spurious calls are safe. 262 | */ 263 | public static void loadLocally() { 264 | LocalLoader.getInstance(); 265 | } 266 | 267 | private static class LocalLoader { 268 | private LocalLoader() { 269 | /* Retain this path for cleaning up later. */ 270 | final Path libraryPath = extractNativeBinary(); 271 | System.load(libraryPath.normalize().toString()); 272 | 273 | logger.log(Level.FINEST, "OpenCV library \"{0}\" loaded from extracted copy at \"{1}\".", new Object[]{Core.NATIVE_LIBRARY_NAME, System.mapLibraryName(Core.NATIVE_LIBRARY_NAME)}); 274 | } 275 | 276 | private static class Holder { 277 | private static final LocalLoader INSTANCE = new LocalLoader(); 278 | } 279 | 280 | public static LocalLoader getInstance() { 281 | return Holder.INSTANCE; 282 | } 283 | } 284 | 285 | /** 286 | * Selects the appropriate packaged binary, extracts it to a temporary location (which gets deleted when the JVM shuts down), and returns a {@link Path} to that file. 287 | */ 288 | @CallerSensitive 289 | private static Path extractNativeBinary() { 290 | final OS os = OS.getCurrent(); 291 | final Arch arch = Arch.getCurrent(); 292 | return extractNativeBinary(os, arch); 293 | } 294 | 295 | /** 296 | * Extracts the packaged binary for the specified platform to a temporary location (which gets deleted when the JVM shuts down), and returns a {@link Path} to that file. 297 | */ 298 | private static Path extractNativeBinary(final OS os, final Arch arch) { 299 | final String location; 300 | 301 | switch (os) { 302 | case LINUX: 303 | switch (arch) { 304 | case X86_32: 305 | location = "/nu/pattern/opencv/linux/x86_32/libopencv_java249.so"; 306 | break; 307 | case X86_64: 308 | location = "/nu/pattern/opencv/linux/x86_64/libopencv_java249.so"; 309 | break; 310 | default: 311 | throw new UnsupportedPlatformException(os, arch); 312 | } 313 | break; 314 | case OSX: 315 | switch (arch) { 316 | case X86_64: 317 | location = "/nu/pattern/opencv/osx/x86_64/libopencv_java249.dylib"; 318 | break; 319 | default: 320 | throw new UnsupportedPlatformException(os, arch); 321 | } 322 | break; 323 | default: 324 | throw new UnsupportedPlatformException(os, arch); 325 | } 326 | 327 | logger.log(Level.FINEST, "Selected native binary \"{0}\".", location); 328 | 329 | final InputStream binary = OpenCV.class.getResourceAsStream(location); 330 | final Path destination = new TemporaryDirectory().markDeleteOnExit().getPath().resolve("./" + location).normalize(); 331 | 332 | try { 333 | logger.log(Level.FINEST, "Copying native binary to \"{0}\".", destination); 334 | Files.createDirectories(destination.getParent()); 335 | Files.copy(binary, destination); 336 | } catch (final IOException ioe) { 337 | throw new IllegalStateException(String.format("Error writing native library to \"%s\".", destination), ioe); 338 | } 339 | 340 | logger.log(Level.FINEST, "Extracted native binary to \"{0}\".", destination); 341 | 342 | return destination; 343 | } 344 | } 345 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/linux/x86_32/README.md: -------------------------------------------------------------------------------- 1 | # Linux x86_32 2 | 3 | ## Preparation 4 | 5 | ```shell 6 | cmake -DBUILD_SHARED_LIBS=OFF .. 7 | ``` 8 | 9 | ## Build 10 | 11 | ```shell 12 | make -j8 13 | ``` 14 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/linux/x86_32/cmake.log: -------------------------------------------------------------------------------- 1 | -- The CXX compiler identification is GNU 2 | -- The C compiler identification is GNU 3 | -- Check for working CXX compiler: /usr/bin/c++ 4 | -- Check for working CXX compiler: /usr/bin/c++ -- works 5 | -- Detecting CXX compiler ABI info 6 | -- Detecting CXX compiler ABI info - done 7 | -- Check for working C compiler: /usr/bin/gcc 8 | -- Check for working C compiler: /usr/bin/gcc -- works 9 | -- Detecting C compiler ABI info 10 | -- Detecting C compiler ABI info - done 11 | -- Detected version of GNU GCC: 46 (406) 12 | -- Performing Test HAVE_CXX_FSIGNED_CHAR 13 | -- Performing Test HAVE_CXX_FSIGNED_CHAR - Success 14 | -- Performing Test HAVE_C_FSIGNED_CHAR 15 | -- Performing Test HAVE_C_FSIGNED_CHAR - Success 16 | -- Performing Test HAVE_CXX_W 17 | -- Performing Test HAVE_CXX_W - Success 18 | -- Performing Test HAVE_C_W 19 | -- Performing Test HAVE_C_W - Success 20 | -- Performing Test HAVE_CXX_WALL 21 | -- Performing Test HAVE_CXX_WALL - Success 22 | -- Performing Test HAVE_C_WALL 23 | -- Performing Test HAVE_C_WALL - Success 24 | -- Performing Test HAVE_CXX_WERROR_RETURN_TYPE 25 | -- Performing Test HAVE_CXX_WERROR_RETURN_TYPE - Success 26 | -- Performing Test HAVE_C_WERROR_RETURN_TYPE 27 | -- Performing Test HAVE_C_WERROR_RETURN_TYPE - Success 28 | -- Performing Test HAVE_CXX_WERROR_ADDRESS 29 | -- Performing Test HAVE_CXX_WERROR_ADDRESS - Success 30 | -- Performing Test HAVE_C_WERROR_ADDRESS 31 | -- Performing Test HAVE_C_WERROR_ADDRESS - Success 32 | -- Performing Test HAVE_CXX_WERROR_SEQUENCE_POINT 33 | -- Performing Test HAVE_CXX_WERROR_SEQUENCE_POINT - Success 34 | -- Performing Test HAVE_C_WERROR_SEQUENCE_POINT 35 | -- Performing Test HAVE_C_WERROR_SEQUENCE_POINT - Success 36 | -- Performing Test HAVE_CXX_WFORMAT 37 | -- Performing Test HAVE_CXX_WFORMAT - Success 38 | -- Performing Test HAVE_C_WFORMAT 39 | -- Performing Test HAVE_C_WFORMAT - Success 40 | -- Performing Test HAVE_CXX_WERROR_FORMAT_SECURITY 41 | -- Performing Test HAVE_CXX_WERROR_FORMAT_SECURITY - Success 42 | -- Performing Test HAVE_C_WERROR_FORMAT_SECURITY 43 | -- Performing Test HAVE_C_WERROR_FORMAT_SECURITY - Success 44 | -- Performing Test HAVE_CXX_WMISSING_DECLARATIONS 45 | -- Performing Test HAVE_CXX_WMISSING_DECLARATIONS - Success 46 | -- Performing Test HAVE_C_WMISSING_DECLARATIONS 47 | -- Performing Test HAVE_C_WMISSING_DECLARATIONS - Success 48 | -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES 49 | -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES - Failed 50 | -- Performing Test HAVE_C_WMISSING_PROTOTYPES 51 | -- Performing Test HAVE_C_WMISSING_PROTOTYPES - Success 52 | -- Performing Test HAVE_CXX_WSTRICT_PROTOTYPES 53 | -- Performing Test HAVE_CXX_WSTRICT_PROTOTYPES - Failed 54 | -- Performing Test HAVE_C_WSTRICT_PROTOTYPES 55 | -- Performing Test HAVE_C_WSTRICT_PROTOTYPES - Success 56 | -- Performing Test HAVE_CXX_WUNDEF 57 | -- Performing Test HAVE_CXX_WUNDEF - Success 58 | -- Performing Test HAVE_C_WUNDEF 59 | -- Performing Test HAVE_C_WUNDEF - Success 60 | -- Performing Test HAVE_CXX_WINIT_SELF 61 | -- Performing Test HAVE_CXX_WINIT_SELF - Success 62 | -- Performing Test HAVE_C_WINIT_SELF 63 | -- Performing Test HAVE_C_WINIT_SELF - Success 64 | -- Performing Test HAVE_CXX_WPOINTER_ARITH 65 | -- Performing Test HAVE_CXX_WPOINTER_ARITH - Success 66 | -- Performing Test HAVE_C_WPOINTER_ARITH 67 | -- Performing Test HAVE_C_WPOINTER_ARITH - Success 68 | -- Performing Test HAVE_CXX_WSHADOW 69 | -- Performing Test HAVE_CXX_WSHADOW - Success 70 | -- Performing Test HAVE_C_WSHADOW 71 | -- Performing Test HAVE_C_WSHADOW - Success 72 | -- Performing Test HAVE_CXX_WSIGN_PROMO 73 | -- Performing Test HAVE_CXX_WSIGN_PROMO - Success 74 | -- Performing Test HAVE_C_WSIGN_PROMO 75 | -- Performing Test HAVE_C_WSIGN_PROMO - Failed 76 | -- Performing Test HAVE_CXX_WNO_NARROWING 77 | -- Performing Test HAVE_CXX_WNO_NARROWING - Failed 78 | -- Performing Test HAVE_C_WNO_NARROWING 79 | -- Performing Test HAVE_C_WNO_NARROWING - Failed 80 | -- Performing Test HAVE_CXX_WNO_DELETE_NON_VIRTUAL_DTOR 81 | -- Performing Test HAVE_CXX_WNO_DELETE_NON_VIRTUAL_DTOR - Failed 82 | -- Performing Test HAVE_C_WNO_DELETE_NON_VIRTUAL_DTOR 83 | -- Performing Test HAVE_C_WNO_DELETE_NON_VIRTUAL_DTOR - Failed 84 | -- Performing Test HAVE_CXX_WNO_UNNAMED_TYPE_TEMPLATE_ARGS 85 | -- Performing Test HAVE_CXX_WNO_UNNAMED_TYPE_TEMPLATE_ARGS - Failed 86 | -- Performing Test HAVE_C_WNO_UNNAMED_TYPE_TEMPLATE_ARGS 87 | -- Performing Test HAVE_C_WNO_UNNAMED_TYPE_TEMPLATE_ARGS - Failed 88 | -- Performing Test HAVE_CXX_FDIAGNOSTICS_SHOW_OPTION 89 | -- Performing Test HAVE_CXX_FDIAGNOSTICS_SHOW_OPTION - Success 90 | -- Performing Test HAVE_C_FDIAGNOSTICS_SHOW_OPTION 91 | -- Performing Test HAVE_C_FDIAGNOSTICS_SHOW_OPTION - Success 92 | -- Performing Test HAVE_CXX_PTHREAD 93 | -- Performing Test HAVE_CXX_PTHREAD - Success 94 | -- Performing Test HAVE_C_PTHREAD 95 | -- Performing Test HAVE_C_PTHREAD - Success 96 | -- Performing Test HAVE_CXX_MARCH_I686 97 | -- Performing Test HAVE_CXX_MARCH_I686 - Success 98 | -- Performing Test HAVE_C_MARCH_I686 99 | -- Performing Test HAVE_C_MARCH_I686 - Success 100 | -- Performing Test HAVE_CXX_FOMIT_FRAME_POINTER 101 | -- Performing Test HAVE_CXX_FOMIT_FRAME_POINTER - Success 102 | -- Performing Test HAVE_C_FOMIT_FRAME_POINTER 103 | -- Performing Test HAVE_C_FOMIT_FRAME_POINTER - Success 104 | -- Performing Test HAVE_CXX_MSSE 105 | -- Performing Test HAVE_CXX_MSSE - Success 106 | -- Performing Test HAVE_C_MSSE 107 | -- Performing Test HAVE_C_MSSE - Success 108 | -- Performing Test HAVE_CXX_MSSE2 109 | -- Performing Test HAVE_CXX_MSSE2 - Success 110 | -- Performing Test HAVE_C_MSSE2 111 | -- Performing Test HAVE_C_MSSE2 - Success 112 | -- Performing Test HAVE_CXX_MSSE3 113 | -- Performing Test HAVE_CXX_MSSE3 - Success 114 | -- Performing Test HAVE_C_MSSE3 115 | -- Performing Test HAVE_C_MSSE3 - Success 116 | -- Performing Test HAVE_CXX_MFPMATH_SSE 117 | -- Performing Test HAVE_CXX_MFPMATH_SSE - Success 118 | -- Performing Test HAVE_C_MFPMATH_SSE 119 | -- Performing Test HAVE_C_MFPMATH_SSE - Success 120 | -- Performing Test HAVE_CXX_FFUNCTION_SECTIONS 121 | -- Performing Test HAVE_CXX_FFUNCTION_SECTIONS - Success 122 | -- Performing Test HAVE_C_FFUNCTION_SECTIONS 123 | -- Performing Test HAVE_C_FFUNCTION_SECTIONS - Success 124 | -- Looking for pthread.h 125 | -- Looking for pthread.h - found 126 | -- Check if the system is big endian 127 | -- Searching 16 bit integer 128 | -- Looking for sys/types.h 129 | -- Looking for sys/types.h - found 130 | -- Looking for stdint.h 131 | -- Looking for stdint.h - found 132 | -- Looking for stddef.h 133 | -- Looking for stddef.h - found 134 | -- Check size of unsigned short 135 | -- Check size of unsigned short - done 136 | -- Using unsigned short 137 | -- Check if the system is big endian - little endian 138 | -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) 139 | -- Looking for fseeko 140 | -- Looking for fseeko - found 141 | -- Looking for unistd.h 142 | -- Looking for unistd.h - found 143 | -- Check size of off64_t 144 | -- Check size of off64_t - failed 145 | -- Performing Test HAVE_C_WNO_ATTRIBUTES 146 | -- Performing Test HAVE_C_WNO_ATTRIBUTES - Success 147 | -- Performing Test HAVE_C_WNO_STRICT_PROTOTYPES 148 | -- Performing Test HAVE_C_WNO_STRICT_PROTOTYPES - Success 149 | -- Performing Test HAVE_C_WNO_MISSING_PROTOTYPES 150 | -- Performing Test HAVE_C_WNO_MISSING_PROTOTYPES - Success 151 | -- Performing Test HAVE_C_WNO_MISSING_DECLARATIONS 152 | -- Performing Test HAVE_C_WNO_MISSING_DECLARATIONS - Success 153 | -- Could NOT find TIFF (missing: TIFF_LIBRARY TIFF_INCLUDE_DIR) 154 | -- Looking for assert.h 155 | -- Looking for assert.h - found 156 | -- Looking for fcntl.h 157 | -- Looking for fcntl.h - found 158 | -- Looking for io.h 159 | -- Looking for io.h - not found 160 | -- Looking for jbg_newlen 161 | -- Looking for jbg_newlen - not found 162 | -- Looking for mmap 163 | -- Looking for mmap - found 164 | -- Looking for search.h 165 | -- Looking for search.h - found 166 | -- Looking for string.h 167 | -- Looking for string.h - found 168 | -- Looking for unistd.h 169 | -- Looking for unistd.h - found 170 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_VARIABLE 171 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_VARIABLE - Success 172 | -- Performing Test HAVE_C_WNO_UNDEF 173 | -- Performing Test HAVE_C_WNO_UNDEF - Success 174 | -- Performing Test HAVE_C_WNO_UNUSED 175 | -- Performing Test HAVE_C_WNO_UNUSED - Success 176 | -- Performing Test HAVE_C_WNO_SIGN_COMPARE 177 | -- Performing Test HAVE_C_WNO_SIGN_COMPARE - Success 178 | -- Performing Test HAVE_C_WNO_CAST_ALIGN 179 | -- Performing Test HAVE_C_WNO_CAST_ALIGN - Success 180 | -- Performing Test HAVE_C_WNO_SHADOW 181 | -- Performing Test HAVE_C_WNO_SHADOW - Success 182 | -- Performing Test HAVE_C_WNO_MAYBE_UNINITIALIZED 183 | -- Performing Test HAVE_C_WNO_MAYBE_UNINITIALIZED - Failed 184 | -- Performing Test HAVE_C_WNO_POINTER_TO_INT_CAST 185 | -- Performing Test HAVE_C_WNO_POINTER_TO_INT_CAST - Success 186 | -- Performing Test HAVE_C_WNO_INT_TO_POINTER_CAST 187 | -- Performing Test HAVE_C_WNO_INT_TO_POINTER_CAST - Success 188 | -- Performing Test HAVE_C_WNO_UNUSED_PARAMETER 189 | -- Performing Test HAVE_C_WNO_UNUSED_PARAMETER - Success 190 | -- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS 191 | -- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS - Success 192 | -- Performing Test HAVE_CXX_WNO_UNUSED_PARAMETER 193 | -- Performing Test HAVE_CXX_WNO_UNUSED_PARAMETER - Success 194 | -- Could NOT find JPEG (missing: JPEG_LIBRARY JPEG_INCLUDE_DIR) 195 | -- Found JPEG: libjpeg 196 | -- Could NOT find Jasper (missing: JASPER_LIBRARY JASPER_INCLUDE_DIR) 197 | -- Performing Test HAVE_C_WNO_IMPLICIT_FUNCTION_DECLARATION 198 | -- Performing Test HAVE_C_WNO_IMPLICIT_FUNCTION_DECLARATION - Success 199 | -- Performing Test HAVE_C_WNO_UNINITIALIZED 200 | -- Performing Test HAVE_C_WNO_UNINITIALIZED - Success 201 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_PARAMETER 202 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_PARAMETER - Success 203 | -- Found ZLIB: zlib (found version "1.2.7") 204 | -- Could NOT find PNG (missing: PNG_LIBRARY PNG_PNG_INCLUDE_DIR) 205 | -- Looking for semaphore.h 206 | -- Looking for semaphore.h - found 207 | -- Performing Test HAVE_CXX_WNO_SHADOW 208 | -- Performing Test HAVE_CXX_WNO_SHADOW - Success 209 | -- Performing Test HAVE_CXX_WNO_UNUSED 210 | -- Performing Test HAVE_CXX_WNO_UNUSED - Success 211 | -- Performing Test HAVE_CXX_WNO_SIGN_COMPARE 212 | -- Performing Test HAVE_CXX_WNO_SIGN_COMPARE - Success 213 | -- Performing Test HAVE_CXX_WNO_UNDEF 214 | -- Performing Test HAVE_CXX_WNO_UNDEF - Success 215 | -- Performing Test HAVE_CXX_WNO_UNINITIALIZED 216 | -- Performing Test HAVE_CXX_WNO_UNINITIALIZED - Success 217 | -- Performing Test HAVE_CXX_WNO_SWITCH 218 | -- Performing Test HAVE_CXX_WNO_SWITCH - Success 219 | -- Performing Test HAVE_CXX_WNO_PARENTHESES 220 | -- Performing Test HAVE_CXX_WNO_PARENTHESES - Success 221 | -- Performing Test HAVE_CXX_WNO_ARRAY_BOUNDS 222 | -- Performing Test HAVE_CXX_WNO_ARRAY_BOUNDS - Success 223 | -- Performing Test HAVE_CXX_WNO_EXTRA 224 | -- Performing Test HAVE_CXX_WNO_EXTRA - Success 225 | -- checking for module 'gtk+-2.0' 226 | -- package 'gtk+-2.0' not found 227 | -- checking for module 'gthread-2.0' 228 | -- package 'gthread-2.0' not found 229 | -- checking for module 'gstreamer-base-0.10' 230 | -- package 'gstreamer-base-0.10' not found 231 | -- checking for module 'libdc1394-2' 232 | -- package 'libdc1394-2' not found 233 | -- checking for module 'libdc1394' 234 | -- package 'libdc1394' not found 235 | -- checking for module 'libv4l1' 236 | -- package 'libv4l1' not found 237 | -- Looking for linux/videodev.h 238 | -- Looking for linux/videodev.h - not found 239 | -- Looking for linux/videodev2.h 240 | -- Looking for linux/videodev2.h - found 241 | -- Looking for sys/videoio.h 242 | -- Looking for sys/videoio.h - not found 243 | -- checking for module 'libavcodec' 244 | -- package 'libavcodec' not found 245 | -- checking for module 'libavformat' 246 | -- package 'libavformat' not found 247 | -- checking for module 'libavutil' 248 | -- package 'libavutil' not found 249 | -- checking for module 'libswscale' 250 | -- package 'libswscale' not found 251 | -- Looking for libavformat/avformat.h 252 | -- Looking for libavformat/avformat.h - not found 253 | -- Looking for ffmpeg/avformat.h 254 | -- Looking for ffmpeg/avformat.h - not found 255 | -- Found PythonInterp: /usr/bin/python (found suitable version "2.7.3", required is "2.0") 256 | -- Could NOT find PythonLibs (missing: PYTHON_INCLUDE_DIRS) (Required is at least version "2.7.3") 257 | Traceback (most recent call last): 258 | File "", line 1, in 259 | ImportError: No module named numpy.distutils 260 | -- Found apache ant 1.8.2: /usr/bin/ant 261 | -- Found JNI: /usr/lib/jvm/java-7-oracle/jre/lib/i386/libjawt.so 262 | -- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS 263 | -- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS - Success 264 | -- 265 | -- General configuration for OpenCV 2.4.9 ===================================== 266 | -- Version control: 2.4.9-57-g0ebde64 267 | -- 268 | -- Platform: 269 | -- Host: Linux 3.11.0-15-generic i686 270 | -- CMake: 2.8.7 271 | -- CMake generator: Unix Makefiles 272 | -- CMake build tool: /usr/bin/make 273 | -- Configuration: Release 274 | -- 275 | -- C/C++: 276 | -- Built as dynamic libs?: NO 277 | -- C++ Compiler: /usr/bin/c++ (ver 4.6) 278 | -- C++ flags (Release): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -pthread -march=i686 -fomit-frame-pointer -msse -msse2 -msse3 -mfpmath=sse -ffunction-sections -O2 -DNDEBUG -DNDEBUG 279 | -- C++ flags (Debug): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -pthread -march=i686 -fomit-frame-pointer -msse -msse2 -msse3 -mfpmath=sse -ffunction-sections -g -O0 -DDEBUG -D_DEBUG 280 | -- C Compiler: /usr/bin/gcc 281 | -- C flags (Release): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -pthread -march=i686 -fomit-frame-pointer -msse -msse2 -msse3 -mfpmath=sse -ffunction-sections -O2 -DNDEBUG -DNDEBUG 282 | -- C flags (Debug): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -pthread -march=i686 -fomit-frame-pointer -msse -msse2 -msse3 -mfpmath=sse -ffunction-sections -g -O0 -DDEBUG -D_DEBUG 283 | -- Linker flags (Release): 284 | -- Linker flags (Debug): 285 | -- Precompiled headers: YES 286 | -- 287 | -- OpenCV modules: 288 | -- To be built: core flann imgproc highgui features2d calib3d ml video legacy objdetect photo gpu ocl nonfree contrib java stitching superres ts videostab 289 | -- Disabled: world 290 | -- Disabled by dependency: - 291 | -- Unavailable: androidcamera dynamicuda python viz 292 | -- 293 | -- GUI: 294 | -- QT: NO 295 | -- GTK+ 2.x: NO 296 | -- GThread : NO 297 | -- GtkGlExt: NO 298 | -- OpenGL support: NO 299 | -- VTK support: NO 300 | -- 301 | -- Media I/O: 302 | -- ZLib: zlib (ver 1.2.7) 303 | -- JPEG: libjpeg (ver 62) 304 | -- PNG: build (ver 1.5.12) 305 | -- TIFF: build (ver 42 - 4.0.2) 306 | -- JPEG 2000: build (ver 1.900.1) 307 | -- OpenEXR: build (ver 1.7.1) 308 | -- 309 | -- Video I/O: 310 | -- DC1394 1.x: NO 311 | -- DC1394 2.x: NO 312 | -- FFMPEG: NO 313 | -- codec: NO 314 | -- format: NO 315 | -- util: NO 316 | -- swscale: NO 317 | -- gentoo-style: NO 318 | -- GStreamer: NO 319 | -- OpenNI: NO 320 | -- OpenNI PrimeSensor Modules: NO 321 | -- PvAPI: NO 322 | -- GigEVisionSDK: NO 323 | -- UniCap: NO 324 | -- UniCap ucil: NO 325 | -- V4L/V4L2: NO/YES 326 | -- XIMEA: NO 327 | -- Xine: NO 328 | -- 329 | -- Other third-party libraries: 330 | -- Use IPP: NO 331 | -- Use Eigen: NO 332 | -- Use TBB: NO 333 | -- Use OpenMP: NO 334 | -- Use GCD NO 335 | -- Use Concurrency NO 336 | -- Use C=: NO 337 | -- Use Cuda: NO 338 | -- Use OpenCL: YES 339 | -- 340 | -- OpenCL: 341 | -- Version: dynamic 342 | -- Include path: /home/user/Projects/itseez-opencv/3rdparty/include/opencl/1.2 343 | -- Use AMD FFT: NO 344 | -- Use AMD BLAS: NO 345 | -- 346 | -- Python: 347 | -- Interpreter: /usr/bin/python (ver 2.7.3) 348 | -- 349 | -- Java: 350 | -- ant: /usr/bin/ant (ver 1.8.2) 351 | -- JNI: /usr/lib/jvm/java-7-oracle/include /usr/lib/jvm/java-7-oracle/include/linux /usr/lib/jvm/java-7-oracle/include 352 | -- Java tests: YES 353 | -- 354 | -- Documentation: 355 | -- Build Documentation: NO 356 | -- Sphinx: NO 357 | -- PdfLaTeX compiler: NO 358 | -- 359 | -- Tests and samples: 360 | -- Tests: YES 361 | -- Performance tests: YES 362 | -- C/C++ Examples: NO 363 | -- 364 | -- Install path: /usr/local 365 | -- 366 | -- cvconfig.h is in: /home/user/Projects/itseez-opencv/build 367 | -- ----------------------------------------------------------------- 368 | -- 369 | -- Configuring done 370 | -- Generating done 371 | -- Build files have been written to: /home/user/Projects/itseez-opencv/build 372 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/linux/x86_32/libopencv_java249.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/src/main/resources/nu/pattern/opencv/linux/x86_32/libopencv_java249.so -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/linux/x86_64/README.md: -------------------------------------------------------------------------------- 1 | # Linux x86_64 2 | 3 | ## Preparation 4 | 5 | ```shell 6 | cmake -DBUILD_SHARED_LIBS=OFF .. 7 | ``` 8 | 9 | ## Build 10 | 11 | ```shell 12 | make -j8 13 | ``` 14 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/linux/x86_64/cmake.log: -------------------------------------------------------------------------------- 1 | -- The CXX compiler identification is GNU 2 | -- The C compiler identification is GNU 3 | -- Check for working CXX compiler: /usr/bin/c++ 4 | -- Check for working CXX compiler: /usr/bin/c++ -- works 5 | -- Detecting CXX compiler ABI info 6 | -- Detecting CXX compiler ABI info - done 7 | -- Check for working C compiler: /usr/bin/gcc 8 | -- Check for working C compiler: /usr/bin/gcc -- works 9 | -- Detecting C compiler ABI info 10 | -- Detecting C compiler ABI info - done 11 | -- Detected version of GNU GCC: 46 (406) 12 | -- Performing Test HAVE_CXX_FSIGNED_CHAR 13 | -- Performing Test HAVE_CXX_FSIGNED_CHAR - Success 14 | -- Performing Test HAVE_C_FSIGNED_CHAR 15 | -- Performing Test HAVE_C_FSIGNED_CHAR - Success 16 | -- Performing Test HAVE_CXX_W 17 | -- Performing Test HAVE_CXX_W - Success 18 | -- Performing Test HAVE_C_W 19 | -- Performing Test HAVE_C_W - Success 20 | -- Performing Test HAVE_CXX_WALL 21 | -- Performing Test HAVE_CXX_WALL - Success 22 | -- Performing Test HAVE_C_WALL 23 | -- Performing Test HAVE_C_WALL - Success 24 | -- Performing Test HAVE_CXX_WERROR_RETURN_TYPE 25 | -- Performing Test HAVE_CXX_WERROR_RETURN_TYPE - Success 26 | -- Performing Test HAVE_C_WERROR_RETURN_TYPE 27 | -- Performing Test HAVE_C_WERROR_RETURN_TYPE - Success 28 | -- Performing Test HAVE_CXX_WERROR_ADDRESS 29 | -- Performing Test HAVE_CXX_WERROR_ADDRESS - Success 30 | -- Performing Test HAVE_C_WERROR_ADDRESS 31 | -- Performing Test HAVE_C_WERROR_ADDRESS - Success 32 | -- Performing Test HAVE_CXX_WERROR_SEQUENCE_POINT 33 | -- Performing Test HAVE_CXX_WERROR_SEQUENCE_POINT - Success 34 | -- Performing Test HAVE_C_WERROR_SEQUENCE_POINT 35 | -- Performing Test HAVE_C_WERROR_SEQUENCE_POINT - Success 36 | -- Performing Test HAVE_CXX_WFORMAT 37 | -- Performing Test HAVE_CXX_WFORMAT - Success 38 | -- Performing Test HAVE_C_WFORMAT 39 | -- Performing Test HAVE_C_WFORMAT - Success 40 | -- Performing Test HAVE_CXX_WERROR_FORMAT_SECURITY 41 | -- Performing Test HAVE_CXX_WERROR_FORMAT_SECURITY - Success 42 | -- Performing Test HAVE_C_WERROR_FORMAT_SECURITY 43 | -- Performing Test HAVE_C_WERROR_FORMAT_SECURITY - Success 44 | -- Performing Test HAVE_CXX_WMISSING_DECLARATIONS 45 | -- Performing Test HAVE_CXX_WMISSING_DECLARATIONS - Success 46 | -- Performing Test HAVE_C_WMISSING_DECLARATIONS 47 | -- Performing Test HAVE_C_WMISSING_DECLARATIONS - Success 48 | -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES 49 | -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES - Failed 50 | -- Performing Test HAVE_C_WMISSING_PROTOTYPES 51 | -- Performing Test HAVE_C_WMISSING_PROTOTYPES - Success 52 | -- Performing Test HAVE_CXX_WSTRICT_PROTOTYPES 53 | -- Performing Test HAVE_CXX_WSTRICT_PROTOTYPES - Failed 54 | -- Performing Test HAVE_C_WSTRICT_PROTOTYPES 55 | -- Performing Test HAVE_C_WSTRICT_PROTOTYPES - Success 56 | -- Performing Test HAVE_CXX_WUNDEF 57 | -- Performing Test HAVE_CXX_WUNDEF - Success 58 | -- Performing Test HAVE_C_WUNDEF 59 | -- Performing Test HAVE_C_WUNDEF - Success 60 | -- Performing Test HAVE_CXX_WINIT_SELF 61 | -- Performing Test HAVE_CXX_WINIT_SELF - Success 62 | -- Performing Test HAVE_C_WINIT_SELF 63 | -- Performing Test HAVE_C_WINIT_SELF - Success 64 | -- Performing Test HAVE_CXX_WPOINTER_ARITH 65 | -- Performing Test HAVE_CXX_WPOINTER_ARITH - Success 66 | -- Performing Test HAVE_C_WPOINTER_ARITH 67 | -- Performing Test HAVE_C_WPOINTER_ARITH - Success 68 | -- Performing Test HAVE_CXX_WSHADOW 69 | -- Performing Test HAVE_CXX_WSHADOW - Success 70 | -- Performing Test HAVE_C_WSHADOW 71 | -- Performing Test HAVE_C_WSHADOW - Success 72 | -- Performing Test HAVE_CXX_WSIGN_PROMO 73 | -- Performing Test HAVE_CXX_WSIGN_PROMO - Success 74 | -- Performing Test HAVE_C_WSIGN_PROMO 75 | -- Performing Test HAVE_C_WSIGN_PROMO - Failed 76 | -- Performing Test HAVE_CXX_WNO_NARROWING 77 | -- Performing Test HAVE_CXX_WNO_NARROWING - Failed 78 | -- Performing Test HAVE_C_WNO_NARROWING 79 | -- Performing Test HAVE_C_WNO_NARROWING - Failed 80 | -- Performing Test HAVE_CXX_WNO_DELETE_NON_VIRTUAL_DTOR 81 | -- Performing Test HAVE_CXX_WNO_DELETE_NON_VIRTUAL_DTOR - Failed 82 | -- Performing Test HAVE_C_WNO_DELETE_NON_VIRTUAL_DTOR 83 | -- Performing Test HAVE_C_WNO_DELETE_NON_VIRTUAL_DTOR - Failed 84 | -- Performing Test HAVE_CXX_WNO_UNNAMED_TYPE_TEMPLATE_ARGS 85 | -- Performing Test HAVE_CXX_WNO_UNNAMED_TYPE_TEMPLATE_ARGS - Failed 86 | -- Performing Test HAVE_C_WNO_UNNAMED_TYPE_TEMPLATE_ARGS 87 | -- Performing Test HAVE_C_WNO_UNNAMED_TYPE_TEMPLATE_ARGS - Failed 88 | -- Performing Test HAVE_CXX_FDIAGNOSTICS_SHOW_OPTION 89 | -- Performing Test HAVE_CXX_FDIAGNOSTICS_SHOW_OPTION - Success 90 | -- Performing Test HAVE_C_FDIAGNOSTICS_SHOW_OPTION 91 | -- Performing Test HAVE_C_FDIAGNOSTICS_SHOW_OPTION - Success 92 | -- Performing Test HAVE_CXX_WNO_LONG_LONG 93 | -- Performing Test HAVE_CXX_WNO_LONG_LONG - Success 94 | -- Performing Test HAVE_C_WNO_LONG_LONG 95 | -- Performing Test HAVE_C_WNO_LONG_LONG - Success 96 | -- Performing Test HAVE_CXX_PTHREAD 97 | -- Performing Test HAVE_CXX_PTHREAD - Success 98 | -- Performing Test HAVE_C_PTHREAD 99 | -- Performing Test HAVE_C_PTHREAD - Success 100 | -- Performing Test HAVE_CXX_FOMIT_FRAME_POINTER 101 | -- Performing Test HAVE_CXX_FOMIT_FRAME_POINTER - Success 102 | -- Performing Test HAVE_C_FOMIT_FRAME_POINTER 103 | -- Performing Test HAVE_C_FOMIT_FRAME_POINTER - Success 104 | -- Performing Test HAVE_CXX_MSSE 105 | -- Performing Test HAVE_CXX_MSSE - Success 106 | -- Performing Test HAVE_C_MSSE 107 | -- Performing Test HAVE_C_MSSE - Success 108 | -- Performing Test HAVE_CXX_MSSE2 109 | -- Performing Test HAVE_CXX_MSSE2 - Success 110 | -- Performing Test HAVE_C_MSSE2 111 | -- Performing Test HAVE_C_MSSE2 - Success 112 | -- Performing Test HAVE_CXX_MSSE3 113 | -- Performing Test HAVE_CXX_MSSE3 - Success 114 | -- Performing Test HAVE_C_MSSE3 115 | -- Performing Test HAVE_C_MSSE3 - Success 116 | -- Performing Test HAVE_CXX_FFUNCTION_SECTIONS 117 | -- Performing Test HAVE_CXX_FFUNCTION_SECTIONS - Success 118 | -- Performing Test HAVE_C_FFUNCTION_SECTIONS 119 | -- Performing Test HAVE_C_FFUNCTION_SECTIONS - Success 120 | -- Looking for pthread.h 121 | -- Looking for pthread.h - found 122 | -- Check if the system is big endian 123 | -- Searching 16 bit integer 124 | -- Looking for sys/types.h 125 | -- Looking for sys/types.h - found 126 | -- Looking for stdint.h 127 | -- Looking for stdint.h - found 128 | -- Looking for stddef.h 129 | -- Looking for stddef.h - found 130 | -- Check size of unsigned short 131 | -- Check size of unsigned short - done 132 | -- Using unsigned short 133 | -- Check if the system is big endian - little endian 134 | -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) 135 | -- Looking for fseeko 136 | -- Looking for fseeko - found 137 | -- Looking for unistd.h 138 | -- Looking for unistd.h - found 139 | -- Check size of off64_t 140 | -- Check size of off64_t - failed 141 | -- Performing Test HAVE_C_WNO_ATTRIBUTES 142 | -- Performing Test HAVE_C_WNO_ATTRIBUTES - Success 143 | -- Performing Test HAVE_C_WNO_STRICT_PROTOTYPES 144 | -- Performing Test HAVE_C_WNO_STRICT_PROTOTYPES - Success 145 | -- Performing Test HAVE_C_WNO_MISSING_PROTOTYPES 146 | -- Performing Test HAVE_C_WNO_MISSING_PROTOTYPES - Success 147 | -- Performing Test HAVE_C_WNO_MISSING_DECLARATIONS 148 | -- Performing Test HAVE_C_WNO_MISSING_DECLARATIONS - Success 149 | -- Could NOT find TIFF (missing: TIFF_LIBRARY TIFF_INCLUDE_DIR) 150 | -- Looking for assert.h 151 | -- Looking for assert.h - found 152 | -- Looking for fcntl.h 153 | -- Looking for fcntl.h - found 154 | -- Looking for io.h 155 | -- Looking for io.h - not found 156 | -- Looking for jbg_newlen 157 | -- Looking for jbg_newlen - not found 158 | -- Looking for mmap 159 | -- Looking for mmap - found 160 | -- Looking for search.h 161 | -- Looking for search.h - found 162 | -- Looking for string.h 163 | -- Looking for string.h - found 164 | -- Looking for unistd.h 165 | -- Looking for unistd.h - found 166 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_VARIABLE 167 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_VARIABLE - Success 168 | -- Performing Test HAVE_C_WNO_UNDEF 169 | -- Performing Test HAVE_C_WNO_UNDEF - Success 170 | -- Performing Test HAVE_C_WNO_UNUSED 171 | -- Performing Test HAVE_C_WNO_UNUSED - Success 172 | -- Performing Test HAVE_C_WNO_SIGN_COMPARE 173 | -- Performing Test HAVE_C_WNO_SIGN_COMPARE - Success 174 | -- Performing Test HAVE_C_WNO_CAST_ALIGN 175 | -- Performing Test HAVE_C_WNO_CAST_ALIGN - Success 176 | -- Performing Test HAVE_C_WNO_SHADOW 177 | -- Performing Test HAVE_C_WNO_SHADOW - Success 178 | -- Performing Test HAVE_C_WNO_MAYBE_UNINITIALIZED 179 | -- Performing Test HAVE_C_WNO_MAYBE_UNINITIALIZED - Failed 180 | -- Performing Test HAVE_C_WNO_POINTER_TO_INT_CAST 181 | -- Performing Test HAVE_C_WNO_POINTER_TO_INT_CAST - Success 182 | -- Performing Test HAVE_C_WNO_INT_TO_POINTER_CAST 183 | -- Performing Test HAVE_C_WNO_INT_TO_POINTER_CAST - Success 184 | -- Performing Test HAVE_C_WNO_UNUSED_PARAMETER 185 | -- Performing Test HAVE_C_WNO_UNUSED_PARAMETER - Success 186 | -- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS 187 | -- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS - Success 188 | -- Performing Test HAVE_CXX_WNO_UNUSED_PARAMETER 189 | -- Performing Test HAVE_CXX_WNO_UNUSED_PARAMETER - Success 190 | -- Could NOT find JPEG (missing: JPEG_LIBRARY JPEG_INCLUDE_DIR) 191 | -- Found JPEG: libjpeg 192 | -- Could NOT find Jasper (missing: JASPER_LIBRARY JASPER_INCLUDE_DIR) 193 | -- Performing Test HAVE_C_WNO_IMPLICIT_FUNCTION_DECLARATION 194 | -- Performing Test HAVE_C_WNO_IMPLICIT_FUNCTION_DECLARATION - Success 195 | -- Performing Test HAVE_C_WNO_UNINITIALIZED 196 | -- Performing Test HAVE_C_WNO_UNINITIALIZED - Success 197 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_PARAMETER 198 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_PARAMETER - Success 199 | -- Found ZLIB: zlib (found version "1.2.7") 200 | -- Could NOT find PNG (missing: PNG_LIBRARY PNG_PNG_INCLUDE_DIR) 201 | -- Looking for semaphore.h 202 | -- Looking for semaphore.h - found 203 | -- Performing Test HAVE_CXX_WNO_SHADOW 204 | -- Performing Test HAVE_CXX_WNO_SHADOW - Success 205 | -- Performing Test HAVE_CXX_WNO_UNUSED 206 | -- Performing Test HAVE_CXX_WNO_UNUSED - Success 207 | -- Performing Test HAVE_CXX_WNO_SIGN_COMPARE 208 | -- Performing Test HAVE_CXX_WNO_SIGN_COMPARE - Success 209 | -- Performing Test HAVE_CXX_WNO_UNDEF 210 | -- Performing Test HAVE_CXX_WNO_UNDEF - Success 211 | -- Performing Test HAVE_CXX_WNO_UNINITIALIZED 212 | -- Performing Test HAVE_CXX_WNO_UNINITIALIZED - Success 213 | -- Performing Test HAVE_CXX_WNO_SWITCH 214 | -- Performing Test HAVE_CXX_WNO_SWITCH - Success 215 | -- Performing Test HAVE_CXX_WNO_PARENTHESES 216 | -- Performing Test HAVE_CXX_WNO_PARENTHESES - Success 217 | -- Performing Test HAVE_CXX_WNO_ARRAY_BOUNDS 218 | -- Performing Test HAVE_CXX_WNO_ARRAY_BOUNDS - Success 219 | -- Performing Test HAVE_CXX_WNO_EXTRA 220 | -- Performing Test HAVE_CXX_WNO_EXTRA - Success 221 | -- checking for module 'gtk+-2.0' 222 | -- package 'gtk+-2.0' not found 223 | -- checking for module 'gthread-2.0' 224 | -- package 'gthread-2.0' not found 225 | -- checking for module 'gstreamer-base-0.10' 226 | -- package 'gstreamer-base-0.10' not found 227 | -- checking for module 'libdc1394-2' 228 | -- package 'libdc1394-2' not found 229 | -- checking for module 'libdc1394' 230 | -- package 'libdc1394' not found 231 | -- checking for module 'libv4l1' 232 | -- package 'libv4l1' not found 233 | -- Looking for linux/videodev.h 234 | -- Looking for linux/videodev.h - not found 235 | -- Looking for linux/videodev2.h 236 | -- Looking for linux/videodev2.h - found 237 | -- Looking for sys/videoio.h 238 | -- Looking for sys/videoio.h - not found 239 | -- checking for module 'libavcodec' 240 | -- package 'libavcodec' not found 241 | -- checking for module 'libavformat' 242 | -- package 'libavformat' not found 243 | -- checking for module 'libavutil' 244 | -- package 'libavutil' not found 245 | -- checking for module 'libswscale' 246 | -- package 'libswscale' not found 247 | -- Looking for libavformat/avformat.h 248 | -- Looking for libavformat/avformat.h - not found 249 | -- Looking for ffmpeg/avformat.h 250 | -- Looking for ffmpeg/avformat.h - not found 251 | -- Found PythonInterp: /usr/bin/python (found suitable version "2.7.3", required is "2.0") 252 | -- Could NOT find PythonLibs (missing: PYTHON_INCLUDE_DIRS) (Required is at least version "2.7.3") 253 | Traceback (most recent call last): 254 | File "", line 1, in 255 | ImportError: No module named numpy.distutils 256 | -- Found apache ant 1.8.2: /usr/bin/ant 257 | -- Found JNI: /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libjawt.so 258 | -- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS 259 | -- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS - Success 260 | -- 261 | -- General configuration for OpenCV 2.4.9 ===================================== 262 | -- Version control: 2.4.9-57-g0ebde64 263 | -- 264 | -- Platform: 265 | -- Host: Linux 3.11.0-15-generic x86_64 266 | -- CMake: 2.8.7 267 | -- CMake generator: Unix Makefiles 268 | -- CMake build tool: /usr/bin/make 269 | -- Configuration: Release 270 | -- 271 | -- C/C++: 272 | -- Built as dynamic libs?: NO 273 | -- C++ Compiler: /usr/bin/c++ (ver 4.6) 274 | -- C++ flags (Release): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -O3 -DNDEBUG -DNDEBUG 275 | -- C++ flags (Debug): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -g -O0 -DDEBUG -D_DEBUG 276 | -- C Compiler: /usr/bin/gcc 277 | -- C flags (Release): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -O3 -DNDEBUG -DNDEBUG 278 | -- C flags (Debug): -fPIC -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -g -O0 -DDEBUG -D_DEBUG 279 | -- Linker flags (Release): 280 | -- Linker flags (Debug): 281 | -- Precompiled headers: YES 282 | -- 283 | -- OpenCV modules: 284 | -- To be built: core flann imgproc highgui features2d calib3d ml video legacy objdetect photo gpu ocl nonfree contrib java stitching superres ts videostab 285 | -- Disabled: world 286 | -- Disabled by dependency: - 287 | -- Unavailable: androidcamera dynamicuda python viz 288 | -- 289 | -- GUI: 290 | -- QT: NO 291 | -- GTK+ 2.x: NO 292 | -- GThread : NO 293 | -- GtkGlExt: NO 294 | -- OpenGL support: NO 295 | -- VTK support: NO 296 | -- 297 | -- Media I/O: 298 | -- ZLib: zlib (ver 1.2.7) 299 | -- JPEG: libjpeg (ver 62) 300 | -- PNG: build (ver 1.5.12) 301 | -- TIFF: build (ver 42 - 4.0.2) 302 | -- JPEG 2000: build (ver 1.900.1) 303 | -- OpenEXR: build (ver 1.7.1) 304 | -- 305 | -- Video I/O: 306 | -- DC1394 1.x: NO 307 | -- DC1394 2.x: NO 308 | -- FFMPEG: NO 309 | -- codec: NO 310 | -- format: NO 311 | -- util: NO 312 | -- swscale: NO 313 | -- gentoo-style: NO 314 | -- GStreamer: NO 315 | -- OpenNI: NO 316 | -- OpenNI PrimeSensor Modules: NO 317 | -- PvAPI: NO 318 | -- GigEVisionSDK: NO 319 | -- UniCap: NO 320 | -- UniCap ucil: NO 321 | -- V4L/V4L2: NO/YES 322 | -- XIMEA: NO 323 | -- Xine: NO 324 | -- 325 | -- Other third-party libraries: 326 | -- Use IPP: NO 327 | -- Use Eigen: NO 328 | -- Use TBB: NO 329 | -- Use OpenMP: NO 330 | -- Use GCD NO 331 | -- Use Concurrency NO 332 | -- Use C=: NO 333 | -- Use Cuda: NO 334 | -- Use OpenCL: YES 335 | -- 336 | -- OpenCL: 337 | -- Version: dynamic 338 | -- Include path: /home/user/Projects/itseez-opencv/3rdparty/include/opencl/1.2 339 | -- Use AMD FFT: NO 340 | -- Use AMD BLAS: NO 341 | -- 342 | -- Python: 343 | -- Interpreter: /usr/bin/python (ver 2.7.3) 344 | -- 345 | -- Java: 346 | -- ant: /usr/bin/ant (ver 1.8.2) 347 | -- JNI: /usr/lib/jvm/java-7-oracle/include /usr/lib/jvm/java-7-oracle/include/linux /usr/lib/jvm/java-7-oracle/include 348 | -- Java tests: YES 349 | -- 350 | -- Documentation: 351 | -- Build Documentation: NO 352 | -- Sphinx: NO 353 | -- PdfLaTeX compiler: NO 354 | -- 355 | -- Tests and samples: 356 | -- Tests: YES 357 | -- Performance tests: YES 358 | -- C/C++ Examples: NO 359 | -- 360 | -- Install path: /usr/local 361 | -- 362 | -- cvconfig.h is in: /home/user/Projects/itseez-opencv/build 363 | -- ----------------------------------------------------------------- 364 | -- 365 | -- Configuring done 366 | -- Generating done 367 | -- Build files have been written to: /home/user/Projects/itseez-opencv/build 368 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/linux/x86_64/libopencv_java249.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/src/main/resources/nu/pattern/opencv/linux/x86_64/libopencv_java249.so -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/osx/x86_32/README.md: -------------------------------------------------------------------------------- 1 | # OS X x86_32 2 | 3 | ```shell 4 | git clone git://github.com/Itseez/opencv.git itseez-opencv 5 | cd itseez-opencv 6 | git checkout 2.4 7 | mkdir build 8 | cd build 9 | cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_OSX_ARCHITECTURES=i386 -DCMAKE_C_FLAGS=-m32 -DCMAKE_CXX_FLAGS=-m32 .. > cmake.log 10 | make -j8 11 | ``` 12 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/osx/x86_32/cmake.log: -------------------------------------------------------------------------------- 1 | -- The CXX compiler identification is Clang 4.2.0 2 | -- The C compiler identification is Clang 4.2.0 3 | -- Check for working CXX compiler: /usr/bin/c++ 4 | -- Check for working CXX compiler: /usr/bin/c++ -- works 5 | -- Detecting CXX compiler ABI info 6 | -- Detecting CXX compiler ABI info - done 7 | -- Check for working C compiler: /usr/bin/cc 8 | -- Check for working C compiler: /usr/bin/cc -- works 9 | -- Detecting C compiler ABI info 10 | -- Detecting C compiler ABI info - done 11 | -- Performing Test HAVE_CXX_FSIGNED_CHAR 12 | -- Performing Test HAVE_CXX_FSIGNED_CHAR - Success 13 | -- Performing Test HAVE_C_FSIGNED_CHAR 14 | -- Performing Test HAVE_C_FSIGNED_CHAR - Success 15 | -- Performing Test HAVE_CXX_W 16 | -- Performing Test HAVE_CXX_W - Success 17 | -- Performing Test HAVE_C_W 18 | -- Performing Test HAVE_C_W - Success 19 | -- Performing Test HAVE_CXX_WALL 20 | -- Performing Test HAVE_CXX_WALL - Failed 21 | -- Performing Test HAVE_C_WALL 22 | -- Performing Test HAVE_C_WALL - Failed 23 | -- Performing Test HAVE_CXX_WERROR_RETURN_TYPE 24 | -- Performing Test HAVE_CXX_WERROR_RETURN_TYPE - Success 25 | -- Performing Test HAVE_C_WERROR_RETURN_TYPE 26 | -- Performing Test HAVE_C_WERROR_RETURN_TYPE - Success 27 | -- Performing Test HAVE_CXX_WERROR_ADDRESS 28 | -- Performing Test HAVE_CXX_WERROR_ADDRESS - Success 29 | -- Performing Test HAVE_C_WERROR_ADDRESS 30 | -- Performing Test HAVE_C_WERROR_ADDRESS - Success 31 | -- Performing Test HAVE_CXX_WERROR_SEQUENCE_POINT 32 | -- Performing Test HAVE_CXX_WERROR_SEQUENCE_POINT - Success 33 | -- Performing Test HAVE_C_WERROR_SEQUENCE_POINT 34 | -- Performing Test HAVE_C_WERROR_SEQUENCE_POINT - Success 35 | -- Performing Test HAVE_CXX_WFORMAT 36 | -- Performing Test HAVE_CXX_WFORMAT - Success 37 | -- Performing Test HAVE_C_WFORMAT 38 | -- Performing Test HAVE_C_WFORMAT - Success 39 | -- Performing Test HAVE_CXX_WERROR_FORMAT_SECURITY 40 | -- Performing Test HAVE_CXX_WERROR_FORMAT_SECURITY - Success 41 | -- Performing Test HAVE_C_WERROR_FORMAT_SECURITY 42 | -- Performing Test HAVE_C_WERROR_FORMAT_SECURITY - Success 43 | -- Performing Test HAVE_CXX_WMISSING_DECLARATIONS 44 | -- Performing Test HAVE_CXX_WMISSING_DECLARATIONS - Success 45 | -- Performing Test HAVE_C_WMISSING_DECLARATIONS 46 | -- Performing Test HAVE_C_WMISSING_DECLARATIONS - Success 47 | -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES 48 | -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES - Success 49 | -- Performing Test HAVE_C_WMISSING_PROTOTYPES 50 | -- Performing Test HAVE_C_WMISSING_PROTOTYPES - Success 51 | -- Performing Test HAVE_CXX_WSTRICT_PROTOTYPES 52 | -- Performing Test HAVE_CXX_WSTRICT_PROTOTYPES - Success 53 | -- Performing Test HAVE_C_WSTRICT_PROTOTYPES 54 | -- Performing Test HAVE_C_WSTRICT_PROTOTYPES - Success 55 | -- Performing Test HAVE_CXX_WUNDEF 56 | -- Performing Test HAVE_CXX_WUNDEF - Success 57 | -- Performing Test HAVE_C_WUNDEF 58 | -- Performing Test HAVE_C_WUNDEF - Success 59 | -- Performing Test HAVE_CXX_WINIT_SELF 60 | -- Performing Test HAVE_CXX_WINIT_SELF - Success 61 | -- Performing Test HAVE_C_WINIT_SELF 62 | -- Performing Test HAVE_C_WINIT_SELF - Success 63 | -- Performing Test HAVE_CXX_WPOINTER_ARITH 64 | -- Performing Test HAVE_CXX_WPOINTER_ARITH - Success 65 | -- Performing Test HAVE_C_WPOINTER_ARITH 66 | -- Performing Test HAVE_C_WPOINTER_ARITH - Success 67 | -- Performing Test HAVE_CXX_WSHADOW 68 | -- Performing Test HAVE_CXX_WSHADOW - Success 69 | -- Performing Test HAVE_C_WSHADOW 70 | -- Performing Test HAVE_C_WSHADOW - Success 71 | -- Performing Test HAVE_CXX_WSIGN_PROMO 72 | -- Performing Test HAVE_CXX_WSIGN_PROMO - Success 73 | -- Performing Test HAVE_C_WSIGN_PROMO 74 | -- Performing Test HAVE_C_WSIGN_PROMO - Success 75 | -- Performing Test HAVE_CXX_WNO_NARROWING 76 | -- Performing Test HAVE_CXX_WNO_NARROWING - Success 77 | -- Performing Test HAVE_C_WNO_NARROWING 78 | -- Performing Test HAVE_C_WNO_NARROWING - Success 79 | -- Performing Test HAVE_CXX_WNO_DELETE_NON_VIRTUAL_DTOR 80 | -- Performing Test HAVE_CXX_WNO_DELETE_NON_VIRTUAL_DTOR - Success 81 | -- Performing Test HAVE_C_WNO_DELETE_NON_VIRTUAL_DTOR 82 | -- Performing Test HAVE_C_WNO_DELETE_NON_VIRTUAL_DTOR - Success 83 | -- Performing Test HAVE_CXX_WNO_UNNAMED_TYPE_TEMPLATE_ARGS 84 | -- Performing Test HAVE_CXX_WNO_UNNAMED_TYPE_TEMPLATE_ARGS - Success 85 | -- Performing Test HAVE_C_WNO_UNNAMED_TYPE_TEMPLATE_ARGS 86 | -- Performing Test HAVE_C_WNO_UNNAMED_TYPE_TEMPLATE_ARGS - Success 87 | -- Performing Test HAVE_CXX_FDIAGNOSTICS_SHOW_OPTION 88 | -- Performing Test HAVE_CXX_FDIAGNOSTICS_SHOW_OPTION - Success 89 | -- Performing Test HAVE_C_FDIAGNOSTICS_SHOW_OPTION 90 | -- Performing Test HAVE_C_FDIAGNOSTICS_SHOW_OPTION - Success 91 | -- Performing Test HAVE_CXX_FNO_OMIT_FRAME_POINTER 92 | -- Performing Test HAVE_CXX_FNO_OMIT_FRAME_POINTER - Success 93 | -- Performing Test HAVE_C_FNO_OMIT_FRAME_POINTER 94 | -- Performing Test HAVE_C_FNO_OMIT_FRAME_POINTER - Success 95 | -- Performing Test HAVE_CXX_MSSE 96 | -- Performing Test HAVE_CXX_MSSE - Success 97 | -- Performing Test HAVE_C_MSSE 98 | -- Performing Test HAVE_C_MSSE - Success 99 | -- Performing Test HAVE_CXX_MSSE2 100 | -- Performing Test HAVE_CXX_MSSE2 - Success 101 | -- Performing Test HAVE_C_MSSE2 102 | -- Performing Test HAVE_C_MSSE2 - Success 103 | -- Performing Test HAVE_CXX_MSSE3 104 | -- Performing Test HAVE_CXX_MSSE3 - Success 105 | -- Performing Test HAVE_C_MSSE3 106 | -- Performing Test HAVE_C_MSSE3 - Success 107 | -- Check if the system is big endian 108 | -- Searching 16 bit integer 109 | -- Looking for sys/types.h 110 | -- Looking for sys/types.h - found 111 | -- Looking for stdint.h 112 | -- Looking for stdint.h - found 113 | -- Looking for stddef.h 114 | -- Looking for stddef.h - found 115 | -- Check size of unsigned short 116 | -- Check size of unsigned short - done 117 | -- Using unsigned short 118 | -- Check if the system is big endian - little endian 119 | -- Looking for fseeko 120 | -- Looking for fseeko - found 121 | -- Looking for unistd.h 122 | -- Looking for unistd.h - found 123 | -- Check size of off64_t 124 | -- Check size of off64_t - failed 125 | -- Performing Test HAVE_C_WNO_ATTRIBUTES 126 | -- Performing Test HAVE_C_WNO_ATTRIBUTES - Success 127 | -- Performing Test HAVE_C_WNO_STRICT_PROTOTYPES 128 | -- Performing Test HAVE_C_WNO_STRICT_PROTOTYPES - Success 129 | -- Performing Test HAVE_C_WNO_MISSING_PROTOTYPES 130 | -- Performing Test HAVE_C_WNO_MISSING_PROTOTYPES - Success 131 | -- Performing Test HAVE_C_WNO_MISSING_DECLARATIONS 132 | -- Performing Test HAVE_C_WNO_MISSING_DECLARATIONS - Success 133 | -- Looking for assert.h 134 | -- Looking for assert.h - found 135 | -- Looking for fcntl.h 136 | -- Looking for fcntl.h - found 137 | -- Looking for io.h 138 | -- Looking for io.h - not found 139 | -- Looking for jbg_newlen 140 | -- Looking for jbg_newlen - not found 141 | -- Looking for mmap 142 | -- Looking for mmap - found 143 | -- Looking for search.h 144 | -- Looking for search.h - found 145 | -- Looking for string.h 146 | -- Looking for string.h - found 147 | -- Looking for unistd.h 148 | -- Looking for unistd.h - found 149 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_VARIABLE 150 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_VARIABLE - Failed 151 | -- Performing Test HAVE_C_WNO_UNDEF 152 | -- Performing Test HAVE_C_WNO_UNDEF - Success 153 | -- Performing Test HAVE_C_WNO_UNUSED 154 | -- Performing Test HAVE_C_WNO_UNUSED - Success 155 | -- Performing Test HAVE_C_WNO_SIGN_COMPARE 156 | -- Performing Test HAVE_C_WNO_SIGN_COMPARE - Success 157 | -- Performing Test HAVE_C_WNO_CAST_ALIGN 158 | -- Performing Test HAVE_C_WNO_CAST_ALIGN - Success 159 | -- Performing Test HAVE_C_WNO_SHADOW 160 | -- Performing Test HAVE_C_WNO_SHADOW - Success 161 | -- Performing Test HAVE_C_WNO_MAYBE_UNINITIALIZED 162 | -- Performing Test HAVE_C_WNO_MAYBE_UNINITIALIZED - Failed 163 | -- Performing Test HAVE_C_WNO_POINTER_TO_INT_CAST 164 | -- Performing Test HAVE_C_WNO_POINTER_TO_INT_CAST - Success 165 | -- Performing Test HAVE_C_WNO_INT_TO_POINTER_CAST 166 | -- Performing Test HAVE_C_WNO_INT_TO_POINTER_CAST - Success 167 | -- Performing Test HAVE_C_WNO_UNUSED_PARAMETER 168 | -- Performing Test HAVE_C_WNO_UNUSED_PARAMETER - Success 169 | -- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS 170 | -- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS - Success 171 | -- Performing Test HAVE_CXX_WNO_UNUSED_PARAMETER 172 | -- Performing Test HAVE_CXX_WNO_UNUSED_PARAMETER - Success 173 | -- Performing Test HAVE_C_WNO_IMPLICIT_FUNCTION_DECLARATION 174 | -- Performing Test HAVE_C_WNO_IMPLICIT_FUNCTION_DECLARATION - Success 175 | -- Performing Test HAVE_C_WNO_UNINITIALIZED 176 | -- Performing Test HAVE_C_WNO_UNINITIALIZED - Success 177 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_PARAMETER 178 | -- Performing Test HAVE_C_WNO_UNUSED_BUT_SET_PARAMETER - Failed 179 | -- Looking for semaphore.h 180 | -- Looking for semaphore.h - found 181 | -- Performing Test HAVE_CXX_WNO_SHADOW 182 | -- Performing Test HAVE_CXX_WNO_SHADOW - Success 183 | -- Performing Test HAVE_CXX_WNO_UNUSED 184 | -- Performing Test HAVE_CXX_WNO_UNUSED - Success 185 | -- Performing Test HAVE_CXX_WNO_SIGN_COMPARE 186 | -- Performing Test HAVE_CXX_WNO_SIGN_COMPARE - Success 187 | -- Performing Test HAVE_CXX_WNO_UNDEF 188 | -- Performing Test HAVE_CXX_WNO_UNDEF - Success 189 | -- Performing Test HAVE_CXX_WNO_UNINITIALIZED 190 | -- Performing Test HAVE_CXX_WNO_UNINITIALIZED - Success 191 | -- Performing Test HAVE_CXX_WNO_SWITCH 192 | -- Performing Test HAVE_CXX_WNO_SWITCH - Success 193 | -- Performing Test HAVE_CXX_WNO_PARENTHESES 194 | -- Performing Test HAVE_CXX_WNO_PARENTHESES - Success 195 | -- Performing Test HAVE_CXX_WNO_ARRAY_BOUNDS 196 | -- Performing Test HAVE_CXX_WNO_ARRAY_BOUNDS - Success 197 | -- Performing Test HAVE_CXX_WNO_EXTRA 198 | -- Performing Test HAVE_CXX_WNO_EXTRA - Success 199 | -- Looking for linux/videodev.h 200 | -- Looking for linux/videodev.h - not found 201 | -- Looking for linux/videodev2.h 202 | -- Looking for linux/videodev2.h - not found 203 | -- Looking for sys/videoio.h 204 | -- Looking for sys/videoio.h - not found 205 | -- Looking for libavformat/avformat.h 206 | -- Looking for libavformat/avformat.h - not found 207 | -- Looking for ffmpeg/avformat.h 208 | -- Looking for ffmpeg/avformat.h - not found 209 | -- Found PythonInterp: /usr/bin/python (found suitable version "2.7.1", minimum required is "2.0") 210 | -- Found PythonLibs: /usr/lib/libpython2.7.dylib (found suitable exact version "2.7.1") 211 | -- Found apache ant 1.8.2: /usr/bin/ant 212 | -- Found JNI: -framework JavaVM 213 | -- Assume that non-module dependency is available: -framework OpenCL (for module opencv_ocl) 214 | -- Performing Test HAVE_OBJCXX_FOBJC_EXCEPTIONS 215 | -- Performing Test HAVE_OBJCXX_FOBJC_EXCEPTIONS - Success 216 | -- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS 217 | -- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS - Success 218 | -- 219 | -- General configuration for OpenCV 2.4.9 ===================================== 220 | -- Version control: 2.4.9-59-gc9cb480 221 | -- 222 | -- Platform: 223 | -- Host: Darwin 11.4.2 i386 224 | -- CMake: 2.8.12.2 225 | -- CMake generator: Unix Makefiles 226 | -- CMake build tool: /usr/bin/make 227 | -- Configuration: Release 228 | -- 229 | -- C/C++: 230 | -- Built as dynamic libs?: NO 231 | -- C++ Compiler: /usr/bin/c++ (ver 4.2.0) 232 | -- C++ flags (Release): -m32 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -O3 -DNDEBUG -DNDEBUG 233 | -- C++ flags (Debug): -m32 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -g -O0 -DDEBUG -D_DEBUG 234 | -- C Compiler: /usr/bin/cc 235 | -- C flags (Release): -m32 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -O3 -DNDEBUG -DNDEBUG 236 | -- C flags (Debug): -m32 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -g -O0 -DDEBUG -D_DEBUG 237 | -- Linker flags (Release): 238 | -- Linker flags (Debug): 239 | -- Precompiled headers: NO 240 | -- 241 | -- OpenCV modules: 242 | -- To be built: core flann imgproc highgui features2d calib3d ml video legacy objdetect photo gpu ocl nonfree contrib java python stitching superres ts videostab 243 | -- Disabled: world 244 | -- Disabled by dependency: - 245 | -- Unavailable: androidcamera dynamicuda viz 246 | -- 247 | -- GUI: 248 | -- QT: NO 249 | -- Cocoa: YES 250 | -- OpenGL support: NO 251 | -- VTK support: NO 252 | -- 253 | -- Media I/O: 254 | -- ZLib: build (ver 1.2.7) 255 | -- JPEG: build (ver 62) 256 | -- PNG: build (ver 1.5.12) 257 | -- TIFF: build (ver 42 - 4.0.2) 258 | -- JPEG 2000: build (ver 1.900.1) 259 | -- OpenEXR: build (ver 1.7.1) 260 | -- 261 | -- Video I/O: 262 | -- DC1394 1.x: NO 263 | -- DC1394 2.x: NO 264 | -- FFMPEG: NO 265 | -- codec: NO 266 | -- format: NO 267 | -- util: NO 268 | -- swscale: NO 269 | -- gentoo-style: NO 270 | -- OpenNI: NO 271 | -- OpenNI PrimeSensor Modules: NO 272 | -- PvAPI: NO 273 | -- GigEVisionSDK: NO 274 | -- QuickTime: NO 275 | -- QTKit: YES 276 | -- V4L/V4L2: NO/NO 277 | -- 278 | -- Other third-party libraries: 279 | -- Use IPP: NO 280 | -- Use Eigen: NO 281 | -- Use TBB: NO 282 | -- Use OpenMP: NO 283 | -- Use GCD YES 284 | -- Use Concurrency NO 285 | -- Use C=: NO 286 | -- Use Cuda: NO 287 | -- Use OpenCL: YES 288 | -- 289 | -- OpenCL: 290 | -- Version: static 291 | -- libraries: -framework OpenCL 292 | -- Use AMD FFT: NO 293 | -- Use AMD BLAS: NO 294 | -- 295 | -- Python: 296 | -- Interpreter: /usr/bin/python (ver 2.7.1) 297 | -- Libraries: /usr/lib/libpython2.7.dylib (ver 2.7.1) 298 | -- numpy: /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/include (ver 1.5.1) 299 | -- packages path: lib/python2.7/site-packages 300 | -- 301 | -- Java: 302 | -- ant: /usr/bin/ant (ver 1.8.2) 303 | -- JNI: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/JavaVM.framework/Headers /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/JavaVM.framework/Headers /System/Library/Frameworks/JavaVM.framework/Headers 304 | -- Java tests: YES 305 | -- 306 | -- Documentation: 307 | -- Build Documentation: NO 308 | -- Sphinx: NO 309 | -- PdfLaTeX compiler: NO 310 | -- 311 | -- Tests and samples: 312 | -- Tests: YES 313 | -- Performance tests: YES 314 | -- C/C++ Examples: NO 315 | -- 316 | -- Install path: /usr/local 317 | -- 318 | -- cvconfig.h is in: /Users/user/Projects/itseez-opencv/build 319 | -- ----------------------------------------------------------------- 320 | -- 321 | -- Configuring done 322 | -- Generating done 323 | -- Build files have been written to: /Users/user/Projects/itseez-opencv/build 324 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/osx/x86_32/libopencv_java249.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/src/main/resources/nu/pattern/opencv/osx/x86_32/libopencv_java249.dylib -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/osx/x86_64/README.md: -------------------------------------------------------------------------------- 1 | # OS X x86_64 2 | 3 | ```shell 4 | git clone git://github.com/Itseez/opencv.git itseez-opencv 5 | cd itseez-opencv 6 | git checkout 2.4 7 | mkdir build 8 | cd build 9 | cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_FLAGS=-m64 .. > cmake.log 10 | make -j8 11 | ``` 12 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/osx/x86_64/cmake.log: -------------------------------------------------------------------------------- 1 | -- Looking for linux/videodev.h 2 | -- Looking for linux/videodev.h - not found 3 | -- Looking for linux/videodev2.h 4 | -- Looking for linux/videodev2.h - not found 5 | -- Looking for sys/videoio.h 6 | -- Looking for sys/videoio.h - not found 7 | -- Looking for libavformat/avformat.h 8 | -- Looking for libavformat/avformat.h - not found 9 | -- Looking for ffmpeg/avformat.h 10 | -- Looking for ffmpeg/avformat.h - not found 11 | -- Found apache ant 1.8.2: /usr/bin/ant 12 | -- Assume that non-module dependency is available: -framework OpenCL (for module opencv_ocl) 13 | -- 14 | -- General configuration for OpenCV 2.4.9 ===================================== 15 | -- Version control: 2.4.9-59-gc9cb480 16 | -- 17 | -- Platform: 18 | -- Host: Darwin 11.4.2 i386 19 | -- CMake: 2.8.12.2 20 | -- CMake generator: Unix Makefiles 21 | -- CMake build tool: /usr/bin/make 22 | -- Configuration: Release 23 | -- 24 | -- C/C++: 25 | -- Built as dynamic libs?: NO 26 | -- C++ Compiler: /usr/bin/c++ (ver 4.2.0) 27 | -- C++ flags (Release): -m64 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -O3 -DNDEBUG -DNDEBUG 28 | -- C++ flags (Debug): -m64 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -g -O0 -DDEBUG -D_DEBUG 29 | -- C Compiler: /usr/bin/cc 30 | -- C flags (Release): -m64 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -O3 -DNDEBUG -DNDEBUG 31 | -- C flags (Debug): -m64 -fPIC -fsigned-char -W -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-omit-frame-pointer -msse -msse2 -msse3 -g -O0 -DDEBUG -D_DEBUG 32 | -- Linker flags (Release): 33 | -- Linker flags (Debug): 34 | -- Precompiled headers: NO 35 | -- 36 | -- OpenCV modules: 37 | -- To be built: core flann imgproc highgui features2d calib3d ml video legacy objdetect photo gpu ocl nonfree contrib java python stitching superres ts videostab 38 | -- Disabled: world 39 | -- Disabled by dependency: - 40 | -- Unavailable: androidcamera dynamicuda viz 41 | -- 42 | -- GUI: 43 | -- QT: NO 44 | -- Cocoa: YES 45 | -- OpenGL support: NO 46 | -- VTK support: NO 47 | -- 48 | -- Media I/O: 49 | -- ZLib: build (ver 1.2.7) 50 | -- JPEG: build (ver 62) 51 | -- PNG: build (ver 1.5.12) 52 | -- TIFF: build (ver 42 - 4.0.2) 53 | -- JPEG 2000: build (ver 1.900.1) 54 | -- OpenEXR: build (ver 1.7.1) 55 | -- 56 | -- Video I/O: 57 | -- DC1394 1.x: NO 58 | -- DC1394 2.x: NO 59 | -- FFMPEG: NO 60 | -- codec: NO 61 | -- format: NO 62 | -- util: NO 63 | -- swscale: NO 64 | -- gentoo-style: NO 65 | -- OpenNI: NO 66 | -- OpenNI PrimeSensor Modules: NO 67 | -- PvAPI: NO 68 | -- GigEVisionSDK: NO 69 | -- QuickTime: NO 70 | -- QTKit: YES 71 | -- V4L/V4L2: NO/NO 72 | -- 73 | -- Other third-party libraries: 74 | -- Use IPP: NO 75 | -- Use Eigen: NO 76 | -- Use TBB: NO 77 | -- Use OpenMP: NO 78 | -- Use GCD YES 79 | -- Use Concurrency NO 80 | -- Use C=: NO 81 | -- Use Cuda: NO 82 | -- Use OpenCL: YES 83 | -- 84 | -- OpenCL: 85 | -- Version: static 86 | -- libraries: -framework OpenCL 87 | -- Use AMD FFT: NO 88 | -- Use AMD BLAS: NO 89 | -- 90 | -- Python: 91 | -- Interpreter: /usr/bin/python (ver 2.7.1) 92 | -- Libraries: /usr/lib/libpython2.7.dylib (ver 2.7.1) 93 | -- numpy: /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/include (ver 1.5.1) 94 | -- packages path: lib/python2.7/site-packages 95 | -- 96 | -- Java: 97 | -- ant: /usr/bin/ant (ver 1.8.2) 98 | -- JNI: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/JavaVM.framework/Headers /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/JavaVM.framework/Headers /System/Library/Frameworks/JavaVM.framework/Headers 99 | -- Java tests: YES 100 | -- 101 | -- Documentation: 102 | -- Build Documentation: NO 103 | -- Sphinx: NO 104 | -- PdfLaTeX compiler: NO 105 | -- 106 | -- Tests and samples: 107 | -- Tests: YES 108 | -- Performance tests: YES 109 | -- C/C++ Examples: NO 110 | -- 111 | -- Install path: /usr/local 112 | -- 113 | -- cvconfig.h is in: /Users/user/Projects/itseez-opencv/build 114 | -- ----------------------------------------------------------------- 115 | -- 116 | -- Configuring done 117 | -- Generating done 118 | -- Build files have been written to: /Users/user/Projects/itseez-opencv/build 119 | -------------------------------------------------------------------------------- /src/main/resources/nu/pattern/opencv/osx/x86_64/libopencv_java249.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/src/main/resources/nu/pattern/opencv/osx/x86_64/libopencv_java249.dylib -------------------------------------------------------------------------------- /src/test/java/nu/pattern/LibraryLoadingTest.java: -------------------------------------------------------------------------------- 1 | package nu.pattern; 2 | 3 | import org.junit.Assert; 4 | import org.junit.Test; 5 | import org.junit.runner.RunWith; 6 | import org.junit.runners.JUnit4; 7 | import org.opencv.core.CvType; 8 | import org.opencv.core.Mat; 9 | import org.opencv.core.Scalar; 10 | 11 | import java.net.URLClassLoader; 12 | import java.util.logging.Level; 13 | import java.util.logging.Logger; 14 | 15 | /** 16 | * @see Issue 7 17 | */ 18 | @RunWith(JUnit4.class) 19 | public class LibraryLoadingTest { 20 | private final static Logger logger = Logger.getLogger(LibraryLoadingTest.class.getName()); 21 | 22 | public static class Client { 23 | static { 24 | OpenCV.loadLocally(); 25 | } 26 | 27 | /** 28 | * Run interesting tests on instantiation to make reflection chores simpler. 29 | */ 30 | public Client() { 31 | final Mat m = new Mat(5, 10, CvType.CV_8UC1, new Scalar(0)); 32 | logger.log(Level.FINEST, "Initial matrix: {0}.", m.dump()); 33 | 34 | final Mat mr1 = m.row(1); 35 | mr1.setTo(new Scalar(1)); 36 | 37 | final Mat mc5 = m.col(5); 38 | mc5.setTo(new Scalar(5)); 39 | 40 | logger.log(Level.FINEST, "Final matrix: {0}.", m.dump()); 41 | } 42 | } 43 | 44 | public static class TestClassLoader extends URLClassLoader { 45 | public TestClassLoader() { 46 | super(((URLClassLoader) getSystemClassLoader()).getURLs()); 47 | } 48 | 49 | @Override 50 | public Class loadClass(String name) throws ClassNotFoundException { 51 | if (name.startsWith("nu.pattern") || name.startsWith("org.opencv")) { 52 | return super.findClass(name); 53 | } 54 | 55 | return super.loadClass(name); 56 | } 57 | } 58 | 59 | /** 60 | * Multiple {@link ClassLoader} instances should be able to successfully load the native library, and call OpenCV APIs. 61 | */ 62 | @Test 63 | @SuppressWarnings("unchecked") 64 | public void multipleClassLoaders() throws ClassNotFoundException, IllegalAccessException, InstantiationException { 65 | final ClassLoader loader0 = new TestClassLoader(); 66 | final ClassLoader loader1 = new TestClassLoader(); 67 | 68 | final Class c0 = Class.forName(Client.class.getName(), true, loader0); 69 | final Class c1 = Class.forName(Client.class.getName(), true, loader1); 70 | 71 | Assert.assertNotEquals("A class from two different loaders should not be equal.", c0, c1); 72 | Assert.assertNotSame("A class from two different loaders should not be same.", c0, c1); 73 | 74 | c0.newInstance(); 75 | c1.newInstance(); 76 | } 77 | 78 | /** 79 | * {@link OpenCV#loadLocally()} is safe to call repeatedly within a single {@link ClassLoader} context. 80 | */ 81 | @Test 82 | public void spuriousLoads() { 83 | OpenCV.loadLocally(); 84 | OpenCV.loadLocally(); 85 | } 86 | } 87 | -------------------------------------------------------------------------------- /src/test/java/nu/pattern/LoadLibraryRunListener.java: -------------------------------------------------------------------------------- 1 | package nu.pattern; 2 | 3 | import org.junit.runner.Description; 4 | import org.junit.runner.notification.RunListener; 5 | 6 | public class LoadLibraryRunListener extends RunListener { 7 | @Override 8 | public void testRunStarted(final Description description) throws Exception { 9 | super.testRunStarted(description); 10 | OpenCV.loadShared(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/test/resources/logging.properties: -------------------------------------------------------------------------------- 1 | handlers=java.util.logging.ConsoleHandler 2 | 3 | java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter 4 | java.util.logging.ConsoleHandler.level=ALL 5 | 6 | nu.pattern.level=ALL 7 | -------------------------------------------------------------------------------- /upstream/README.md: -------------------------------------------------------------------------------- 1 | # Upstream 2 | 3 | Java resources produced by the OpenCV build process. This project extracts them to standard locations. 4 | 5 | Aritfact | Origin | Comments 6 | --- | --- | --- 7 | `res/` | `build/modules/java/test/.build/res/` | Test fixtures. 8 | `opencv-249.jar` | `build/modules/java/test/.build/bin/opencv-249.jar` | Java API with sources. 9 | `opencv-test.jar` | `build/modules/java/test/.build/jar/opencv-test.jar` | Compiled test classes. 10 | 11 | A primary goal of this package is to avoid making any modifications to the artifacts produced by the upstream OpenCV project. The listed resources will be incorporated into standard Maven conventions. 12 | -------------------------------------------------------------------------------- /upstream/opencv-249.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/upstream/opencv-249.jar -------------------------------------------------------------------------------- /upstream/opencv-test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/upstream/opencv-test.jar -------------------------------------------------------------------------------- /upstream/res/drawable/chessboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/upstream/res/drawable/chessboard.jpg -------------------------------------------------------------------------------- /upstream/res/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/upstream/res/drawable/icon.png -------------------------------------------------------------------------------- /upstream/res/drawable/lena.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PatternConsulting/opencv/62843281861399ba7d86f2d7fef186694c99663d/upstream/res/drawable/lena.jpg -------------------------------------------------------------------------------- /upstream/res/layout/main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 12 | 13 | -------------------------------------------------------------------------------- /upstream/res/raw/lbpcascade_frontalface.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | BOOST 9 | LBP 10 | 24 11 | 24 12 | 13 | GAB 14 | 0.9950000047683716 15 | 0.5000000000000000 16 | 0.9500000000000000 17 | 1 18 | 100 19 | 20 | 256 21 | 20 22 | 23 | 24 | <_> 25 | 3 26 | -0.7520892024040222 27 | 28 | 29 | <_> 30 | 31 | 0 -1 46 -67130709 -21569 -1426120013 -1275125205 -21585 32 | -16385 587145899 -24005 33 | 34 | -0.6543210148811340 0.8888888955116272 35 | 36 | <_> 37 | 38 | 0 -1 13 -163512766 -769593758 -10027009 -262145 -514457854 39 | -193593353 -524289 -1 40 | 41 | -0.7739216089248657 0.7278633713722229 42 | 43 | <_> 44 | 45 | 0 -1 2 -363936790 -893203669 -1337948010 -136907894 46 | 1088782736 -134217726 -741544961 -1590337 47 | 48 | -0.7068563103675842 0.6761534214019775 49 | 50 | <_> 51 | 4 52 | -0.4872078299522400 53 | 54 | 55 | <_> 56 | 57 | 0 -1 84 2147483647 1946124287 -536870913 2147450879 58 | 738132490 1061101567 243204619 2147446655 59 | 60 | -0.8083735704421997 0.7685696482658386 61 | 62 | <_> 63 | 64 | 0 -1 21 2147483647 263176079 1879048191 254749487 1879048191 65 | -134252545 -268435457 801111999 66 | 67 | -0.7698410153388977 0.6592915654182434 68 | 69 | <_> 70 | 71 | 0 -1 106 -98110272 1610939566 -285484400 -850010381 72 | -189334372 -1671954433 -571026695 -262145 73 | 74 | -0.7506558895111084 0.5444605946540833 75 | 76 | <_> 77 | 78 | 0 -1 48 -798690576 -131075 1095771153 -237144073 -65569 -1 79 | -216727745 -69206049 80 | 81 | -0.7775990366935730 0.5465461611747742 82 | 83 | <_> 84 | 4 85 | -1.1592328548431396 86 | 87 | 88 | <_> 89 | 90 | 0 -1 47 -21585 -20549 -100818262 -738254174 -20561 -36865 91 | -151016790 -134238549 92 | 93 | -0.5601882934570313 0.7743113040924072 94 | 95 | <_> 96 | 97 | 0 -1 12 -286003217 183435247 -268994614 -421330945 98 | -402686081 1090387966 -286785545 -402653185 99 | 100 | -0.6124526262283325 0.6978127956390381 101 | 102 | <_> 103 | 104 | 0 -1 26 -50347012 970882927 -50463492 -1253377 -134218251 105 | -50364513 -33619992 -172490753 106 | 107 | -0.6114496588706970 0.6537628173828125 108 | 109 | <_> 110 | 111 | 0 -1 8 -273 -135266321 1877977738 -2088243418 -134217987 112 | 2146926575 -18910642 1095231247 113 | 114 | -0.6854077577590942 0.5403239130973816 115 | 116 | <_> 117 | 5 118 | -0.7562355995178223 119 | 120 | 121 | <_> 122 | 123 | 0 -1 96 -1273 1870659519 -20971602 -67633153 -134250731 124 | 2004875127 -250 -150995969 125 | 126 | -0.4051094949245453 0.7584033608436585 127 | 128 | <_> 129 | 130 | 0 -1 33 -868162224 -76810262 -4262145 -257 1465211989 131 | -268959873 -2656269 -524289 132 | 133 | -0.7388162612915039 0.5340843200683594 134 | 135 | <_> 136 | 137 | 0 -1 57 -12817 -49 -541103378 -152950 -38993 -20481 -1153876 138 | -72478976 139 | 140 | -0.6582943797111511 0.5339496731758118 141 | 142 | <_> 143 | 144 | 0 -1 125 -269484161 -452984961 -319816180 -1594032130 -2111 145 | -990117891 -488975296 -520947741 146 | 147 | -0.5981323719024658 0.5323504805564880 148 | 149 | <_> 150 | 151 | 0 -1 53 557787431 670265215 -1342193665 -1075892225 152 | 1998528318 1056964607 -33570977 -1 153 | 154 | -0.6498787999153137 0.4913350641727448 155 | 156 | <_> 157 | 5 158 | -0.8085358142852783 159 | 160 | 161 | <_> 162 | 163 | 0 -1 60 -536873708 880195381 -16842788 -20971521 -176687276 164 | -168427659 -16777260 -33554626 165 | 166 | -0.5278195738792419 0.6946372389793396 167 | 168 | <_> 169 | 170 | 0 -1 7 -1 -62981529 -1090591130 805330978 -8388827 -41945787 171 | -39577 -531118985 172 | 173 | -0.5206505060195923 0.6329920291900635 174 | 175 | <_> 176 | 177 | 0 -1 98 -725287348 1347747543 -852489 -16809993 1489881036 178 | -167903241 -1 -1 179 | 180 | -0.7516061067581177 0.4232024252414703 181 | 182 | <_> 183 | 184 | 0 -1 44 -32777 1006582562 -65 935312171 -8388609 -1078198273 185 | -1 733886267 186 | 187 | -0.7639313936233521 0.4123568832874298 188 | 189 | <_> 190 | 191 | 0 -1 24 -85474705 2138828511 -1036436754 817625855 192 | 1123369029 -58796809 -1013468481 -194513409 193 | 194 | -0.5123769044876099 0.5791834592819214 195 | 196 | <_> 197 | 5 198 | -0.5549971461296082 199 | 200 | 201 | <_> 202 | 203 | 0 -1 42 -17409 -20481 -268457797 -134239493 -17473 -1 -21829 204 | -21846 205 | 206 | -0.3763174116611481 0.7298233509063721 207 | 208 | <_> 209 | 210 | 0 -1 6 -805310737 -2098262358 -269504725 682502698 211 | 2147483519 1740574719 -1090519233 -268472385 212 | 213 | -0.5352765917778015 0.5659480094909668 214 | 215 | <_> 216 | 217 | 0 -1 61 -67109678 -6145 -8 -87884584 -20481 -1073762305 218 | -50856216 -16849696 219 | 220 | -0.5678374171257019 0.4961479902267456 221 | 222 | <_> 223 | 224 | 0 -1 123 -138428633 1002418167 -1359008245 -1908670465 225 | -1346685918 910098423 -1359010520 -1346371657 226 | 227 | -0.5706262588500977 0.4572288393974304 228 | 229 | <_> 230 | 231 | 0 -1 9 -89138513 -4196353 1256531674 -1330665426 1216308261 232 | -36190633 33498198 -151796633 233 | 234 | -0.5344601869583130 0.4672054052352905 235 | 236 | <_> 237 | 5 238 | -0.8776460289955139 239 | 240 | 241 | <_> 242 | 243 | 0 -1 105 1073769576 206601725 -34013449 -33554433 -789514004 244 | -101384321 -690225153 -264193 245 | 246 | -0.7700348496437073 0.5943940877914429 247 | 248 | <_> 249 | 250 | 0 -1 30 -1432340997 -823623681 -49153 -34291724 -269484035 251 | -1342767105 -1078198273 -1277955 252 | 253 | -0.5043668746948242 0.6151274442672730 254 | 255 | <_> 256 | 257 | 0 -1 35 -1067385040 -195758209 -436748425 -134217731 258 | -50855988 -129 -1 -1 259 | 260 | -0.6808040738105774 0.4667325913906097 261 | 262 | <_> 263 | 264 | 0 -1 119 832534325 -34111555 -26050561 -423659521 -268468364 265 | 2105014143 -2114244 -17367185 266 | 267 | -0.4927591383457184 0.5401885509490967 268 | 269 | <_> 270 | 271 | 0 -1 82 -1089439888 -1080524865 2143059967 -1114121 272 | -1140949004 -3 -2361356 -739516 273 | 274 | -0.6445107460021973 0.4227822124958038 275 | 276 | <_> 277 | 6 278 | -1.1139287948608398 279 | 280 | 281 | <_> 282 | 283 | 0 -1 52 -1074071553 -1074003969 -1 -1280135430 -5324817 -1 284 | -335548482 582134442 285 | 286 | -0.5307556986808777 0.6258179545402527 287 | 288 | <_> 289 | 290 | 0 -1 99 -706937396 -705364068 -540016724 -570495027 291 | -570630659 -587857963 -33628164 -35848193 292 | 293 | -0.5227634310722351 0.5049746036529541 294 | 295 | <_> 296 | 297 | 0 -1 18 -2035630093 42119158 -268503053 -1671444 261017599 298 | 1325432815 1954394111 -805306449 299 | 300 | -0.4983572661876679 0.5106441378593445 301 | 302 | <_> 303 | 304 | 0 -1 111 -282529488 -1558073088 1426018736 -170526448 305 | -546832487 -5113037 -34243375 -570427929 306 | 307 | -0.4990860521793366 0.5060507059097290 308 | 309 | <_> 310 | 311 | 0 -1 92 1016332500 -606301707 915094269 -1080086049 312 | -1837027144 -1361600280 2147318747 1067975613 313 | 314 | -0.5695009231567383 0.4460467398166657 315 | 316 | <_> 317 | 318 | 0 -1 51 -656420166 -15413034 -141599534 -603435836 319 | 1505950458 -787556946 -79823438 -1326199134 320 | 321 | -0.6590405106544495 0.3616424500942230 322 | 323 | <_> 324 | 7 325 | -0.8243625760078430 326 | 327 | 328 | <_> 329 | 330 | 0 -1 28 -901591776 -201916417 -262 -67371009 -143312112 331 | -524289 -41943178 -1 332 | 333 | -0.4972776770591736 0.6027074456214905 334 | 335 | <_> 336 | 337 | 0 -1 112 -4507851 -411340929 -268437513 -67502145 -17350859 338 | -32901 -71344315 -29377 339 | 340 | -0.4383158981800079 0.5966237187385559 341 | 342 | <_> 343 | 344 | 0 -1 69 -75894785 -117379438 -239063587 -12538500 1485072126 345 | 2076233213 2123118847 801906927 346 | 347 | -0.6386105418205261 0.3977999985218048 348 | 349 | <_> 350 | 351 | 0 -1 19 -823480413 786628589 -16876049 -1364262914 242165211 352 | 1315930109 -696268833 -455082829 353 | 354 | -0.5512794256210327 0.4282079637050629 355 | 356 | <_> 357 | 358 | 0 -1 73 -521411968 6746762 -1396236286 -2038436114 359 | -185612509 57669627 -143132877 -1041235973 360 | 361 | -0.6418755054473877 0.3549866080284119 362 | 363 | <_> 364 | 365 | 0 -1 126 -478153869 1076028979 -1645895615 1365298272 366 | -557859073 -339771473 1442574528 -1058802061 367 | 368 | -0.4841901361942291 0.4668019413948059 369 | 370 | <_> 371 | 372 | 0 -1 45 -246350404 -1650402048 -1610612745 -788400696 373 | 1467604861 -2787397 1476263935 -4481349 374 | 375 | -0.5855734348297119 0.3879135847091675 376 | 377 | <_> 378 | 7 379 | -1.2237116098403931 380 | 381 | 382 | <_> 383 | 384 | 0 -1 114 -24819 1572863935 -16809993 -67108865 2146778388 385 | 1433927541 -268608444 -34865205 386 | 387 | -0.2518476545810700 0.7088654041290283 388 | 389 | <_> 390 | 391 | 0 -1 97 -1841359 -134271049 -32769 -5767369 -1116675 -2185 392 | -8231 -33603327 393 | 394 | -0.4303432404994965 0.5283288359642029 395 | 396 | <_> 397 | 398 | 0 -1 25 -1359507589 -1360593090 -1073778729 -269553812 399 | -809512977 1744707583 -41959433 -134758978 400 | 401 | -0.4259553551673889 0.5440809130668640 402 | 403 | <_> 404 | 405 | 0 -1 34 729753407 -134270989 -1140907329 -235200777 406 | 658456383 2147467263 -1140900929 -16385 407 | 408 | -0.5605589151382446 0.4220733344554901 409 | 410 | <_> 411 | 412 | 0 -1 134 -310380553 -420675595 -193005472 -353568129 413 | 1205338070 -990380036 887604324 -420544526 414 | 415 | -0.5192656517028809 0.4399855434894562 416 | 417 | <_> 418 | 419 | 0 -1 16 -1427119361 1978920959 -287119734 -487068946 420 | 114759245 -540578051 -707510259 -671660453 421 | 422 | -0.5013077259063721 0.4570254683494568 423 | 424 | <_> 425 | 426 | 0 -1 74 -738463762 -889949281 -328301948 -121832450 427 | -1142658284 -1863576559 2146417353 -263185 428 | 429 | -0.4631414115428925 0.4790246188640595 430 | 431 | <_> 432 | 7 433 | -0.5544230937957764 434 | 435 | 436 | <_> 437 | 438 | 0 -1 113 -76228780 -65538 -1 -67174401 -148007 -33 -221796 439 | -272842924 440 | 441 | -0.3949716091156006 0.6082032322883606 442 | 443 | <_> 444 | 445 | 0 -1 110 369147696 -1625232112 2138570036 -1189900 790708019 446 | -1212613127 799948719 -4456483 447 | 448 | -0.4855885505676270 0.4785369932651520 449 | 450 | <_> 451 | 452 | 0 -1 37 784215839 -290015241 536832799 -402984963 453 | -1342414991 -838864897 -176769 -268456129 454 | 455 | -0.4620285332202911 0.4989669024944305 456 | 457 | <_> 458 | 459 | 0 -1 41 -486418688 -171915327 -340294900 -21938 -519766032 460 | -772751172 -73096060 -585322623 461 | 462 | -0.6420643329620361 0.3624351918697357 463 | 464 | <_> 465 | 466 | 0 -1 117 -33554953 -475332625 -1423463824 -2077230421 467 | -4849669 -2080505925 -219032928 -1071915349 468 | 469 | -0.4820112884044647 0.4632140696048737 470 | 471 | <_> 472 | 473 | 0 -1 65 -834130468 -134217476 -1349314083 -1073803559 474 | -619913764 -1449131844 -1386890321 -1979118423 475 | 476 | -0.4465552568435669 0.5061788558959961 477 | 478 | <_> 479 | 480 | 0 -1 56 -285249779 1912569855 -16530 -1731022870 -1161904146 481 | -1342177297 -268439634 -1464078708 482 | 483 | -0.5190586447715759 0.4441480338573456 484 | 485 | <_> 486 | 7 487 | -0.7161560654640198 488 | 489 | 490 | <_> 491 | 492 | 0 -1 20 1246232575 1078001186 -10027057 60102 -277348353 493 | -43646987 -1210581153 1195769615 494 | 495 | -0.4323809444904327 0.5663768053054810 496 | 497 | <_> 498 | 499 | 0 -1 15 -778583572 -612921106 -578775890 -4036478 500 | -1946580497 -1164766570 -1986687009 -12103599 501 | 502 | -0.4588732719421387 0.4547033011913300 503 | 504 | <_> 505 | 506 | 0 -1 129 -1073759445 2013231743 -1363169553 -1082459201 507 | -1414286549 868185983 -1356133589 -1077936257 508 | 509 | -0.5218553543090820 0.4111092388629913 510 | 511 | <_> 512 | 513 | 0 -1 102 -84148365 -2093417722 -1204850272 564290299 514 | -67121221 -1342177350 -1309195902 -776734797 515 | 516 | -0.4920000731945038 0.4326725304126740 517 | 518 | <_> 519 | 520 | 0 -1 88 -25694458 67104495 -290216278 -168563037 2083877442 521 | 1702788383 -144191964 -234882162 522 | 523 | -0.4494568109512329 0.4448510706424713 524 | 525 | <_> 526 | 527 | 0 -1 59 -857980836 904682741 -1612267521 232279415 528 | 1550862252 -574825221 -357380888 -4579409 529 | 530 | -0.5180826783180237 0.3888972699642181 531 | 532 | <_> 533 | 534 | 0 -1 27 -98549440 -137838400 494928389 -246013630 939541351 535 | -1196072350 -620603549 2137216273 536 | 537 | -0.6081240773200989 0.3333222270011902 538 | 539 | <_> 540 | 8 541 | -0.6743940711021423 542 | 543 | 544 | <_> 545 | 546 | 0 -1 29 -150995201 2071191945 -1302151626 536934335 547 | -1059008937 914128709 1147328110 -268369925 548 | 549 | -0.1790193915367127 0.6605972051620483 550 | 551 | <_> 552 | 553 | 0 -1 128 -134509479 1610575703 -1342177289 1861484541 554 | -1107833788 1577058173 -333558568 -136319041 555 | 556 | -0.3681024610996246 0.5139749646186829 557 | 558 | <_> 559 | 560 | 0 -1 70 -1 1060154476 -1090984524 -630918524 -539492875 561 | 779616255 -839568424 -321 562 | 563 | -0.3217232525348663 0.6171553134918213 564 | 565 | <_> 566 | 567 | 0 -1 4 -269562385 -285029906 -791084350 -17923776 235286671 568 | 1275504943 1344390399 -966276889 569 | 570 | -0.4373284578323364 0.4358185231685638 571 | 572 | <_> 573 | 574 | 0 -1 76 17825984 -747628419 595427229 1474759671 575672208 575 | -1684005538 872217086 -1155858277 576 | 577 | -0.4404836893081665 0.4601220190525055 578 | 579 | <_> 580 | 581 | 0 -1 124 -336593039 1873735591 -822231622 -355795238 582 | -470820869 -1997537409 -1057132384 -1015285005 583 | 584 | -0.4294152259826660 0.4452161788940430 585 | 586 | <_> 587 | 588 | 0 -1 54 -834212130 -593694721 -322142257 -364892500 589 | -951029539 -302125121 -1615106053 -79249765 590 | 591 | -0.3973052501678467 0.4854526817798615 592 | 593 | <_> 594 | 595 | 0 -1 95 1342144479 2147431935 -33554561 -47873 -855685912 -1 596 | 1988052447 536827383 597 | 598 | -0.7054683566093445 0.2697997391223908 599 | 600 | <_> 601 | 9 602 | -1.2042298316955566 603 | 604 | 605 | <_> 606 | 607 | 0 -1 39 1431368960 -183437936 -537002499 -137497097 608 | 1560590321 -84611081 -2097193 -513 609 | 610 | -0.5905947685241699 0.5101932883262634 611 | 612 | <_> 613 | 614 | 0 -1 120 -1645259691 2105491231 2130706431 1458995007 615 | -8567536 -42483883 -33780003 -21004417 616 | 617 | -0.4449204802513123 0.4490709304809570 618 | 619 | <_> 620 | 621 | 0 -1 89 -612381022 -505806938 -362027516 -452985106 622 | 275854917 1920431639 -12600561 -134221825 623 | 624 | -0.4693818688392639 0.4061094820499420 625 | 626 | <_> 627 | 628 | 0 -1 14 -805573153 -161 -554172679 -530519488 -16779441 629 | 2000682871 -33604275 -150997129 630 | 631 | -0.3600351214408875 0.5056326985359192 632 | 633 | <_> 634 | 635 | 0 -1 67 6192 435166195 1467449341 2046691505 -1608493775 636 | -4755729 -1083162625 -71365637 637 | 638 | -0.4459891915321350 0.4132415652275085 639 | 640 | <_> 641 | 642 | 0 -1 86 -41689215 -3281034 1853357967 -420712635 -415924289 643 | -270209208 -1088293113 -825311232 644 | 645 | -0.4466069042682648 0.4135067760944367 646 | 647 | <_> 648 | 649 | 0 -1 80 -117391116 -42203396 2080374461 -188709 -542008165 650 | -356831940 -1091125345 -1073796897 651 | 652 | -0.3394956290721893 0.5658645033836365 653 | 654 | <_> 655 | 656 | 0 -1 75 -276830049 1378714472 -1342181951 757272098 657 | 1073740607 -282199241 -415761549 170896931 658 | 659 | -0.5346512198448181 0.3584479391574860 660 | 661 | <_> 662 | 663 | 0 -1 55 -796075825 -123166849 2113667055 -217530421 664 | -1107432194 -16385 -806359809 -391188771 665 | 666 | -0.4379335641860962 0.4123645126819611 667 | 668 | <_> 669 | 10 670 | -0.8402050137519836 671 | 672 | 673 | <_> 674 | 675 | 0 -1 71 -890246622 15525883 -487690486 47116238 -1212319899 676 | -1291847681 -68159890 -469829921 677 | 678 | -0.2670986354351044 0.6014143228530884 679 | 680 | <_> 681 | 682 | 0 -1 31 -1361180685 -1898008841 -1090588811 -285410071 683 | -1074016265 -840443905 2147221487 -262145 684 | 685 | -0.4149844348430634 0.4670888185501099 686 | 687 | <_> 688 | 689 | 0 -1 40 1426190596 1899364271 2142731795 -142607505 690 | -508232452 -21563393 -41960001 -65 691 | 692 | -0.4985891580581665 0.3719584941864014 693 | 694 | <_> 695 | 696 | 0 -1 109 -201337965 10543906 -236498096 -746195597 697 | 1974565825 -15204415 921907633 -190058309 698 | 699 | -0.4568729996681213 0.3965812027454376 700 | 701 | <_> 702 | 703 | 0 -1 130 -595026732 -656401928 -268649235 -571490699 704 | -440600392 -133131 -358810952 -2004088646 705 | 706 | -0.4770836830139160 0.3862601518630981 707 | 708 | <_> 709 | 710 | 0 -1 66 941674740 -1107882114 1332789109 -67691015 711 | -1360463693 -1556612430 -609108546 733546933 712 | 713 | -0.4877715110778809 0.3778986334800720 714 | 715 | <_> 716 | 717 | 0 -1 49 -17114945 -240061474 1552871558 -82775604 -932393844 718 | -1308544889 -532635478 -99042357 719 | 720 | -0.3721654713153839 0.4994400143623352 721 | 722 | <_> 723 | 724 | 0 -1 133 -655906006 1405502603 -939205164 1884929228 725 | -498859222 559417357 -1928559445 -286264385 726 | 727 | -0.3934195041656494 0.4769641458988190 728 | 729 | <_> 730 | 731 | 0 -1 0 -335837777 1860677295 -90 -1946186226 931096183 732 | 251612987 2013265917 -671232197 733 | 734 | -0.4323300719261169 0.4342164099216461 735 | 736 | <_> 737 | 738 | 0 -1 103 37769424 -137772680 374692301 2002666345 -536176194 739 | -1644484728 807009019 1069089930 740 | 741 | -0.4993278682231903 0.3665378093719482 742 | 743 | <_> 744 | 9 745 | -1.1974394321441650 746 | 747 | 748 | <_> 749 | 750 | 0 -1 43 -5505 2147462911 2143265466 -4511070 -16450 -257 751 | -201348440 -71333206 752 | 753 | -0.3310225307941437 0.5624626278877258 754 | 755 | <_> 756 | 757 | 0 -1 90 -136842268 -499330741 2015250980 -87107126 758 | -641665744 -788524639 -1147864792 -134892563 759 | 760 | -0.5266560912132263 0.3704403042793274 761 | 762 | <_> 763 | 764 | 0 -1 104 -146800880 -1780368555 2111170033 -140904684 765 | -16777551 -1946681885 -1646463595 -839131947 766 | 767 | -0.4171888828277588 0.4540435671806335 768 | 769 | <_> 770 | 771 | 0 -1 85 -832054034 -981663763 -301990281 -578814081 772 | -932319000 -1997406723 -33555201 -69206017 773 | 774 | -0.4556705355644226 0.3704262077808380 775 | 776 | <_> 777 | 778 | 0 -1 24 -118492417 -1209026825 1119023838 -1334313353 779 | 1112948738 -297319313 1378887291 -139469193 780 | 781 | -0.4182529747486115 0.4267231225967407 782 | 783 | <_> 784 | 785 | 0 -1 78 -1714382628 -2353704 -112094959 -549613092 786 | -1567058760 -1718550464 -342315012 -1074972227 787 | 788 | -0.3625369668006897 0.4684656262397766 789 | 790 | <_> 791 | 792 | 0 -1 5 -85219702 316836394 -33279 1904970288 2117267315 793 | -260901769 -621461759 -88607770 794 | 795 | -0.4742925167083740 0.3689507246017456 796 | 797 | <_> 798 | 799 | 0 -1 11 -294654041 -353603585 -1641159686 -50331921 800 | -2080899877 1145569279 -143132713 -152044037 801 | 802 | -0.3666271567344666 0.4580127298831940 803 | 804 | <_> 805 | 806 | 0 -1 32 1887453658 -638545712 -1877976819 -34320972 807 | -1071067983 -661345416 -583338277 1060190561 808 | 809 | -0.4567637443542481 0.3894708156585693 810 | 811 | <_> 812 | 9 813 | -0.5733128190040588 814 | 815 | 816 | <_> 817 | 818 | 0 -1 122 -994063296 1088745462 -318837116 -319881377 819 | 1102566613 1165490103 -121679694 -134744129 820 | 821 | -0.4055117964744568 0.5487945079803467 822 | 823 | <_> 824 | 825 | 0 -1 68 -285233233 -538992907 1811935199 -369234005 -529 826 | -20593 -20505 -1561401854 827 | 828 | -0.3787897229194641 0.4532003402709961 829 | 830 | <_> 831 | 832 | 0 -1 58 -1335245632 1968917183 1940861695 536816369 833 | -1226071367 -570908176 457026619 1000020667 834 | 835 | -0.4258328974246979 0.4202791750431061 836 | 837 | <_> 838 | 839 | 0 -1 94 -1360318719 -1979797897 -50435249 -18646473 840 | -608879292 -805306691 -269304244 -17840167 841 | 842 | -0.4561023116111755 0.4002747833728790 843 | 844 | <_> 845 | 846 | 0 -1 87 2062765935 -16449 -1275080721 -16406 45764335 847 | -1090552065 -772846337 -570464322 848 | 849 | -0.4314672648906708 0.4086346626281738 850 | 851 | <_> 852 | 853 | 0 -1 127 -536896021 1080817663 -738234288 -965478709 854 | -2082767969 1290855887 1993822934 -990381609 855 | 856 | -0.4174543321132660 0.4249868988990784 857 | 858 | <_> 859 | 860 | 0 -1 3 -818943025 168730891 -293610428 -79249354 669224671 861 | 621166734 1086506807 1473768907 862 | 863 | -0.4321364760398865 0.4090838730335236 864 | 865 | <_> 866 | 867 | 0 -1 79 -68895696 -67107736 -1414315879 -841676168 868 | -619843344 -1180610531 -1081990469 1043203389 869 | 870 | -0.5018386244773865 0.3702533841133118 871 | 872 | <_> 873 | 874 | 0 -1 116 -54002134 -543485719 -2124882422 -1437445858 875 | -115617074 -1195787391 -1096024366 -2140472445 876 | 877 | -0.5037505626678467 0.3564981222152710 878 | 879 | <_> 880 | 9 881 | -0.4892596900463104 882 | 883 | 884 | <_> 885 | 886 | 0 -1 132 -67113211 2003808111 1862135111 846461923 -2752 887 | 2002237273 -273154752 1937223539 888 | 889 | -0.2448196411132813 0.5689709186553955 890 | 891 | <_> 892 | 893 | 0 -1 62 1179423888 -78064940 -611839555 -539167899 894 | -1289358360 -1650810108 -892540499 -1432827684 895 | 896 | -0.4633283913135529 0.3587929606437683 897 | 898 | <_> 899 | 900 | 0 -1 23 -285212705 -78450761 -656212031 -264050110 -27787425 901 | -1334349961 -547662981 -135796924 902 | 903 | -0.3731099069118500 0.4290455579757690 904 | 905 | <_> 906 | 907 | 0 -1 77 341863476 403702016 -550588417 1600194541 908 | -1080690735 951127993 -1388580949 -1153717473 909 | 910 | -0.3658909499645233 0.4556473195552826 911 | 912 | <_> 913 | 914 | 0 -1 22 -586880702 -204831512 -100644596 -39319550 915 | -1191150794 705692513 457203315 -75806957 916 | 917 | -0.5214384198188782 0.3221037387847900 918 | 919 | <_> 920 | 921 | 0 -1 72 -416546870 545911370 -673716192 -775559454 922 | -264113598 139424 -183369982 -204474641 923 | 924 | -0.4289036989212036 0.4004956185817719 925 | 926 | <_> 927 | 928 | 0 -1 50 -1026505020 -589692154 -1740499937 -1563770497 929 | 1348491006 -60710713 -1109853489 -633909413 930 | 931 | -0.4621542394161224 0.3832748532295227 932 | 933 | <_> 934 | 935 | 0 -1 108 -1448872304 -477895040 -1778390608 -772418127 936 | -1789923416 -1612057181 -805306693 -1415842113 937 | 938 | -0.3711548447608948 0.4612701535224915 939 | 940 | <_> 941 | 942 | 0 -1 92 407905424 -582449988 52654751 -1294472 -285103725 943 | -74633006 1871559083 1057955850 944 | 945 | -0.5180652141571045 0.3205870389938355 946 | 947 | <_> 948 | 10 949 | -0.5911940932273865 950 | 951 | 952 | <_> 953 | 954 | 0 -1 81 4112 -1259563825 -846671428 -100902460 1838164148 955 | -74153752 -90653988 -1074263896 956 | 957 | -0.2592592537403107 0.5873016119003296 958 | 959 | <_> 960 | 961 | 0 -1 1 -285216785 -823206977 -1085589 -1081346 1207959293 962 | 1157103471 2097133565 -2097169 963 | 964 | -0.3801195919513702 0.4718827307224274 965 | 966 | <_> 967 | 968 | 0 -1 121 -12465 -536875169 2147478367 2130706303 -37765492 969 | -866124467 -318782328 -1392509185 970 | 971 | -0.3509117066860199 0.5094807147979736 972 | 973 | <_> 974 | 975 | 0 -1 38 2147449663 -20741 -16794757 1945873146 -16710 -1 976 | -8406341 -67663041 977 | 978 | -0.4068757295608521 0.4130136370658875 979 | 980 | <_> 981 | 982 | 0 -1 17 -155191713 866117231 1651407483 548272812 -479201468 983 | -447742449 1354229504 -261884429 984 | 985 | -0.4557141065597534 0.3539792001247406 986 | 987 | <_> 988 | 989 | 0 -1 100 -225319378 -251682065 -492783986 -792341777 990 | -1287261695 1393643841 -11274182 -213909521 991 | 992 | -0.4117803275585175 0.4118592441082001 993 | 994 | <_> 995 | 996 | 0 -1 63 -382220122 -2002072729 -51404800 -371201558 997 | -923011069 -2135301457 -2066104743 -1042557441 998 | 999 | -0.4008397758007050 0.4034757018089294 1000 | 1001 | <_> 1002 | 1003 | 0 -1 101 -627353764 -48295149 1581203952 -436258614 1004 | -105268268 -1435893445 -638126888 -1061107126 1005 | 1006 | -0.5694189667701721 0.2964762747287750 1007 | 1008 | <_> 1009 | 1010 | 0 -1 118 -8399181 1058107691 -621022752 -251003468 -12582915 1011 | -574619739 -994397789 -1648362021 1012 | 1013 | -0.3195341229438782 0.5294018983840942 1014 | 1015 | <_> 1016 | 1017 | 0 -1 92 -348343812 -1078389516 1717960437 364735981 1018 | -1783841602 -4883137 -457572354 -1076950384 1019 | 1020 | -0.3365339040756226 0.5067458748817444 1021 | 1022 | <_> 1023 | 10 1024 | -0.7612916231155396 1025 | 1026 | 1027 | <_> 1028 | 1029 | 0 -1 10 -1976661318 -287957604 -1659497122 -782068 43591089 1030 | -453637880 1435470000 -1077438561 1031 | 1032 | -0.4204545319080353 0.5165745615959168 1033 | 1034 | <_> 1035 | 1036 | 0 -1 131 -67110925 14874979 -142633168 -1338923040 1037 | 2046713291 -2067933195 1473503712 -789579837 1038 | 1039 | -0.3762553930282593 0.4075302779674530 1040 | 1041 | <_> 1042 | 1043 | 0 -1 83 -272814301 -1577073 -1118685 -305156120 -1052289 1044 | -1073813756 -538971154 -355523038 1045 | 1046 | -0.4253497421741486 0.3728055357933044 1047 | 1048 | <_> 1049 | 1050 | 0 -1 135 -2233 -214486242 -538514758 573747007 -159390971 1051 | 1994225489 -973738098 -203424005 1052 | 1053 | -0.3601998090744019 0.4563256204128265 1054 | 1055 | <_> 1056 | 1057 | 0 -1 115 -261031688 -1330369299 -641860609 1029570301 1058 | -1306461192 -1196149518 -1529767778 683139823 1059 | 1060 | -0.4034293889999390 0.4160816967487335 1061 | 1062 | <_> 1063 | 1064 | 0 -1 64 -572993608 -34042628 -417865 -111109 -1433365268 1065 | -19869715 -1920939864 -1279457063 1066 | 1067 | -0.3620899617671967 0.4594142735004425 1068 | 1069 | <_> 1070 | 1071 | 0 -1 36 -626275097 -615256993 1651946018 805366393 1072 | 2016559730 -430780849 -799868165 -16580645 1073 | 1074 | -0.3903816640377045 0.4381459355354309 1075 | 1076 | <_> 1077 | 1078 | 0 -1 93 1354797300 -1090957603 1976418270 -1342502178 1079 | -1851873892 -1194637077 -1153521668 -1108399474 1080 | 1081 | -0.3591445386409760 0.4624078869819641 1082 | 1083 | <_> 1084 | 1085 | 0 -1 91 68157712 1211368313 -304759523 1063017136 798797750 1086 | -275513546 648167355 -1145357350 1087 | 1088 | -0.4297670423984528 0.4023293554782867 1089 | 1090 | <_> 1091 | 1092 | 0 -1 107 -546318240 -1628569602 -163577944 -537002306 1093 | -545456389 -1325465645 -380446736 -1058473386 1094 | 1095 | -0.5727006793022156 0.2995934784412384 1096 | 1097 | <_> 1098 | 1099 | 0 0 3 5 1100 | <_> 1101 | 1102 | 0 0 4 2 1103 | <_> 1104 | 1105 | 0 0 6 3 1106 | <_> 1107 | 1108 | 0 1 2 3 1109 | <_> 1110 | 1111 | 0 1 3 3 1112 | <_> 1113 | 1114 | 0 1 3 7 1115 | <_> 1116 | 1117 | 0 4 3 3 1118 | <_> 1119 | 1120 | 0 11 3 4 1121 | <_> 1122 | 1123 | 0 12 8 4 1124 | <_> 1125 | 1126 | 0 14 4 3 1127 | <_> 1128 | 1129 | 1 0 5 3 1130 | <_> 1131 | 1132 | 1 1 2 2 1133 | <_> 1134 | 1135 | 1 3 3 1 1136 | <_> 1137 | 1138 | 1 7 4 4 1139 | <_> 1140 | 1141 | 1 12 2 2 1142 | <_> 1143 | 1144 | 1 13 4 1 1145 | <_> 1146 | 1147 | 1 14 4 3 1148 | <_> 1149 | 1150 | 1 17 3 2 1151 | <_> 1152 | 1153 | 2 0 2 3 1154 | <_> 1155 | 1156 | 2 1 2 2 1157 | <_> 1158 | 1159 | 2 2 4 6 1160 | <_> 1161 | 1162 | 2 3 4 4 1163 | <_> 1164 | 1165 | 2 7 2 1 1166 | <_> 1167 | 1168 | 2 11 2 3 1169 | <_> 1170 | 1171 | 2 17 3 2 1172 | <_> 1173 | 1174 | 3 0 2 2 1175 | <_> 1176 | 1177 | 3 1 7 3 1178 | <_> 1179 | 1180 | 3 7 2 1 1181 | <_> 1182 | 1183 | 3 7 2 4 1184 | <_> 1185 | 1186 | 3 18 2 2 1187 | <_> 1188 | 1189 | 4 0 2 3 1190 | <_> 1191 | 1192 | 4 3 2 1 1193 | <_> 1194 | 1195 | 4 6 2 1 1196 | <_> 1197 | 1198 | 4 6 2 5 1199 | <_> 1200 | 1201 | 4 7 5 2 1202 | <_> 1203 | 1204 | 4 8 4 3 1205 | <_> 1206 | 1207 | 4 18 2 2 1208 | <_> 1209 | 1210 | 5 0 2 2 1211 | <_> 1212 | 1213 | 5 3 4 4 1214 | <_> 1215 | 1216 | 5 6 2 5 1217 | <_> 1218 | 1219 | 5 9 2 2 1220 | <_> 1221 | 1222 | 5 10 2 2 1223 | <_> 1224 | 1225 | 6 3 4 4 1226 | <_> 1227 | 1228 | 6 4 4 3 1229 | <_> 1230 | 1231 | 6 5 2 3 1232 | <_> 1233 | 1234 | 6 5 2 5 1235 | <_> 1236 | 1237 | 6 5 4 3 1238 | <_> 1239 | 1240 | 6 6 4 2 1241 | <_> 1242 | 1243 | 6 6 4 4 1244 | <_> 1245 | 1246 | 6 18 1 2 1247 | <_> 1248 | 1249 | 6 21 2 1 1250 | <_> 1251 | 1252 | 7 0 3 7 1253 | <_> 1254 | 1255 | 7 4 2 3 1256 | <_> 1257 | 1258 | 7 9 5 1 1259 | <_> 1260 | 1261 | 7 21 2 1 1262 | <_> 1263 | 1264 | 8 0 1 4 1265 | <_> 1266 | 1267 | 8 5 2 2 1268 | <_> 1269 | 1270 | 8 5 3 2 1271 | <_> 1272 | 1273 | 8 17 3 1 1274 | <_> 1275 | 1276 | 8 18 1 2 1277 | <_> 1278 | 1279 | 9 0 5 3 1280 | <_> 1281 | 1282 | 9 2 2 6 1283 | <_> 1284 | 1285 | 9 5 1 1 1286 | <_> 1287 | 1288 | 9 11 1 1 1289 | <_> 1290 | 1291 | 9 16 1 1 1292 | <_> 1293 | 1294 | 9 16 2 1 1295 | <_> 1296 | 1297 | 9 17 1 1 1298 | <_> 1299 | 1300 | 9 18 1 1 1301 | <_> 1302 | 1303 | 10 5 1 2 1304 | <_> 1305 | 1306 | 10 5 3 3 1307 | <_> 1308 | 1309 | 10 7 1 5 1310 | <_> 1311 | 1312 | 10 8 1 1 1313 | <_> 1314 | 1315 | 10 9 1 1 1316 | <_> 1317 | 1318 | 10 10 1 1 1319 | <_> 1320 | 1321 | 10 10 1 2 1322 | <_> 1323 | 1324 | 10 14 3 3 1325 | <_> 1326 | 1327 | 10 15 1 1 1328 | <_> 1329 | 1330 | 10 15 2 1 1331 | <_> 1332 | 1333 | 10 16 1 1 1334 | <_> 1335 | 1336 | 10 16 2 1 1337 | <_> 1338 | 1339 | 10 17 1 1 1340 | <_> 1341 | 1342 | 10 21 1 1 1343 | <_> 1344 | 1345 | 11 3 2 2 1346 | <_> 1347 | 1348 | 11 5 1 2 1349 | <_> 1350 | 1351 | 11 5 3 3 1352 | <_> 1353 | 1354 | 11 5 4 6 1355 | <_> 1356 | 1357 | 11 6 1 1 1358 | <_> 1359 | 1360 | 11 7 2 2 1361 | <_> 1362 | 1363 | 11 8 1 2 1364 | <_> 1365 | 1366 | 11 10 1 1 1367 | <_> 1368 | 1369 | 11 10 1 2 1370 | <_> 1371 | 1372 | 11 15 1 1 1373 | <_> 1374 | 1375 | 11 17 1 1 1376 | <_> 1377 | 1378 | 11 18 1 1 1379 | <_> 1380 | 1381 | 12 0 2 2 1382 | <_> 1383 | 1384 | 12 1 2 5 1385 | <_> 1386 | 1387 | 12 2 4 1 1388 | <_> 1389 | 1390 | 12 3 1 3 1391 | <_> 1392 | 1393 | 12 7 3 4 1394 | <_> 1395 | 1396 | 12 10 3 2 1397 | <_> 1398 | 1399 | 12 11 1 1 1400 | <_> 1401 | 1402 | 12 12 3 2 1403 | <_> 1404 | 1405 | 12 14 4 3 1406 | <_> 1407 | 1408 | 12 17 1 1 1409 | <_> 1410 | 1411 | 12 21 2 1 1412 | <_> 1413 | 1414 | 13 6 2 5 1415 | <_> 1416 | 1417 | 13 7 3 5 1418 | <_> 1419 | 1420 | 13 11 3 2 1421 | <_> 1422 | 1423 | 13 17 2 2 1424 | <_> 1425 | 1426 | 13 17 3 2 1427 | <_> 1428 | 1429 | 13 18 1 2 1430 | <_> 1431 | 1432 | 13 18 2 2 1433 | <_> 1434 | 1435 | 14 0 2 2 1436 | <_> 1437 | 1438 | 14 1 1 3 1439 | <_> 1440 | 1441 | 14 2 3 2 1442 | <_> 1443 | 1444 | 14 7 2 1 1445 | <_> 1446 | 1447 | 14 13 2 1 1448 | <_> 1449 | 1450 | 14 13 3 3 1451 | <_> 1452 | 1453 | 14 17 2 2 1454 | <_> 1455 | 1456 | 15 0 2 2 1457 | <_> 1458 | 1459 | 15 0 2 3 1460 | <_> 1461 | 1462 | 15 4 3 2 1463 | <_> 1464 | 1465 | 15 4 3 6 1466 | <_> 1467 | 1468 | 15 6 3 2 1469 | <_> 1470 | 1471 | 15 11 3 4 1472 | <_> 1473 | 1474 | 15 13 3 2 1475 | <_> 1476 | 1477 | 15 17 2 2 1478 | <_> 1479 | 1480 | 15 17 3 2 1481 | <_> 1482 | 1483 | 16 1 2 3 1484 | <_> 1485 | 1486 | 16 3 2 4 1487 | <_> 1488 | 1489 | 16 6 1 1 1490 | <_> 1491 | 1492 | 16 16 2 2 1493 | <_> 1494 | 1495 | 17 1 2 2 1496 | <_> 1497 | 1498 | 17 1 2 5 1499 | <_> 1500 | 1501 | 17 12 2 2 1502 | <_> 1503 | 1504 | 18 0 2 2 1505 | 1506 | -------------------------------------------------------------------------------- /upstream/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello World! 4 | OpenCV_JavaAPI_Tests 5 | 6 | --------------------------------------------------------------------------------