Interpolation and complete refactor of image render pipeline, leading to version 2#58
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Refactors the rendering pipeline by introducing a dedicated pixels layer and updating the image/zoom flows to use it, while adding spatial (--i-pixels) and temporal (--i-frames) interpolation features and bumping the project to v2.0.0.
Changes:
- Split/rewired rendering responsibilities to use
tranzoom.core.pixelsobjects/APIs across CLI, core, DB, and tests. - Added pixel upscaling (
--i-pixels) and animation frame interpolation (--i-frames) and updated fixtures/hashes accordingly. - Updated docs, scripts, and dependency pins for the v2 release.
Reviewed changes
Copilot reviewed 24 out of 35 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/core/zoom_test.py | Updates zoom hash/JSON stability tests to use pixels.RenderAnimationParameters. |
| tests/core/pixels_test.py | Adds coverage for pixels JSON/hash stability and Pixels round-trip behavior. |
| tests/core/image_test.py | Removes old image.RenderParameters stability tests (moved to pixels_test.py). |
| tests/core/frame_test.py | Updates expected string formats and adds parametrization IDs. |
| tests/cli/base_test.py | Switches basic image inspection to pixels.GetBasicData() and updates expected dimensions. |
| tests_integration/test_installed_cli.py | Updates installed-CLI integration checks to use pixels.ObjInfo and new metadata/hashes. |
| src/tranzoom/core/zoom.py | Refactors interpolation/render path to operate on pixels.Pixels and adds interpolated frame hashing. |
| src/tranzoom/core/queries.py | Minor docstring tightening. |
| src/tranzoom/core/image.py | Narrows image.py to computation + metadata generation; rendering now returns pixels.Pixels. |
| src/tranzoom/core/frdb.py | Updates DB render pipeline to produce/overlay/resize pixels.Pixels and stores final hashes. |
| src/tranzoom/core/frame.py | Updates string formatting and docstrings; supports size calculations with i_pixels. |
| src/tranzoom/core/ai.py | Updates AI loop to embed evaluation metadata via Pixels.meta then emit PNG bytes. |
| src/tranzoom/cli/zoomcommand.py | Updates CLI wiring to use pixels.AnimationEncoding and render animation params. |
| src/tranzoom/cli/imagecommand.py | Updates image read/clean flows to use pixels.GetBasicData() and Pixels encoders. |
| src/tranzoom/cli/base.py | Wires CLI config/options through pixels types; updates animation pipeline and output logging. |
| src/tranzoom/init.py | Bumps version to 2.0.0. |
| scripts/make_test_images.sh | Updates fixture generation commands for interpolation and new defaults. |
| scripts/make_demo_images.sh | Updates demo commands for new interpolation behavior/options. |
| requirements.txt | Updates pinned runtime dependencies. |
| README.md | Documents interpolation modes and updates CLI examples/output snippets. |
| pyproject.toml | Bumps version to 2.0.0 and updates dev tooling pin(s). |
| poetry.lock | Updates locked dependency versions/hashes. |
| CHANGELOG.md | Adds 2.0.0 release notes describing the refactor + interpolation features. |
| .vscode/settings.json | Updates spelling/word list entries for new symbols/terms. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.