| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | import argparse |
| | from tqdm import tqdm |
| |
|
| |
|
| | def slice_data(image_dir, dataset_json_path, output_dir, slice_size, |
| | overlap_ratio): |
| | try: |
| | from sahi.scripts.slice_coco import slice |
| | except Exception as e: |
| | raise RuntimeError( |
| | 'Unable to use sahi to slice images, please install sahi, for example: `pip install sahi`, see https://github.com/obss/sahi' |
| | ) |
| | tqdm.write( |
| | f" slicing for slice_size={slice_size}, overlap_ratio={overlap_ratio}") |
| | slice( |
| | image_dir=image_dir, |
| | dataset_json_path=dataset_json_path, |
| | output_dir=output_dir, |
| | slice_size=slice_size, |
| | overlap_ratio=overlap_ratio, ) |
| |
|
| |
|
| | def main(): |
| | parser = argparse.ArgumentParser() |
| | parser.add_argument( |
| | '--image_dir', type=str, default=None, help="The image folder path.") |
| | parser.add_argument( |
| | '--json_path', type=str, default=None, help="Dataset json path.") |
| | parser.add_argument( |
| | '--output_dir', type=str, default=None, help="Output dir.") |
| | parser.add_argument( |
| | '--slice_size', type=int, default=500, help="slice_size") |
| | parser.add_argument( |
| | '--overlap_ratio', type=float, default=0.25, help="overlap_ratio") |
| | args = parser.parse_args() |
| |
|
| | slice_data(args.image_dir, args.json_path, args.output_dir, args.slice_size, |
| | args.overlap_ratio) |
| |
|
| |
|
| | if __name__ == "__main__": |
| | main() |
| |
|