An ACES Input Device Transform (IDT) calculator
Project description
ACES Input Device Transform Calculator Apps
Table of Contents
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 - 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.
The root JSON file describes which image sequences correspond to which exposure value, flatfield and grey card.
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:
Implicit Specification
The implicit specification of the IDT archive requires that the image sequences are stored in specific directories that match the JSON schema:
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:
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file idt_calculator-0.1.0.tar.gz.
File metadata
- Download URL: idt_calculator-0.1.0.tar.gz
- Upload date:
- Size: 4.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6433121ce44845578f100e955b15750a0f52fd6c52d538175ddd132a0125fd5
|
|
| MD5 |
3db0b18c9d52b5de004894d6a0a508e9
|
|
| BLAKE2b-256 |
a5e014f244469a99d8693e5773f237d059fd7399bd111836165bd205b9a6d105
|
File details
Details for the file idt_calculator-0.1.0-py3-none-any.whl.
File metadata
- Download URL: idt_calculator-0.1.0-py3-none-any.whl
- Upload date:
- Size: 45.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7a2c5f02cb7678a248afc951d76754f90dce492e768a8079c78a881fbfa7011
|
|
| MD5 |
612a450814b04226c1a12caf7d84de82
|
|
| BLAKE2b-256 |
ca2d5a2e5243db6e6a64370232a85d409108bb603d12bb2ba577f0b99dc83f6b
|