Format Detection Issues
Auto-detection fails with 'Could not detect format'
Auto-detection fails with 'Could not detect format'
Problem: Panlabel can’t automatically determine your input format.Solution: Explicitly specify the format using the Common causes:
--from flag:- File extension doesn’t match the format (e.g.,
.txtinstead of.jsonfor COCO) - File structure doesn’t match expected layout
- Malformed or incomplete annotation file
YOLO dataset not detected
YOLO dataset not detected
Problem: Your YOLO directory isn’t recognized as a valid dataset.Solution: Ensure your YOLO dataset follows the expected structure:Requirements:
images/andlabels/directories must exist- Either
data.yamlorclasses.txtmust be present - Label files must have matching names to image files
VOC dataset not detected
VOC dataset not detected
Problem: Your Pascal VOC directory isn’t recognized.Solution: Ensure your VOC dataset has the required structure:Requirements:
Annotations/directory must exist with XML files- Either
JPEGImages/orImageSets/directory should be present
Validation Errors
Duplicate ID errors
Duplicate ID errors
Problem: Dataset contains duplicate image, category, or annotation IDs.Solution: Fix duplicate IDs in your source data. Each ID must be unique within its type:
Missing reference errors
Missing reference errors
Problem: Annotations reference image or category IDs that don’t exist.Solution: Ensure all referenced IDs exist in the dataset:
- Check that all
image_idvalues in annotations match actual image IDs - Check that all
category_idvalues in annotations match actual category IDs - Remove orphaned annotations or add missing images/categories
Invalid bounding box errors
Invalid bounding box errors
Problem: Bounding boxes have invalid coordinates or dimensions.Solution: Fix the bounding box coordinates:Common issues:
- Negative width or height:
x_maxmust be greater thanx_min,y_maxgreater thany_min - Coordinates outside image bounds: ensure
0 <= x <= image_widthand0 <= y <= image_height - Zero-area boxes: width and height must be positive
Empty dataset errors
Empty dataset errors
Problem: Dataset has no images, categories, or annotations.Solution: Ensure your dataset contains the required elements:
- At least one image
- At least one category
- Optionally, annotations (some formats allow empty annotation lists)
Conversion Issues
Conversion blocked with 'requires --allow-lossy'
Conversion blocked with 'requires --allow-lossy'
Problem: The conversion would lose data and needs explicit confirmation.Solution: Review what will be lost, then add See the Lossiness guide for details on what each format preserves.
--allow-lossy if acceptable:Output file already exists
Output file already exists
Problem: The output path already contains files.Solution: Either remove the existing output or choose a different path:
YOLO class map conflicts
YOLO class map conflicts
Problem: Multiple YOLO class map sources with conflicting information.Solution: Ensure consistency between Precedence:
data.yaml and classes.txt:data.yaml > classes.txt > inferred from label filesLabel Studio rotation flattening
Label Studio rotation flattening
Problem: Rotated bounding boxes are converted to axis-aligned boxes.Solution: This is expected behavior. Label Studio rotated boxes are flattened to their axis-aligned envelopes:
- The original rotation angle is preserved in the
ls_rotation_degattribute - The bounding box becomes the smallest axis-aligned rectangle that contains the rotated box
- You’ll see a warning in the conversion report
File I/O Issues
Permission denied errors
Permission denied errors
Problem: Can’t read input file or write to output location.Solution: Check file and directory permissions:
File not found errors
File not found errors
Problem: Input file or directory doesn’t exist.Solution: Verify the path is correct:
Malformed JSON/XML errors
Malformed JSON/XML errors
Problem: Input file contains invalid JSON or XML.Solution: Validate and fix your JSON/XML:
Performance Issues
Conversion is very slow
Conversion is very slow
Problem: Large dataset conversion takes a long time.Solution: This is expected for very large datasets. Tips to improve performance:
- Use release builds:
cargo build --release - Convert to IR JSON first, then to the target format (two-step conversion)
- Split large datasets into smaller chunks
Out of memory errors
Out of memory errors
Problem: Panlabel crashes or system runs out of memory.Solution: Large datasets require significant memory. Options:
- Use the
samplecommand to work with a subset first - Increase available system memory
- Split the dataset into smaller parts
Getting Help
If you encounter an issue not covered here:- Check the CLI reference for command-specific options
- Run
panlabel <command> --helpfor detailed usage information - Open an issue on GitHub with:
- The command you ran
- The error message
- A minimal example that reproduces the problem