AcademySoftwareFoundation / AcademySoftwareFoundation/rawtoaces

Investigate using synthetic images for unit testing

Open
#203 0 comments 0 reactions 0 assignees View on GitHub
difficulty/hard enhancement
Dominant language
C++
Stars
193
Forks
65
Avg merge
3d 3h
Merged PRs (30d)
6

Description

We currently have decent unit test coverage of the core functionality, which is mostly math functions.

In order to have some end-to-end testing we need test images. Ideally we'd need one or several raw images for each camera we have in the database, and the corresponding reference .exr images. That is a lot of data to obtain, host, and to get onto the CI runners.

We should look at potentially creating synthetic images for testing on the fly. For the camera which we have spectral sensitivity curves for, we can predict the pixel values the camera would have under given lighting conditions. We could look at generating fake colour chart images on the fly, pass them through rawtoaces and look how the output colour values match up with the expected values.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing core math unit tests, the camera database, and the available spectral sensitivity curves. Compare the proposed synthetic colour-chart approach with the current rawtoaces flow and reference .exr expectations; done means a documented, reproducible end-to-end test strategy that can run on CI without hosting large image sets.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
computer-vision, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.