Giter VIP home page Giter VIP logo

mmwtv's Introduction

###OQAT - Objective Quality Assessment Toolkit

####About

OQAT was developed and build in 2012 as a project for the "Praxis der Softwareentwicklung" course at the KIT. The main objective of OQAT is to provide means for objective quality assessment of video encoding (or any kind of video processing) software. An other important thing about OQAT is its modularity, you can extend nearly every part of this software with plugins.

####How does it work? The process of using OQAT is simple enough, lets say you are developing a video encoder and it produces poor results if certain distortions in the source video occur. At this point already you can use OQAT. OQAT in its current state can only read/write/display YUV420 videos, but you can write a Video Handler Plugin for any format you like and just drop it into your plugin folder, OQAT will then be able to use the new format with all your other plugins. As it turns out you dont have most of your reference video files with that kind of distortion. So you write (or use one of the provided, if it fits your needs) a Filter Plugin (takes one video, distortes it in some way and writes the result to disk) for OQAT and execute it on all your videos. After that you can begin to develop a fix for your encoder. To be able to document objectively about the effectiveness of your fix you can write a Metric Plugin (some are provided) and execute it (two input videos, one output video according to the implemented quality metric) on the results the encoder produced before the fix and the videos it produces with your fix. To be able to get the most information out of your Metric Plugin you can write a Presentation Plugin to format the data in some meaningfull way (like a diagram, video, motion vector overlay, ...).

In addition to the functionality described above there are many more feateures, like

  • Project Handling

  • Task Queue
    This is provided by the only inextendible plugin, called Macro Plugin. The Task Queue lets you arrange your filters/metrics/videos in a certain order and duration of execution (e.g. execute Noise Filter only the first 10 seconds but after your Custom Filter was executed).

  • Extensive use of Plugins
    Nearly every element of OQAT (except some GUI elements and the core) is a plugin and can be extended (even at runtime) , which leaves the user very much control over how OQAT works. The other nice effect of OQAT being build mostly out of plugins is the relaitvely small core, which leaves less space for bugs.

#####Technology

#####Note Even if you read the above carefully you still wouldn't know half of OQATs functionallity, you should either try it out (a compiled version can be found in /OQAT_release) or dive into the code (in /Implementierung). If you understand German you could have a look into /docs/Entwurf.pdf for some general overview on OQATs architecture.

mmwtv's People

Contributors

rtur avatar sleidig avatar grilledsheep avatar alexandermonev avatar georgermantraut avatar

Watchers

James Cloos avatar  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.