Skip to main content

ACES Input Device Transform Calculator Apps

CLA assistant

Table of Contents

  1. Introduction
  2. Package Contents
  3. Prerequisites
  4. Installation
  5. Usage
  6. License

Introduction

This repository contains the source for the Academy Input Device Transform (IDT) online Apps:

Academy Input Device Transform (IDT) Calculator - P-2013-001 Academy Input Device Transform (IDT) Calculator - P-2013-001

Academy Input Device Transform (IDT) Calculator - Prosumer Camera Academy Input Device Transform (IDT) Calculator - Prosumer Camera

Package Contents

  • aces/ - Python package containing the API code.
  • apps/ - Python package of the online Apps.
  • assets/ - Assets, e.g. CSS files for the online Apps.
  • docs/ - Documentation for the API code.

Prerequisites

Docker (Users)

Docker is the only requirement to run the Apps locally.

Python & Poetry (Developers)

Poetry is recommended for developers willing to contribute to the project. The pyproject.toml file defines the various packages required. It is also possible to use the requirements.txt file to generate a virtual environment with all the dependencies.

Installation

Docker (Users)

$ docker build --platform=linux/amd64 \
-t ampas/ampas-apps:latest \
-t ampas/ampas-apps:latest-amd64 .

The apps can then be launched locally as follows:

$ docker run -d \
--name=ampas-apps \
-p 8010:8000 ampas/ampas-apps:latest-amd64

Python & Poetry (Developers)

$ poetry install

The Apps can then be launched locally as follows:

$ poetry run python index.py

or

$ poetry run invoke docker-run

Usage

Each App has an About tab describing the given App and its usage.

Prosumer Camera IDT Archive

The IDT App for Prosumer Cameras requires a Zip archive file, i.e. IDT archive, with a specific structure and content.

Explicit Specification

The explicit specification of the IDT archive requires a root JSON file describing the paths to the various image sequences.

IDT Archive Explicit Structure

The root JSON file describes which image sequences correspond to which exposure value, flatfield and grey card.

IDT Archive Explicit JSON File

The JSON schema for the IDT archive can be used to validate a new user file using a validator and is defined as follows:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "header": {
      "type": "object",
      "properties": {
        "schema_version": {
          "type": "string"
        },
        "aces_transform_id": {
          "type": "string"
        },
        "aces_user_name": {
          "type": "string"
        },
        "camera_make": {
          "type": "string"
        },
        "camera_model": {
          "type": "string"
        },
        "iso": {
          "type": "number"
        },
        "temperature": {
          "type": "number"
        },
        "additional_camera_settings": {
          "anyOf": [{ "type": "string" }, { "type": "null" }]
        },
        "lighting_setup_description": {
          "anyOf": [{ "type": "string" }, { "type": "null" }]
        },
        "debayering_platform": {
          "anyOf": [{ "type": "string" }, { "type": "null" }]
        },
        "debayering_settings": {
          "anyOf": [{ "type": "string" }, { "type": "null" }]
        },
        "encoding_colourspace": {
          "anyOf": [{ "type": "string" }, { "type": "null" }]
        }
      },
      "required": ["schema_version", "camera_make", "camera_model"]
    },
    "data": {
      "type": "object",
      "properties": {
        "colour_checker": {
          "type": "object",
          "patternProperties": {
            "[+-]?[0-9]+[.]?[0-9]*([e][+-]?[0-9]+)?": {
              "type": "array",
              "items": [
                {
                  "type": "string"
                }
              ]
            }
          },
          "additionalProperties": false
        },
        "flatfield": {
          "type": "array",
          "items": [
            {
              "type": "string"
            }
          ]
        },
        "grey_card": {
          "type": "array",
          "items": [
            {
              "type": "string"
            }
          ]
        }
      },
      "required": ["colour_checker"]
    }
  },
  "required": ["header", "data"]
}

Floating Point Exposure Values

Floating point exposure values are also supported as keys in the JSON file:

IDT Archive Explicit Structure - Floating Point Values

Implicit Specification

The implicit specification of the IDT archive requires that the image sequences are stored in specific directories that match the JSON schema:

IDT Archive Implicit Structure

The implicit specification cannot represent some of the metadata that the explicit specification supports, e.g. manufacture or exposure_settings.

Floating Point Exposure Values

It is also possible to use floating point exposure values by naming the directories accordingly:

IDT Archive Implicit Structure - Floating Point Values

License

This project is licensed under the terms of the LICENSE agreement.

Contributing

Thank you for your interest in contributing to our project. Before any contributions can be accepted, we require contributors to sign a Contributor License Agreement (CLA) to ensure that the project can freely use your contributions. You can find more details and instructions on how to sign the CLA in the CONTRIBUTING.md file.

Support

For support, please visit ACESCentral.com

Metadata

Release files for idt-calculator 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for idt-calculator 0.1.0
File Size Uploaded Provenance Actions
idt_calculator-0.1.0.tar.gz 4.4 MB Without provenance Details for idt_calculator-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for idt-calculator 0.1.0
File Interpreter ABI Platform Actions
idt_calculator-0.1.0-py3-none-any.whl Python 3 none any Details for idt_calculator-0.1.0-py3-none-any.whl

Total release size: 4.4 MB

Release files / idt_calculator-0.1.0.tar.gz

Download URL idt_calculator-0.1.0.tar.gz
Size 4.4 MB
Tags Source
SHA-256 checksum
How to use checksums
e6433121ce44845578f100e955b15750a0f52fd6c52d538175ddd132a0125fd5
BLAKE2b-256 checksum
How to use checksums
a5e014f244469a99d8693e5773f237d059fd7399bd111836165bd205b9a6d105
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.12

Release files / idt_calculator-0.1.0-py3-none-any.whl

Download URL idt_calculator-0.1.0-py3-none-any.whl
Size 45.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b7a2c5f02cb7678a248afc951d76754f90dce492e768a8079c78a881fbfa7011
BLAKE2b-256 checksum
How to use checksums
ca2d5a2e5243db6e6a64370232a85d409108bb603d12bb2ba577f0b99dc83f6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.12

Security for idt-calculator 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page