https://github.com/fhooeaist/aistcv

OpenCV Wrapper for Java with Contribution Packages

https://github.com/fhooeaist/aistcv

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.5%) to scientific vocabulary

Keywords

image-processing java opencv wrapper
Last synced: 4 months ago · JSON representation

Repository

OpenCV Wrapper for Java with Contribution Packages

Basic Info
Statistics
  • Stars: 4
  • Watchers: 1
  • Forks: 0
  • Open Issues: 2
  • Releases: 0
Topics
image-processing java opencv wrapper
Created about 5 years ago · Last pushed over 4 years ago
Metadata Files
Readme License

README.md

DOI License: MPL 2.0 GitHub release Maven Central javadoc

logo

AistCV

AistCV is a Java wrapper for OpenCV.

There are already different great java wrappers for OpenCV available:

| Wrapper | Link | Advantages | Disadvantages | |---------|--------------------------------------------|------------------------------------------------------------|---------------------------------------------------------------------------| | OpenPnP | Link | Is based on the original OpenCV build (same packages, class names, ...) | Does not contain contrib modules | | JavaCV | Link | Contains contrib modules | Is a hand made wrapper of OpenCV (differs in packages, class names, ...). Is strongly based on static methods instead of object-oriented calls. |

Because of the disadvantages AistCV was created with the advantages of both worlds: AistCV is based on the original OpenCV build (same packages, class names, ...) and contains the contrib modules.

| Wrapper | Advantages | Disadvantages | |---------|------------------------------------------------------------|---------------------------------------------------------------------------| | AistCV | Is based on the original OpenCV build (same packages, class names, ...) and contains contains contrib modules | Currently does only support Windows and Linux (no MacOS support!) |

Getting Started

If you want to use the AistCV wrapper you have to:

  • include the maven dependency to your project. The AistCV Version corresponds to the wrapped OpenCV Version.
  • use the AistCVLoader.loadShared() to load native libraries before calling any wrapped functionality
  • also think about to call AistCVLoader.cleanupShared() at the very end of your program

xml <dependency> <groupId>science.aist</groupId> <artifactId>aistcv</artifactId> <version>4.5.3</version> </dependency>

Supported platforms

| Platform | Architecture | Build Readme | |----------|--------------|--------------| | Windows | 64bit | Link | | Linux | 64bit | Link |

How to build

If you have to build OpenCV on your own use the prepared build scripts (have a look at the certain build readmes) and add

  • libopencv_java<version>.so (Linux)
  • opencv_java<version>.dll (Windows)
  • opencv_videoio_ffmpeg<version>_64.dll (Windows)

to the main resource folder and

  • adapt the filenames in the nativelibrary.properties
  • remove the old libraries
  • add opencv-x.y.z.jar to lib folder as well as adapt the pom to use the correct opencv-x.y.z file.

Additional versions

If you build additional versions (e.g. MacOS or 32bit) you have to extend nativelibrary.properties and adapt the NativeLibraryProperty class.

FAQ

  • I am getting a java.lang.UnsatisfiedLinkError. What should I do?
    • This means that you have forgotten to load the native library via AistCVLoader.loadShared();.
  • I want to use OpenCV in Version x.y.z, which AistCV Version do I have to use?
    • The AistCV Version corresponds to the wrapped OpenCV version. So if you want e.g. to use OpenCV 4.3.0 use AistCV 4.3.0. Note that, there is not an AistCV Version for every OpenCV version. If you need a non-available version please create an issue.
  • I am using the Spring Framework, how can I load the native libraries?
    • Create a bean definition for the AistCVLoader which calls the loadShared() method for initialization (see XML definition below).

XML <?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- loads the OpenCV DLL --> <bean id="openCVLoader" class="aist.science.aistcv.AistCVLoader" init-method="loadShared"/> <!-- further beans --> </beans>

Contributing

First make sure to read our general contribution guidelines.

Licence

Copyright (c) 2020 the original author or authors. DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.

This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.

The following code is under different licence and copyright:

| Licence | Filepaths | |-|-| | 3-Clause BSD
see LICENCE_BSD | src/main/java/science/aist/aistcv/* |

Research

If you are going to use this project as part of a research paper, we would ask you to reference this project by citing it.

DOI

Owner

  • Name: Advanced Information Systems and Technology
  • Login: FHOOEAIST
  • Kind: organization
  • Email: contact@aist.science
  • Location: University of Applied Sciences Upper Austria, Softwarepark 11, 4232 Hagenberg, Austria

The research group AIST researches software solutions in the fields of eHealth, Machine Learning and Data Mining as well as Computer Vision.

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 7
  • Total pull requests: 3
  • Average time to close issues: 3 months
  • Average time to close pull requests: 2 days
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 0.14
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • pointan (6)
  • 2er0 (1)
Pull Request Authors
  • pointan (2)
  • 2er0 (1)
Top Labels
Issue Labels
confirmed (6) hot (1) review (1)
Pull Request Labels
confirmed (2) review (2)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 1
  • Total dependent repositories: 1
  • Total versions: 2
repo1.maven.org: science.aist:aistcv

AIST CV

  • Versions: 2
  • Dependent Packages: 1
  • Dependent Repositories: 1
Rankings
Dependent repos count: 20.8%
Dependent packages count: 33.0%
Average: 41.9%
Stargazers count: 55.2%
Forks count: 58.7%
Last synced: 4 months ago

Dependencies

pom.xml maven
  • org.testng:testng 6.11 test