Add utility to merge multiple defect masks into single grayscale masks #2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Defect detection datasets often have multiple mask files per image (e.g.,
image_42586468_裂纹_1_mask.png,image_42586468_破损_2_mask.png). This PR adds tooling to merge these into single masks named after the base image.Implementation
merge_masks.py: Core utility with CLI and Python API
<base>_<type>_<num>_mask.png→<base>.png)test_merge_masks.py: Test suite covering name extraction, grouping, merging logic, and edge cases
MERGE_MASKS_README.md: Complete documentation with API reference and troubleshooting
example_usage.py: Six practical usage patterns from basic to batch processing
Usage
Quality: 100% test pass rate, 0 CodeQL alerts
Original prompt
This pull request was created as a result of the following prompt from Copilot chat.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.