All Projects → vitrivr → cottontaildb

vitrivr / cottontaildb

Licence: MIT license
Cottontail DB is a column store aimed at multimedia retrieval. It allows for classical boolean as well as vector-space retrieval (nearest neighbour search) used in similarity search using a unified data and query model.

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to cottontaildb

vitrivr-ng
vitrivr NG is a web-based user interface for searching and browsing mixed multimedia collections. It uses cineast as a backend
Stars: ✭ 14 (-12.5%)
Mutual labels:  retrieval, multimedia-retrieval
UDLF
An Unsupervised Distance Learning Framework for Multimedia Retrieval
Stars: ✭ 40 (+150%)
Mutual labels:  multimedia, retrieval
emacs-application-framework
EAF, an extensible framework that revolutionizes the graphical capabilities of Emacs
Stars: ✭ 2,454 (+15237.5%)
Mutual labels:  multimedia
MHCLN
Deep Metric and Hash Code Learning Network for Content Based Retrieval of Remote Sensing Images
Stars: ✭ 30 (+87.5%)
Mutual labels:  retrieval
ffmpegd
FFmpeg websocket server for ffmpeg-commander.
Stars: ✭ 37 (+131.25%)
Mutual labels:  multimedia
cineast
Cineast is a multi-feature content-based mulitmedia retrieval engine. It is capable of retrieving images, audio- and video sequences as well as 3d models based on edge or color sketches, textual descriptions and example objects.
Stars: ✭ 51 (+218.75%)
Mutual labels:  retrieval
smk
SMK - Simple multimedia kit - C++ WebAssembly
Stars: ✭ 89 (+456.25%)
Mutual labels:  multimedia
awesome-puredata
A list of Pure Data libraries, abstractions, projects and presentations
Stars: ✭ 36 (+125%)
Mutual labels:  multimedia
FieldedSDM
Fielded Sequential Dependence Model (code and runs)
Stars: ✭ 32 (+100%)
Mutual labels:  retrieval
HumanRecognition
Person Recognition System on PIPA dataset
Stars: ✭ 28 (+75%)
Mutual labels:  multimedia
SSffmpegVideoOperation
This is a library of FFmpeg for android... 📸 🎞 🚑
Stars: ✭ 261 (+1531.25%)
Mutual labels:  multimedia
conan-sfml
[OBSOLETE] The recipe is now in https://github.com/bincrafters/community
Stars: ✭ 13 (-18.75%)
Mutual labels:  multimedia
CVPR2020 PADS
(CVPR 2020) This repo contains code for "PADS: Policy-Adapted Sampling for Visual Similarity Learning", which proposes learnable triplet mining with Reinforcement Learning.
Stars: ✭ 57 (+256.25%)
Mutual labels:  retrieval
rtsp-types
RTSP (RFC 7826) types and parsers/serializers
Stars: ✭ 16 (+0%)
Mutual labels:  multimedia
MoTIS
Mobile(iOS) Text-to-Image search powered by multimodal semantic representation models(e.g., OpenAI's CLIP). Accepted at NAACL 2022.
Stars: ✭ 60 (+275%)
Mutual labels:  retrieval
shrec17
Supplementary code for SHREC 2017 RGB-D Object-to-CAD Retrieval track
Stars: ✭ 27 (+68.75%)
Mutual labels:  retrieval
RETRO-pytorch
Implementation of RETRO, Deepmind's Retrieval based Attention net, in Pytorch
Stars: ✭ 473 (+2856.25%)
Mutual labels:  retrieval
ebml-go
A pure Go implementation of bi-directional EBML encoder/decoder
Stars: ✭ 60 (+275%)
Mutual labels:  multimedia
anchovy
D language multimedia library for games and gui applications
Stars: ✭ 22 (+37.5%)
Mutual labels:  multimedia
pd-lua
Lua bindings for Pd, updated for Lua 5.3+
Stars: ✭ 20 (+25%)
Mutual labels:  multimedia

Cottontail DB

Cottontail CI Maven Central

Cottontail DB is a column store aimed at multimedia retrieval. It allows for classical boolean as well as vector-space retrieval, i.e., nearest-neighbours lookup, as used in similarity search. If you're interested in using or contributing to Cottontail DB, please have a look at the Wiki.

Setup

Cottontail DB requires Java 11 or newer (Open JDK or Oracle JDK should both work). Please clone this repository using:

git clone https://github.com/vitrivr/cottontaildb.git

The entire project is a Gradle project and comes with a Gradle Wrapper so things should work pretty much out of the box.

Building and starting Cottontail DB

A distribution of Cottontail DB can be built from the sources using the Gradle tasks distTar or distZip. This distribution includes the actual DBMS as well as the CLI. Distributions are stored relatively to the project root in build/distributions as either TAR or ZIP file.

You can also build an executable JAR of the DBMS and the CLI with the cottontaildb-dbms:shadowJar or cottontaildb-cli:shadowJar gradle tasks respectively. Those JARs are stored relative to the respective module.

All the details as to how Cottontail DB can be setup and started can be found in the Wiki.

Using Cottontail DB Docker Image

Cottontail DB is available as Docker Image from DockerHub. Please have a look at the repository instructions and/or the Wiki for more information.

Connecting to Cottontail DB

Communication with Cottontail DB is facilitated by gRPC. By default, the gRPC endpoint runs on port 1865. To connect to Cottontail DB, you must first generate the model classes and stubs using the gRPC library of your preference based on the programming environment you use. You can find the latest gRPC definitions here.

For Kotlin and Java, there is also a Maven dependency, which includes pre-built stubs and models as well as a client API:

<dependency>
  <groupId>org.vitrivr</groupId>
  <artifactId>cottontaildb-proto</artifactId>
  <version>0.13.0</version>
</dependency>

More information as to how to connect to and use Cottontail DB can be found in the Wiki and the example repository.

CLI / 🥕-LI

Cottontail DB comes with a CLI application called 🥕-LI. The CLI is bundled with the distribution but can also be built separately using the cottontaildb-cli:shadowJar gradle task.

Compatibility with vitrivr

Please refer to the compatibility matrix to check for compatibility with other vitrivr components.

Citation

We kindly ask you to refer to the following paper in publications mentioning or employing Cottontail DB:

Ralph Gasser, Luca Rossetto, Silvan Heller, Heiko Schuldt. Cottontail DB: An Open Source Database System for Multimedia Retrieval and Analysis. In Proceedings of 28th ACM International Conference on Multimedia (ACM MM 2020), Seattle, USA, 2020

Link: https://doi.org/10.1145/3394171.3414538

Bibtex:

@inproceedings{10.1145/3394171.3414538,
    author = {Gasser, Ralph and Rossetto, Luca and Heller, Silvan and Schuldt, Heiko},
    title = {Cottontail DB: An Open Source Database System for Multimedia Retrieval and Analysis},
    year = {2020},
    isbn = {9781450379885},
    publisher = {Association for Computing Machinery},
    address = {New York, NY, USA},
    doi = {10.1145/3394171.3414538},
    booktitle = {Proceedings of the 28th ACM International Conference on Multimedia},
    pages = {4465–4468},
    numpages = {4},
    keywords = {open source, multimedia retrieval, database, multimedia indexing, data management system},
    location = {Seattle, WA, USA},
    series = {MM '20}
}

Credits

Cottontail DB is based on the ideas presented in the following papers:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].