Better change threshold for chunky dynmaps #7

Closed
opened 2024-11-26 11:39:38 +00:00 by Dantevg · 0 comments
Dantevg commented 2024-11-26 11:39:38 +00:00 (Migrated from github.com)

Problem

Whenever ChukyMap tiles are re-rendered, the noise pattern changes. This results in the current change threshold detecting that a new export should be made, even though no blocks have changed.

Possible implementation

  1. For each pixel in a tile:
    1. Calculate how different this pixel's colour is to the last export's pixel at this position
      • Can be the max of the absolute difference in r/g/b channels
      • Possibly some scaled difference to account for lighter areas having higher differences in noise
    2. If the distance is higher than the specified colour distance threshold: mark this pixel as changed
  2. If the percentage of changed pixels is above the area percentage threshold: allow export

Two change-thresholds:

  • colour-distance-threshold for the minimum distance two colours need to be
  • area-threshold for the minimum percentage of pixels that need to be changed
### Problem Whenever ChukyMap tiles are re-rendered, the noise pattern changes. This results in the current change threshold detecting that a new export should be made, even though no blocks have changed. ### Possible implementation 1. For each pixel in a tile: 1. Calculate how different this pixel's colour is to the last export's pixel at this position - Can be the max of the absolute difference in r/g/b channels - Possibly some scaled difference to account for lighter areas having higher differences in noise 2. If the distance is higher than the specified colour distance threshold: mark this pixel as changed 3. If the percentage of changed pixels is above the area percentage threshold: allow export Two change-thresholds: - `colour-distance-threshold` for the minimum distance two colours need to be - `area-threshold` for the minimum percentage of pixels that need to be changed
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Dante/DynmapExport#7
No description provided.