GithubHelp home page GithubHelp logo

oscardelama / imgnoiser Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 3.0 21.79 MB

Measure, profile and characterize digital camera sensor noise

License: GNU General Public License v2.0

R 53.89% Rebol 0.39% HTML 45.72%

imgnoiser's Introduction

The ๐Ÿ“ท imgnoiser R Package

Build Status

The imgnoiser (IMaGe NOISE) R package contains tools for the measurement, analysis and characterization of raw image noise from digital CMOS sensor cameras.

The focus of imgnoiser is to factorize most of the software environment, configuration concepts, data definitions and conventions required for image noise analysis, in one single point, to easily share and reuse noise analysis papers without the need to deliver, define and explain repeatedly the software environment and instructions to reproduce most of the results.

Installation

You can use the devtools R package to install the current version from Github:

devtools::install_github('oscardelama/imgnoiser')

Usage

In the wiki pages you will find detailed documentation and examples of the general workflow using imgnoiser.



These wiki pages are based on the package vignettes. If you install the package, you will be able to access this documentation from your R session using:

browseVignettes('imgnoiser')

Application

The article "Introducing the imgnoiser R package" is a good introduction of this package. It presents the package reusing and extending the documentation in the wiki pages of this package. If you havent read yet those wiki pages we encorage you to read the article.

Other articles using the imgnoiser package and including detailed code of its usage are:

Documentation

Most software, including imgnoiser is developed in an iterative way: you decide to include some functionality or service in the product, you design the interface, develop the service, and during the tests you find some rough edges to polish and unhandled situations, so you iterate all over again until you are satisfied. Then you start to document the new functionality.

In this context, most of the package documentation is complete and accurate, but recently added features may not be complete or exists yet.

I have found an Issue

The package is continuously tested, but the tests neither include every package feature nor all their possible usage combinations. Notice for example that a function with 4 parameters and an average of 3 substantially different possible values per parameter, requires 4^3 = 64 tests. If in addition to that, you take into account that this function output is the input of another similar function (4 parameters, 3 values per parameter), now we need 64*64 = 4,096 tests just to be 100% sure this two functions work, individually and together, as expected. All of this explains the real software tester is the final user, and that is the reason for periodic software updates.

However, all of this do not dismiss a developer to make its best reasonable effort to ensure the quality of its product. To be honest, nowadays, the Travis CI badge above does not reflect the quality assurance I wish to reach when this product is more mature and stable in its features and interfaces.

In the iterative development effort, most of the package functionality is reasonable well tested but yet not stressed in real life intensive use; some recently added code is still in test phase.

If you have found an issue please file it here.

License

This package is free and open source software, licensed under GPL.

imgnoiser's People

Contributors

oscardelama avatar

Stargazers

 avatar  avatar Q. Xu avatar  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.