Open
Description
Dithering is an intentionally applied form of noise used to randomize quantization error, preventing large-scale patterns such as color banding in images.
Prior art:
The upstream work was landed in tyrquake.
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Milestone
Relationships
Development
No branches or pull requests
Activity
alanjian85 commentedon Aug 16, 2022
I'm not sure what dithering algorithm tyrquake uses, but the bit depth of the texture source,
pbase
, and the corresponding output pixel location,pdest
, are both 256 colors, so they don't appear to have anything to do with error diffusion and quantization error randomization because the error of colors is negligible. Furthermore, despite the fact that static data used in the process is calleddither_kernel
, it doesn't use a conventional method of image convolution, so additional diagnostics may be required. I adapted it for the quake-embedded, though, so if it's still required, I can provide it.jserv commentedon Aug 21, 2022
My intention was to provide a runtime switch to bring visual computing "overheads," so that
rv32emu
users can be aware of the impacts, especially when JIT compilation is ready for performance boost. Dithering might be a good fit for this purpose. Feel free to propose another approach as a runtime switch.