Skip to content

Shift out-of-FOV crops and preserve background pixels#16

Merged
MattsonCam merged 4 commits intomainfrom
modify_cropping
May 7, 2026
Merged

Shift out-of-FOV crops and preserve background pixels#16
MattsonCam merged 4 commits intomainfrom
modify_cropping

Conversation

@MattsonCam
Copy link
Copy Markdown
Member

This pr shifts nuclei crops if they extend outside of the FOV so additional black pixels are not needed. Likewise, the pixels between the nuclei bounding box and the crop are preserved.

Cameron Mattson added 3 commits April 30, 2026 14:41
Fail fast in `_compute_shifted_window` when `axis_limit <= 0` by raising
a `ValueError` instead of returning `(0, 0)`.

This makes invalid image-dimension inputs explicit, prevents silent creation
of empty windows, and surfaces upstream data issues earlier during cache
building. Also update the function docstring to document the new exception.
Make `_compute_shifted_window` fail fast on invalid inputs by raising
`ValueError` when `axis_limit <= 0` or `target_size <= 0`, instead of
silently returning an empty window for invalid axis limits.

Refactor window placement to clamp `window_start` once within valid bounds
and derive `window_end` from it. This guarantees fixed `target_size` window
length whenever `target_size < axis_limit`, while preserving full-axis
fallback behavior when the requested crop size exceeds the image axis.
@MattsonCam MattsonCam requested a review from wli51 May 7, 2026 16:50
Copy link
Copy Markdown

@wli51 wli51 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Good change minimizing the introduction artifacts into training data.

Comment thread datasets/dataset_00/utils/CropCacheBuilder.py Outdated
@MattsonCam
Copy link
Copy Markdown
Member Author

Thanks @wli51 ! Merging now

@MattsonCam MattsonCam merged commit 362a7d1 into main May 7, 2026
@MattsonCam MattsonCam deleted the modify_cropping branch May 7, 2026 19:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants