Contributing to the atlas
Each node grows across semesters. The most valuable additions make a method harder to misuse.
What counts as a contribution.
- A silent bug. A mistake that produces a plausible answer and no error, with a minimal example that triggers it.
- A test. A property the method must satisfy, written so that it fails on a known bug.
- A verification strategy. A way to check an implementation without knowing the right answer for a real image.
- A world. A synthetic case with known truth that separates two layers of error more cleanly than the existing ones.
- A failure case. An input where a correct implementation gives a poor result, with the assumption it violates.
- A crossing. A boundary of one method and the method that crosses it, with the layer it fixes: a better criterion, or more information.
How it is recorded. Accepted contributions are added to the node’s teaching record with the semester and, with your permission, your name. Nothing is anonymous by default and nothing is published without asking.
How to submit. Students in ECE 6357 submit through the course. Anyone else can open an issue on the site’s repository or email me.
The record so far
- Fall 2026
Otsu thresholding, silent bug: Plain
np.argmaxlets an empty class win
Instructors - Fall 2026
Otsu thresholding, silent bug:
astype(np.uint8)wraps 12-bit values instead of rescaling them
Instructors - Fall 2026
Otsu thresholding, silent bug: Scoring the split at k − 1 and reporting it as k
Instructors - Fall 2026
Otsu thresholding, test: The whole pipeline on a clean phantom, from 12-bit values
Instructors - Fall 2026
Otsu thresholding, failure case: A small object pulls the threshold into the background
Instructors