Giter Site home page Giter Site logo

rdplot's Introduction

RDPlot

RDPlot is a tool for plotting rate distortion curves. In particular, it can

  • Parse the output of reference software such as HM, SHM, or VTM.
  • Parse data points from xml-formatted files.
  • Parse data from csv-formatted files.
  • Calculate Bjontegaard Delta statistics.
  • Export plots and BD statistics for camera ready presentation.

It was developed along the design principle of easy extensibility. If no parser for your data is available, you can consider to introduce a new parser. If you feel like your parser would be of interest for others, please submit a PR.

Build status

Travis CI
TravisCI

Code Coverage

https://coveralls.io/repos/github/IENT/RDPlot/badge.svg?branch=master

Installation

RDPlot is available on PyPi. Therefore, you can directly install RDPlot via pipx:

pipx install rdplot

This should work on all platforms. However, on Apple silicon you might have to fiddle a bit and use Rosetta.

Building from Source

We assume that you are familiar to Python development for the following sections. If you run into any problems, don't hesitate to use the Issue tracker.

If you need system packages that conflict with the packages required for RDPlot, you can use a python virtual environment (see below).

When you are inside a virtual environment, python ignores all system packages and instead uses a dedicated environment, allowing you to install packages with pip that would otherwise conflict with system packages and/or different versions. The pitfall is that you need to activate the environment each time you want to use the program.

You can find more info on virtual environments at https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/.

venv is included in python since version 3.3. If your python version is older consider upgrading, or install venv using:

sudo pip install virtualenv

Download RDPlot. Make sure you do this at a place where it can stay:

git clone --depth 1 https://github.com/IENT/RDPlot
cd RDPlot

Create a virtualenv named "env" inside the RDPlot directory:

python3 -m venv env

Activate the venv and install dependencies:

source env/bin/activate
pip3 install --upgrade pip gitpython

Build and install RDPlot:

python3 setup.py sdist
pip3 install --no-binary rdplot --upgrade dist/rdplot-*.tar.gz

Leave the environment:

deactivate

Remember to activate the environment every time you want to run RDPlot:

cd RDPlot
source env/bin/activate
rdplot
deactivate

To uninstall, simply delete the RDPlot directory.

Note: things are not tested for Mac. You may have to fiddle a little bit. Please contribute, if you have ideas for improvements.

First of all you need to install python3. You can get it here.

Moreover, install all the requirements:

cd src/rdplot
pip3 install -r requirements.txt

Additionally install py2app:

pip3 install py2app

Then navigate back to the top level and build an app in alias mode:

cd ../..
python3 setup.py py2app -A

Now you should have an app in the dist folder.

Note: This app contains hard links to the directory with the source. It is strongly recommended to clone the whole directory to your Applications folder. Then you can simply build the app and launch it from the internal search. Another possibility is to put an alias in your Applications folder and/or attach it to the Dock.

If you want to update the app, it is fairly easy: Navigate to the local copy of the repository (now most probably in your Applications folder) and then:

git pull
python3 setup.py py2app -A

Done!

Uninstall is also simple: Just delete the local copy of the repositories and all aliases.

Running from repository without installation

If you want to help improving RDPlot, you most probably need to run it directly from source for development and testing.

Linux

You can start RDPlot from the command line with:

PYTHONPATH=~PATH_TO_RDPLOT/src/ python3 PATH_TO_RDPLOT/src/rdplot/__main__.py

If you want to start the tool out of an IDE, make sure that you have set the PYTHONPATH environment variable correctly.

rdplot's People

Contributors

aachenmax avatar harharlinks avatar herrzinter avatar jensac avatar jkuntzer avatar malte3 avatar mwiflms avatar nolyn avatar tillvogel avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.