https://github.com/hcmlab/discover

DISCOVER is an open-source software framework designed to facilitate computational-driven data exploration in human behavior analysis. This user-friendly and modular platform streamlines complex methodologies, enabling researchers across disciplines to engage in detailed behavioral analysis without extensive technical expertise.

https://github.com/hcmlab/discover

Science Score: 26.0%

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

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.8%) to scientific vocabulary
Last synced: 6 months ago · JSON representation

Repository

DISCOVER is an open-source software framework designed to facilitate computational-driven data exploration in human behavior analysis. This user-friendly and modular platform streamlines complex methodologies, enabling researchers across disciplines to engage in detailed behavioral analysis without extensive technical expertise.

Basic Info
  • Host: GitHub
  • Owner: hcmlab
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 10.4 MB
Statistics
  • Stars: 5
  • Watchers: 5
  • Forks: 0
  • Open Issues: 2
  • Releases: 2
Created almost 2 years ago · Last pushed 7 months ago
Metadata Files
Readme License

README.md

DISCOVER - A Modular Software Framework for Human Behavior Analysis

Overview

DISCOVER is an open-source software framework designed to facilitate computational-driven data exploration in human behavior analysis. This user-friendly and modular platform streamlines complex methodologies, enabling researchers across disciplines to engage in detailed behavioral analysis without extensive technical expertise.

Key Features

  • Modularity: DISCOVER's modular architecture allows for easy integration of new features and customization.
  • User-Friendliness: Intuitive interface simplifies the data exploration process, making it accessible to non-technical users.
  • Flexibility: Supports a wide range of data types and analysis workflows.
  • Scalability: Handles large datasets with ease.

Use Cases

  • Interactive Semantic Content Exploration
  • Visual Inspection
  • Aided Annotation
  • Multimodal Scene Search

Getting Started

DISCOVER provides a set of blueprints for exploratory data analysis, serving as a starting point for researchers to engage in detailed behavioral analysis.

Prerequesites

Before starting to install DISCOVER you need to install Python and FFMPEG. While other Python versions may work as well the module is only tested for the following versions:

  • 3.9.x
  • 3.10.x
  • 3.11.x

You can download the current version of python for your system here.

Download the current version off FFMPEG binaries from here for your system and make sure to extract them to a place that is in your system path. It is recommended to setup a separate virtual environment to isolate the NOVA server installation from your system python installation. To do so, open a terminal at the directory where your virtual environment should be installed and paste the following command:

python -m venv discover-venv

You can then activate the virtual environment like this:

.\discover-venv\Scripts\activate

Setup

Install DISCOVER using pip like this:

pip install hcai-discover

Start the server

To start DISCOVER you just open a Terminal and type

discover

DISCOVER takes the following optional arguments as input:

``` --env: '' : Path to a dotenv file containing your server configuration

--host: 0.0.0.0 : The IP for the Server to listen

--port : 8080 : The port for the Server to be bound to

--cml_dir : cml : The cooperative machine learning directory containing DISCOVER modules (available at: https://github.com/hcmlab/discover-modules)

--data_dir : data : Directory where the data resides

--cache_dir : cache : Cache directory for Models and other downloadable content

--tmp_dir : tmp : Directory to store data for temporary usage

--log_dir : log : Directory to store logfiles.

--use_tls : Enable TLS/SSL for HTTPS connections (requires certificates) ```

Internally DISCOVER converts the input to environment variables with the following names:

DISCOVER_HOST, DISCOVER_PORT, DISCOVER_CML_DIR, DISCOVER_DATA_DIR, DISCOVER_CACHE_DIR, DISCOVER_TMP_DIR, DISCOVER_LOG_DIR, DISCOVER_USE_TLS

All variables can be either passed directly as commandline argument, set in a dotenv file or as system wide environment variables. During runtime the arguments will be prioritized in this order commandline arguments -> dotenv file -> environment variable -> default value.

If the server started successfully your console output should look like this: Starting DISCOVER v1.0.0... HOST: 0.0.0.0 PORT: 8080 DISCOVER_CML_DIR : cml DISCOVER_DATA_DIR : data DISCOVER_CACHE_DIR : cache DISCOVER_TMP_DIR : tmp DISCOVER_LOG_DIR : log ...done DISCOVER HTTP server starting on 0.0.0.0:8080

Modules

DISCOVER modules contain the machine learning models and processing pipelines. You can get the official modules from:

https://github.com/hcmlab/discover-modules

Clone or download the modules repository and set the --cml_dir parameter to point to the modules directory.

You can find the full documentation of the project here.

Citation

If you use DISCOVER consider citing the following paper:

@article{schiller2024discover, title={DISCOVER: A Data-driven Interactive System for Comprehensive Observation, Visualization, and ExploRation of Human Behaviour}, author={Schiller, Dominik and Hallmen, Tobias and Withanage Don, Daksitha and Andr{\'e}, Elisabeth and Baur, Tobias}, journal={arXiv e-prints}, pages={arXiv--2407}, year={2024} }

Owner

  • Name: Human Centered Artifical Intelligence
  • Login: hcmlab
  • Kind: organization
  • Location: Augsburg, Germany

Human Centered Artifical Intelligence Lab of the Augsburg University

GitHub Events

Total
  • Issues event: 5
  • Watch event: 5
  • Member event: 1
  • Push event: 47
  • Pull request event: 4
  • Create event: 4
Last Year
  • Issues event: 5
  • Watch event: 5
  • Member event: 1
  • Push event: 47
  • Pull request event: 4
  • Create event: 4

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 39
  • Total Committers: 4
  • Avg Commits per committer: 9.75
  • Development Distribution Score (DDS): 0.59
Past Year
  • Commits: 37
  • Committers: 4
  • Avg Commits per committer: 9.25
  • Development Distribution Score (DDS): 0.568
Top Committers
Name Email Commits
saveli a****s@g****m 16
Dominik Schiller s****m@u****m 14
dominik 9****m@u****m 8
Dominik Schiller d****r@m****m 1
Committer Domains (Top 20 + Academic)
me.com: 1

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 4
  • Total pull requests: 11
  • Average time to close issues: 21 days
  • Average time to close pull requests: 1 minute
  • Total issue authors: 2
  • Total pull request authors: 1
  • Average comments per issue: 0.25
  • Average comments per pull request: 0.0
  • Merged pull requests: 11
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 11
  • Average time to close issues: 21 days
  • Average time to close pull requests: 1 minute
  • Issue authors: 2
  • Pull request authors: 1
  • Average comments per issue: 0.25
  • Average comments per pull request: 0.0
  • Merged pull requests: 11
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • saveli (3)
  • Marc-Lorenz (1)
Pull Request Authors
  • shelm (11)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 390 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 7
  • Total maintainers: 2
pypi.org: hcai-discover

DISCOVER is a lightweight server designed to create and manage machine learning jobs based on requests.

  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 390 Last month
Rankings
Dependent packages count: 10.3%
Average: 34.1%
Dependent repos count: 57.9%
Maintainers (2)
Last synced: 7 months ago