oniazusa
Transform photos into visual-novel backgrounds inspired by Leaf's Kizuato (痕) style.
oniazusa is a standalone CLI for testing the mood, tint, pixel structure, and screen-tone
feel of low-resolution, memory-like backgrounds before they are folded into skirts-colour.
It is also expected to act as reusable image-processing infrastructure for other tools.
Why oniazusa?
The target is not "anime filter" in the broad web sense. The tool is trying to capture a specific late-90s visual-novel background feeling: reduced detail, tinted paper-like light, and dithered depth instead of photographic realism.
That means the output style matters, but interface stability matters too, because this tool is
meant to be called from name-name-based workflows and other repos.
Install
uv tool install oniazusa
Or from source:
git clone https://github.com/kako-jun/oniazusa.git
cd oniazusa
uv sync --group dev
uv run oniazusa --help
Usage
Single image
oniazusa photo.jpg -o background.png
Batch processing
oniazusa ./photos/ -o ./backgrounds/
Change tint and dithering levels
oniazusa photo.jpg --tint green --levels 24 -o background.png
Shape the gradient before the visible grid
oniazusa photo.jpg --pre-blur 1.8 --glow 0.24 -o background.png
Current behavior
- bilateral filtering to flatten texture while preserving edges
- soft edge overlay from Canny outlines
- Gaussian blur plus glow-like smoothing before ordered grid dithering
- heavy downscale then ordered Bayer dithering
- tint mapping through a limited preset palette
- nearest-neighbor upscale for visible dot structure
The CLI is only the first surface. The underlying behavior should remain stable enough for other tools to depend on it.
Limitations
- foreground and background are processed uniformly
- tint presets are still rough and not yet matched against real reference scenes
- there is no
--preprocessswitch yet for alternate source stylization paths
Docs
docs/overview.md— artistic target and scopedocs/spec.md— CLI and filter stepsdocs/roadmap.md— quality gaps and next workCLAUDE.md— AI-facing internal guide
Development
uv sync --group dev
uv run ruff check .
uv run pytest
Metadata
Release files for oniazusa 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| oniazusa-0.1.0.tar.gz | 6.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| oniazusa-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.2 kB
Release files / oniazusa-0.1.0.tar.gz
| Download URL | oniazusa-0.1.0.tar.gz |
|---|---|
| Size | 6.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
578b27bf23a27e594987610e110789c0873dea91f0fabd7fa0adc17a41bcb945
|
|
BLAKE2b-256 checksum How to use checksums |
5d83e82bee55f0c570869b9166936777035f48891961486678d6386dfad113cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.8
|
Release files / oniazusa-0.1.0-py3-none-any.whl
| Download URL | oniazusa-0.1.0-py3-none-any.whl |
|---|---|
| Size | 8.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7812451f6cdd7c3ce43a58946829b960637ac1175d28a74af700c10a4dbe48e5
|
|
BLAKE2b-256 checksum How to use checksums |
14061f2a59c2b0dbe7766c8ce33be10ac74fcabb90a95f11d93d753edb7de1b4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.8
|