From 138bf731c60b77ed40221660916c8ea587c6646d Mon Sep 17 00:00:00 2001 From: Songki Choi Date: Wed, 28 Dec 2022 19:02:02 +0900 Subject: [PATCH] [OTX] Apply changes in develop to feature/otx branch (#1436) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add tiling module (#1200) * Update submodule branch (#1222) * Enhance training schedule for multi-label classification (#1212) * [CVS-88098] Remove initialize from export functions (#1226) * Train graph added (#1211) * Add @attrs decorator for base configs (#1229) * Pretrained weight download error in MobilenetV3-large-1 of deep-object-reid in SC (#1233) * [Anomaly Task] Revert hpo template (#1230) * 🐞 [Anomaly Task] Fix progress bar (#1223) * [CVS-90555] Fix NaN value in classification (#1244) * update hpo_config.yaml (#1240) * [CVS-90400, CVS-91015] NNCF pruning supported tweaks (#1248) * [Anomaly Task] 🐞 Fix inference when model backbone changes (#1242) * [CVS-91472] Add pruning_supported value (#1263) * Pruning supported tweaks (#1256) * [CVS-90400, CVS-91015] NNCF pruning supported tweaks (#1248) * Revert "[CVS-90400, CVS-91015] NNCF pruning supported tweaks (#1248)" (#1269) * [OTE-TEST] Disable obsolete test cases (#1220) * [OTE-TEST] hot-fix for MPA performance tests (#1273) * [Anomaly Task] ✨ Upgrade anomalib (#1243) * Expose early stopping hyper-parameters for all tasks (#1241) * Resolve pre-commit issues (#1272) * Remove LazyEarlyStopHook in model_multilabel.py (#1281) * Removed xfail (#1239) * Implement IB loss for incremental learning in multi-class classification (#1289) * Edit num_workers and change MPA repo as a latest (#1314) * fix annotation bug (#1320) * Valid POT configs for small HRNet models (#1313) * Disable NNCF optimization for FP16 models (#1312) * fliter object less than 1 pixel (#1305) * Fix some tests (#1322) * [Develop] Move drop_last into MPA (#1357) * Apply changes from releases/v0.3.1-geti1.0.0 (#1337) * anomaly save_model bugfix (#1300) * upgrade networkx module version (#1303) * Forward CVS-94422 size bug fix PR to release branch (#1326) * Valid POT configs for small HRNet models (#1317) * [Release branch] Disable NNCF optimization for FP16 models (#1319) * [RELEASE] CVS-95549 - Hierarchical classification training failed without obvious reason (#1329) * Fix h-label: per-group softmax (#1332) * Fix dataset length bug in mpa task (#1338) * Fix drop_last key issue for det/set (#1340) * Hot-fix for OV inference for iseg output (#1345) * Fix nncf model export bug (#1346) * Fixed merge error (#1359) * Update evaluation iou_thr of ins-seg (#1354) * fix pre-commit test (#1366) * Fix dataset item tests (#1360) * Fix OV Inference issues (tiling tests & detection tests) (#1361) * fix black & add xfail test cases (#1367) * Update check_nncf_graph. (#1330) * [Develop] Hot-fix OV inference issue in rotated detection (#1375) * [Develop] updated documents (#1383) * [CVS-94911] Fix difference between train and validation normalization pipeline (#1310) * Update configs for padim model (#1378) * updated QUICK_START_GUIDE.md (#1397) * Change ote threshold of openvino test for cls (#1401) * Normalize top-1 metrics to [0, 1] (#1394) * Tiling deployment (#1387) * Replace current saliency map generation with Recipro-CAM for cls (#1363) * Class-wise saliency map generation for the detection task (#1402) * Change submodule to develop (#1410) * Send full dataset to POT optimization function (#1379) & Convert NaN to num to make visible in geti UI (#1413) * Add active score evaluation to the classification task * [release/0.4.0][OTX] Enabling GPU execution for exported code (#1416) * [OTE][Release][XAI] Detection fix two stage bbox_head error (#1414) * Update SDK commit for exportable code (#1423) * HRNet-x and HRNe-18--mod2 configs update (#1419) * [Release] Enable tiling oriented detection for v0.4.0/geti1.1.0 (#1427) * [OTE][Releases v0.4.0][XAI] Hot-fix for Detection fix two stage error (#1433) * Temporary MPA branch while dev->otx merge process * Update doc & install for dev->otx changes * Update ote_sdk -> otx.api * Update ote_cli -> otx.cli * Update external/mmsegmentation -> otx/algorithms/segmentation * Align saliency map media instantiation over tasks (#1447) * Update external/d-o-r -> otx/algorithms/classification * Update external/mmdetection -> otx/algorithms/detection * Update external/mpa -> otx/algorithms/* * Fix CLI test run for better error message * Numpy constraint for deprecated np.bool error * Capture stderr only * Align numpy requirement * [OTX/Anomaly] Add changes from external to otx (#1452) * Add changes from external to otx * Address PR comments * Update config files + remove backbone from base * Fix pre-merge checks * Fix pre-commit issues * Update exportable code commit * Fix indent error * Fix flake8 issue * Resolve softmax issue w/ FIXME for future work * Add tiling tests * Revert MPA branch to otx Signed-off-by: Songki Choi Co-authored-by: Eugene Liu Co-authored-by: Ashwin Vaidya Co-authored-by: Jaeguk Hyun Co-authored-by: Nikita Savelyev Co-authored-by: Jihwan Eom Co-authored-by: Harim Kang Co-authored-by: Soobee Lee Co-authored-by: Lee, Soobee Co-authored-by: Emily Chun Co-authored-by: ljcornel Co-authored-by: Eunwoo Shin Co-authored-by: dlyakhov Co-authored-by: kprokofi Co-authored-by: Sungman Cho Co-authored-by: Yunchu Lee Co-authored-by: Ashwin Vaidya Co-authored-by: Alexander Dokuchaev Co-authored-by: Vladislav Sovrasov Co-authored-by: Evgeny Tsykunov Co-authored-by: Galina Zalesskaya Co-authored-by: dongkwan-kim --- .gitignore | 3 +- .pre-commit-config.yaml | 82 +- CHANGELOG.md | 38 + QUICK_START_GUIDE.md | 436 +- README.md | 82 +- .../annotations/image_info_test.json | 35 + .../annotations/image_info_train.json | 75 + .../annotations/image_info_val.json | 35 + .../annotations/instances_test.json | 4631 ++++++++ .../annotations/instances_train.json | 9380 +++++++++++++++++ .../annotations/instances_val.json | 3323 ++++++ .../small_objects/annotations/stuff_test.json | 4631 ++++++++ .../annotations/stuff_train.json | 9380 +++++++++++++++++ data/small_objects/annotations/stuff_val.json | 3323 ++++++ data/small_objects/images/test/sample_0.jpg | Bin 0 -> 283480 bytes data/small_objects/images/test/sample_1.jpg | Bin 0 -> 282541 bytes data/small_objects/images/train/sample_2.jpg | Bin 0 -> 244148 bytes data/small_objects/images/train/sample_3.jpg | Bin 0 -> 297205 bytes data/small_objects/images/train/sample_4.jpg | Bin 0 -> 199305 bytes data/small_objects/images/train/sample_6.jpg | Bin 0 -> 254231 bytes data/small_objects/images/train/sample_7.jpg | Bin 0 -> 274606 bytes data/small_objects/images/train/sample_9.jpg | Bin 0 -> 283614 bytes data/small_objects/images/val/sample_5.jpg | Bin 0 -> 210200 bytes data/small_objects/images/val/sample_8.jpg | Bin 0 -> 314233 bytes .../adapters/anomalib/callbacks/__init__.py | 3 +- .../adapters/anomalib/callbacks/inference.py | 16 +- .../adapters/anomalib/callbacks/progress.py | 27 +- .../anomalib/callbacks/score_report.py | 44 - external/anomaly/configs/base/__init__.py | 6 +- .../configs/{ => base}/draem/__init__.py | 0 .../configs/{ => base}/draem/configuration.py | 0 .../configs/{ => base}/padim/__init__.py | 0 .../configs/{ => base}/padim/configuration.py | 4 + .../configs/{ => base}/stfpm/__init__.py | 0 .../configs/{ => base}/stfpm/configuration.py | 0 .../configs/classification/__init__.py | 15 + .../configs/classification/draem/__init__.py | 19 + .../draem/compression_config.json | 0 .../classification/draem/configuration.py | 23 + .../draem/configuration.yaml | 5 +- .../draem/template_experimental.yaml | 2 +- .../draem/transform_config.yaml | 0 .../configs/classification/padim/__init__.py | 19 + .../padim/compression_config.json | 0 .../classification/padim/configuration.py | 23 + .../padim/configuration.yaml | 8 +- .../padim/pot_optimization_config.json | 4 +- .../classification/padim/template.yaml | 2 +- .../configs/classification/stfpm/__init__.py | 19 + .../stfpm/compression_config.json | 0 .../classification/stfpm/configuration.py | 23 + .../stfpm/configuration.yaml | 4 +- .../stfpm/hpo_config.yaml | 0 .../classification/stfpm/template.yaml | 2 +- .../anomaly/configs/detection/__init__.py | 15 + .../configs/detection/draem/__init__.py | 19 + .../detection/draem/compression_config.json | 36 + .../configs/detection/draem/configuration.py | 23 + .../detection/draem/configuration.yaml | 242 + .../draem/template_experimental.yaml | 2 +- .../detection/draem/transform_config.yaml | 26 + .../configs/detection/padim/__init__.py | 19 + .../detection/padim/compression_config.json | 40 + .../configs/detection/padim/configuration.py | 23 + .../detection/padim/configuration.yaml | 183 + .../padim/pot_optimization_config.json | 18 + .../detection/padim/template.yaml | 2 +- .../configs/detection/stfpm/__init__.py | 19 + .../detection/stfpm/compression_config.json | 36 + .../configs/detection/stfpm/configuration.py | 23 + .../detection/stfpm/configuration.yaml | 312 + .../configs/detection/stfpm/hpo_config.yaml | 18 + .../detection/stfpm/template.yaml | 2 +- .../anomaly/configs/segmentation/__init__.py | 15 + .../configs/segmentation/draem/__init__.py | 19 + .../draem/compression_config.json | 36 + .../segmentation/draem/configuration.py | 23 + .../segmentation/draem/configuration.yaml | 242 + .../draem/template_experimental.yaml | 2 +- .../segmentation/draem/transform_config.yaml | 26 + .../configs/segmentation/padim/__init__.py | 19 + .../padim/compression_config.json | 40 + .../segmentation/padim/configuration.py | 23 + .../segmentation/padim/configuration.yaml | 183 + .../padim/pot_optimization_config.json | 18 + .../segmentation/padim/template.yaml | 2 +- .../configs/segmentation/stfpm/__init__.py | 19 + .../stfpm/compression_config.json | 36 + .../segmentation/stfpm/configuration.py | 23 + .../segmentation/stfpm/configuration.yaml | 312 + .../segmentation/stfpm/hpo_config.yaml | 18 + .../segmentation/stfpm/template.yaml | 2 +- external/anomaly/tasks/inference.py | 45 +- external/anomaly/tasks/nncf.py | 11 +- external/anomaly/tasks/openvino.py | 6 + external/anomaly/tasks/train.py | 45 +- external/anomaly/tests/conftest.py | 2 +- .../ote_cli/test_anomaly_classification.py | 27 +- .../tests/ote_cli/test_anomaly_detection.py | 27 +- .../ote_cli/test_anomaly_segmentation.py | 25 + external/anomaly/tools/sample.py | 4 +- .../model_wrappers/classification.py | 49 +- .../torchreid_tasks/openvino_task.py | 52 +- .../deep-object-reid/torchreid_tasks/utils.py | 9 + .../apis/detection/configuration.py | 49 + .../apis/detection/inference_task.py | 2 + .../model_wrappers/openvino_models.py | 17 +- .../apis/detection/openvino_task.py | 431 +- .../apis/detection/train_task.py | 2 +- .../extension/datasets/__init__.py | 7 +- .../extension/datasets/data_utils.py | 47 +- .../extension/datasets/mmdataset.py | 13 +- .../apis/segmentation/inference_task.py | 2 +- .../apis/segmentation/openvino_task.py | 4 +- .../extension/datasets/mmdataset.py | 7 +- .../configs/classification/configuration.yaml | 2 +- .../efficientnet_b0_cls_incr/template.yaml | 2 - .../efficientnet_v2_s_cls_incr/template.yaml | 2 - .../template_experiment.yaml | 2 - .../template.yaml | 2 - .../template_experiment.yaml | 2 - .../configs/detection/configuration.yaml | 95 +- .../tile_pipeline.py | 95 + .../tile_pipeline.py | 89 + .../mobilenetv2_ssd_cls_incr/data_pipeline.py | 13 +- .../mobilenetv2_ssd_cls_incr/tile_pipeline.py | 87 + .../resnet50_vfnet_cls_incr/tile_pipeline.py | 85 + .../instance-segmentation/configuration.yaml | 93 + .../efficientnetb2b_maskrcnn/data_pipeline.py | 2 +- .../efficientnetb2b_maskrcnn/model.py | 1 + .../efficientnetb2b_maskrcnn/template.yaml | 3 +- .../efficientnetb2b_maskrcnn/tile_pipeline.py | 85 + .../resnet50_maskrcnn/model.py | 1 + .../resnet50_maskrcnn/tile_pipeline.py | 85 + .../rotated-detection/configuration.yaml | 92 + .../efficientnetb2b_maskrcnn/data_pipeline.py | 2 +- .../efficientnetb2b_maskrcnn/model.py | 2 + .../efficientnetb2b_maskrcnn/tile_pipeline.py | 85 + .../resnet50_maskrcnn/model.py | 1 + .../resnet50_maskrcnn/tile_pipeline.py | 85 + .../pot_optimization_config.json | 97 + .../pot_optimization_config.json | 95 + .../pot_optimization_config.json | 76 + .../pot_optimization_config.json | 178 + .../ocr-lite-hrnet-x-mod3/template.yaml | 3 +- .../mpa_tasks/apis/classification/task.py | 109 +- .../mpa_tasks/apis/config.py | 46 + .../mpa_tasks/apis/detection/config.py | 6 + .../mpa_tasks/apis/detection/task.py | 185 +- .../mpa_tasks/apis/segmentation/task.py | 28 - .../mpa_tasks/apis/task.py | 62 +- .../extensions/datasets/mpa_cls_dataset.py | 4 + .../mpa_tasks/utils/runner.py | 1 - .../api_tests/test_ote_classification_api.py | 2 +- .../tests/ote_cli/test_classification.py | 2 +- .../tests/ote_cli/test_segmentation.py | 9 +- .../tests/ote_cli/test_tiling_detection.py | 153 + .../tests/ote_cli/test_tiling_instseg.py | 168 + .../tests/ote_cli/test_tiling_rotated_det.py | 153 + .../tests/test_xai.py | 147 + ote_cli/ote_cli/tools/demo.py | 45 +- ote_cli/ote_cli/tools/deploy.py | 2 +- ote_cli/ote_cli/tools/eval.py | 47 +- ote_cli/ote_cli/tools/export.py | 2 +- ote_cli/ote_cli/tools/find.py | 12 +- ote_cli/ote_cli/tools/optimize.py | 55 +- ote_cli/ote_cli/tools/train.py | 52 +- ote_cli/ote_cli/utils/hpo.py | 7 +- ote_cli/ote_cli/utils/io.py | 2 + ote_cli/ote_cli/utils/tests.py | 6 +- .../ote_sdk/configuration/helper/__init__.py | 2 + ote_sdk/ote_sdk/configuration/helper/utils.py | 14 + .../tests/entities/test_dataset_item.py | 2 +- ...test_prediction_to_annotation_converter.py | 2 +- .../usecases/exportable_code/demo/demo.py | 10 +- .../demo_package/executors/synchronous.py | 2 +- .../demo/demo_package/model_container.py | 63 +- .../exportable_code/demo/requirements.txt | 2 +- .../prediction_to_annotation_converter.py | 76 +- ote_sdk/ote_sdk/utils/__init__.py | 6 + ote_sdk/ote_sdk/utils/detection_utils.py | 47 + ote_sdk/ote_sdk/utils/nms.py | 76 + ote_sdk/ote_sdk/utils/tiler.py | 203 + ote_sdk/ote_sdk/utils/vis_utils.py | 5 +- ote_sdk/requirements.txt | 2 +- .../adapters/anomalib/callbacks/__init__.py | 3 +- .../adapters/anomalib/callbacks/progress.py | 27 +- .../anomalib/callbacks/score_report.py | 42 - .../classification/draem/configuration.yaml | 3 +- .../classification/padim/configuration.yaml | 2 +- .../classification/stfpm/configuration.yaml | 2 +- .../detection/draem/configuration.yaml | 3 +- .../detection/padim/configuration.yaml | 2 +- .../detection/stfpm/configuration.yaml | 2 +- .../segmentation/draem/configuration.yaml | 3 +- .../segmentation/padim/configuration.yaml | 2 +- .../segmentation/stfpm/configuration.yaml | 2 +- otx/algorithms/anomaly/tasks/inference.py | 24 +- otx/algorithms/anomaly/tasks/nncf.py | 2 +- otx/algorithms/anomaly/tasks/train.py | 48 +- .../adapters/mmcls/data/datasets.py | 1 + .../adapters/mmcls/models/classifiers/byol.py | 2 +- .../model_wrappers/openvino_models.py | 30 +- .../classification/configs/configuration.yaml | 2 +- .../efficientnet_b0_cls_incr/template.yaml | 2 - .../efficientnet_v2_s_cls_incr/template.yaml | 2 - .../template_experiment.yaml | 2 - .../template.yaml | 2 - .../template_experiment.yaml | 2 - .../classification/tasks/inference.py | 6 +- .../classification/tasks/openvino.py | 1 + otx/algorithms/classification/tasks/train.py | 1 + .../mmcv/models/backbones/__init__.py | 2 +- .../common/configs/training_base.py | 47 + otx/algorithms/common/tasks/training_base.py | 2 +- .../model_wrappers/openvino_models.py | 13 +- .../detection/configs/base/configuration.py | 6 + .../configs/detection/configuration.yaml | 95 +- .../cspdarknet_yolox/tile_pipeline.py | 113 + .../mobilenetv2_atss/tile_pipeline.py | 107 + .../mobilenetv2_ssd/data_pipeline.py | 13 +- .../mobilenetv2_ssd/tile_pipeline.py | 105 + .../detection/resnet50_vfnet/tile_pipeline.py | 103 + .../instance_segmentation/configuration.yaml | 93 + .../efficientnetb2b_maskrcnn/data_pipeline.py | 2 +- .../efficientnetb2b_maskrcnn/model.py | 1 + .../efficientnetb2b_maskrcnn/template.yaml | 3 +- .../efficientnetb2b_maskrcnn/tile_pipeline.py | 103 + .../resnet50_maskrcnn/model.py | 1 + .../resnet50_maskrcnn/tile_pipeline.py | 103 + otx/algorithms/detection/tasks/inference.py | 2 + otx/algorithms/detection/tasks/openvino.py | 73 +- otx/algorithms/detection/tasks/train.py | 1 + otx/algorithms/detection/utils/data.py | 50 + otx/algorithms/init_venv.sh | 0 .../adapters/mmseg/data/dataset.py | 7 +- .../pot_optimization_config.json | 95 + .../pot_optimization_config.json | 97 + .../pot_optimization_config.json | 76 + .../pot_optimization_config.json | 178 + .../ocr_lite_hrnet_x_mod3/template.yaml | 3 +- .../segmentation/tasks/inference.py | 2 +- otx/algorithms/segmentation/tasks/nncf.py | 2 +- otx/algorithms/segmentation/tasks/openvino.py | 2 +- otx/api/configuration/helper/__init__.py | 2 + otx/api/configuration/helper/utils.py | 16 + otx/api/usecases/exportable_code/demo/demo.py | 10 +- .../demo_package/executors/synchronous.py | 2 +- .../demo/demo_package/model_container.py | 67 +- .../exportable_code/demo/requirements.txt | 2 +- .../prediction_to_annotation_converter.py | 71 +- otx/api/utils/__init__.py | 4 + otx/api/utils/detection_utils.py | 45 + otx/api/utils/nms.py | 76 + otx/api/utils/tiler.py | 199 + otx/cli/tools/demo.py | 3 +- otx/cli/tools/deploy.py | 2 +- otx/cli/tools/eval.py | 3 +- otx/cli/tools/explain.py | 2 +- otx/cli/tools/export.py | 2 +- otx/cli/tools/find.py | 3 +- otx/cli/tools/train.py | 2 +- otx/cli/utils/hpo.py | 7 +- otx/cli/utils/io.py | 2 + requirements/base.txt | 2 +- .../action/test_api_action_classification.py | 14 +- .../api/action/test_api_action_detection.py | 14 +- .../cli/detection/test_tiling_detection.py | 199 + .../cli/detection/test_tiling_instseg.py | 199 + tests/ote_cli/misc/test_code_checks.py | 1 + tests/ote_cli/misc/test_docs.py | 65 +- tests/unit/api/entities/test_dataset_item.py | 2 +- ...test_prediction_to_annotation_converter.py | 2 +- third-party-programs.txt | 75 + 274 files changed, 43668 insertions(+), 1145 deletions(-) create mode 100644 data/small_objects/annotations/image_info_test.json create mode 100644 data/small_objects/annotations/image_info_train.json create mode 100644 data/small_objects/annotations/image_info_val.json create mode 100644 data/small_objects/annotations/instances_test.json create mode 100644 data/small_objects/annotations/instances_train.json create mode 100644 data/small_objects/annotations/instances_val.json create mode 100644 data/small_objects/annotations/stuff_test.json create mode 100644 data/small_objects/annotations/stuff_train.json create mode 100644 data/small_objects/annotations/stuff_val.json create mode 100644 data/small_objects/images/test/sample_0.jpg create mode 100644 data/small_objects/images/test/sample_1.jpg create mode 100644 data/small_objects/images/train/sample_2.jpg create mode 100644 data/small_objects/images/train/sample_3.jpg create mode 100644 data/small_objects/images/train/sample_4.jpg create mode 100644 data/small_objects/images/train/sample_6.jpg create mode 100644 data/small_objects/images/train/sample_7.jpg create mode 100644 data/small_objects/images/train/sample_9.jpg create mode 100644 data/small_objects/images/val/sample_5.jpg create mode 100644 data/small_objects/images/val/sample_8.jpg delete mode 100644 external/anomaly/adapters/anomalib/callbacks/score_report.py rename external/anomaly/configs/{ => base}/draem/__init__.py (100%) rename external/anomaly/configs/{ => base}/draem/configuration.py (100%) rename external/anomaly/configs/{ => base}/padim/__init__.py (100%) rename external/anomaly/configs/{ => base}/padim/configuration.py (88%) rename external/anomaly/configs/{ => base}/stfpm/__init__.py (100%) rename external/anomaly/configs/{ => base}/stfpm/configuration.py (100%) create mode 100644 external/anomaly/configs/classification/__init__.py create mode 100644 external/anomaly/configs/classification/draem/__init__.py rename external/anomaly/configs/{ => classification}/draem/compression_config.json (100%) create mode 100644 external/anomaly/configs/classification/draem/configuration.py rename external/anomaly/configs/{ => classification}/draem/configuration.yaml (99%) rename external/anomaly/{templates => configs}/classification/draem/template_experimental.yaml (91%) rename external/anomaly/configs/{ => classification}/draem/transform_config.yaml (100%) create mode 100644 external/anomaly/configs/classification/padim/__init__.py rename external/anomaly/configs/{ => classification}/padim/compression_config.json (100%) create mode 100644 external/anomaly/configs/classification/padim/configuration.py rename external/anomaly/configs/{ => classification}/padim/configuration.yaml (98%) rename external/anomaly/configs/{ => classification}/padim/pot_optimization_config.json (76%) rename external/anomaly/{templates => configs}/classification/padim/template.yaml (92%) create mode 100644 external/anomaly/configs/classification/stfpm/__init__.py rename external/anomaly/configs/{ => classification}/stfpm/compression_config.json (100%) create mode 100644 external/anomaly/configs/classification/stfpm/configuration.py rename external/anomaly/configs/{ => classification}/stfpm/configuration.yaml (99%) rename external/anomaly/configs/{ => classification}/stfpm/hpo_config.yaml (100%) rename external/anomaly/{templates => configs}/classification/stfpm/template.yaml (93%) create mode 100644 external/anomaly/configs/detection/__init__.py create mode 100644 external/anomaly/configs/detection/draem/__init__.py create mode 100644 external/anomaly/configs/detection/draem/compression_config.json create mode 100644 external/anomaly/configs/detection/draem/configuration.py create mode 100644 external/anomaly/configs/detection/draem/configuration.yaml rename external/anomaly/{templates => configs}/detection/draem/template_experimental.yaml (91%) create mode 100644 external/anomaly/configs/detection/draem/transform_config.yaml create mode 100644 external/anomaly/configs/detection/padim/__init__.py create mode 100644 external/anomaly/configs/detection/padim/compression_config.json create mode 100644 external/anomaly/configs/detection/padim/configuration.py create mode 100644 external/anomaly/configs/detection/padim/configuration.yaml create mode 100644 external/anomaly/configs/detection/padim/pot_optimization_config.json rename external/anomaly/{templates => configs}/detection/padim/template.yaml (92%) create mode 100644 external/anomaly/configs/detection/stfpm/__init__.py create mode 100644 external/anomaly/configs/detection/stfpm/compression_config.json create mode 100644 external/anomaly/configs/detection/stfpm/configuration.py create mode 100644 external/anomaly/configs/detection/stfpm/configuration.yaml create mode 100644 external/anomaly/configs/detection/stfpm/hpo_config.yaml rename external/anomaly/{templates => configs}/detection/stfpm/template.yaml (93%) create mode 100644 external/anomaly/configs/segmentation/__init__.py create mode 100644 external/anomaly/configs/segmentation/draem/__init__.py create mode 100644 external/anomaly/configs/segmentation/draem/compression_config.json create mode 100644 external/anomaly/configs/segmentation/draem/configuration.py create mode 100644 external/anomaly/configs/segmentation/draem/configuration.yaml rename external/anomaly/{templates => configs}/segmentation/draem/template_experimental.yaml (91%) create mode 100644 external/anomaly/configs/segmentation/draem/transform_config.yaml create mode 100644 external/anomaly/configs/segmentation/padim/__init__.py create mode 100644 external/anomaly/configs/segmentation/padim/compression_config.json create mode 100644 external/anomaly/configs/segmentation/padim/configuration.py create mode 100644 external/anomaly/configs/segmentation/padim/configuration.yaml create mode 100644 external/anomaly/configs/segmentation/padim/pot_optimization_config.json rename external/anomaly/{templates => configs}/segmentation/padim/template.yaml (92%) create mode 100644 external/anomaly/configs/segmentation/stfpm/__init__.py create mode 100644 external/anomaly/configs/segmentation/stfpm/compression_config.json create mode 100644 external/anomaly/configs/segmentation/stfpm/configuration.py create mode 100644 external/anomaly/configs/segmentation/stfpm/configuration.yaml create mode 100644 external/anomaly/configs/segmentation/stfpm/hpo_config.yaml rename external/anomaly/{templates => configs}/segmentation/stfpm/template.yaml (93%) create mode 100644 external/model-preparation-algorithm/configs/detection/cspdarknet_yolox_cls_incr/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/detection/mobilenetv2_atss_cls_incr/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/detection/resnet50_vfnet_cls_incr/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/tile_pipeline.py create mode 100644 external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18-mod2/pot_optimization_config.json create mode 100644 external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18/pot_optimization_config.json create mode 100644 external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-s-mod2/pot_optimization_config.json create mode 100644 external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/pot_optimization_config.json create mode 100644 external/model-preparation-algorithm/tests/ote_cli/test_tiling_detection.py create mode 100644 external/model-preparation-algorithm/tests/ote_cli/test_tiling_instseg.py create mode 100644 external/model-preparation-algorithm/tests/ote_cli/test_tiling_rotated_det.py create mode 100644 external/model-preparation-algorithm/tests/test_xai.py create mode 100644 ote_sdk/ote_sdk/utils/detection_utils.py create mode 100644 ote_sdk/ote_sdk/utils/nms.py create mode 100644 ote_sdk/ote_sdk/utils/tiler.py delete mode 100644 otx/algorithms/anomaly/adapters/anomalib/callbacks/score_report.py create mode 100644 otx/algorithms/detection/configs/detection/cspdarknet_yolox/tile_pipeline.py create mode 100644 otx/algorithms/detection/configs/detection/mobilenetv2_atss/tile_pipeline.py create mode 100644 otx/algorithms/detection/configs/detection/mobilenetv2_ssd/tile_pipeline.py create mode 100644 otx/algorithms/detection/configs/detection/resnet50_vfnet/tile_pipeline.py create mode 100644 otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py create mode 100644 otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/tile_pipeline.py mode change 100644 => 100755 otx/algorithms/init_venv.sh create mode 100644 otx/algorithms/segmentation/configs/ocr_lite_hrnet_18/pot_optimization_config.json create mode 100644 otx/algorithms/segmentation/configs/ocr_lite_hrnet_18_mod2/pot_optimization_config.json create mode 100644 otx/algorithms/segmentation/configs/ocr_lite_hrnet_s_mod2/pot_optimization_config.json create mode 100644 otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/pot_optimization_config.json create mode 100644 otx/api/utils/detection_utils.py create mode 100644 otx/api/utils/nms.py create mode 100644 otx/api/utils/tiler.py create mode 100644 tests/integration/cli/detection/test_tiling_detection.py create mode 100644 tests/integration/cli/detection/test_tiling_instseg.py diff --git a/.gitignore b/.gitignore index c3972e32ed8..473f443e27f 100644 --- a/.gitignore +++ b/.gitignore @@ -4,11 +4,12 @@ __pycache__ .vscode/ *.iml -venv +*venv*/ env otx-workspace* .env .tox +results/ data/* .coverage diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index dbcd71c45af..fa548d7ff8f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -11,18 +11,6 @@ repos: files: '^(otx|tests)/.*\.py' exclude: "tests/ote_cli" - # NOTE: ote-sdk and ote-cli will be deprecated. The following config - # is to be removed. - - id: isort - alias: isort_ote_sdk - name: "isort - legacy (ote_sdk)" - files: '^ote_sdk/.*\.py' - - id: isort - alias: isort_rest - name: "isort (ote_cli|external)" - files: '^(ote_cli|external/anomaly|external/model-preparation-algorithm)/.*\.py' - exclude: "tests/" - - repo: https://github.com/psf/black rev: 22.6.0 hooks: @@ -31,32 +19,21 @@ repos: files: '^(otx|tests)/.*\.py' exclude: "tests/ote_cli" - # NOTE: ote-sdk and ote-cli will be deprecated. The following config - # is to be removed. - - id: black - name: "black - legacy (ote_sdk|ote_cli)" - args: [--line-length, "88"] - files: '^(ote_sdk|ote_cli)/.*\.py' - - id: black - name: "black - legacy (rest)" - args: [--line-length, "120"] - files: '^(external/anomaly|external/model-preparation-algorithm)/.*\.py' - - repo: https://github.com/PyCQA/flake8 rev: "5.0.3" hooks: - id: flake8 name: "flake8" - files: '^(ote_sdk|ote_cli|external/anomaly|external/model-preparation-algorithm)/.*\.py' + files: '^(otx|tests)/.*\.py' args: ["--config", ".flake8", "--max-complexity", "20"] - exclude: ".*/protobuf" + exclude: "^(.*/protobuf|tests/ote_cli)" # yaml formatting - repo: https://github.com/pre-commit/mirrors-prettier rev: v2.7.1 hooks: - id: prettier - exclude: "external/deep-object-reid" + exclude: "external" - repo: https://github.com/pre-commit/mirrors-mypy rev: "v0.971" @@ -74,35 +51,6 @@ repos: - types-python-dateutil exclude: "^otx/algorithms/anomaly/tests" - # NOTE: ote-sdk and ote-cli will be deprecated. The following config - # is to be removed. - - id: mypy - alias: mypy_ote_sdk - name: "mypy - legacy (ote_sdk)" - files: '^ote_sdk/.*\.py' - additional_dependencies: - [ - numpy==1.19.5, - types-PyYAML, - attrs==21.2.*, - types-requests, - types-Deprecated, - types-docutils, - types_futures, - types-python-dateutil, - ] - - id: mypy - alias: mypy_ote_cli - name: "mypy - legacy (ote_cli)" - files: '^ote_cli/.*\.py' - additional_dependencies: [types-PyYAML] - - id: mypy - alias: mypy_anomaly - name: "mypy (anomaly)" - files: '^external/anomaly/.*\.py' - additional_dependencies: [attrs==21.2.*, types-PyYAML] - exclude: "^external/anomaly/tests" - - repo: https://github.com/PyCQA/pylint rev: "v2.14.5" hooks: @@ -115,17 +63,6 @@ repos: types: [python] args: ["--score=no"] - # NOTE: ote-sdk and ote-cli will be deprecated. The following config - # is to be removed. - - id: pylint - name: "pylint - legacy" - files: '^(ote_sdk|ote_cli|external/anomaly)/.*\.py' - entry: pylint - language: system - types: [python] - args: ["--score=no"] - exclude: "tests" - - repo: https://github.com/PyCQA/pydocstyle rev: 6.1.1 hooks: @@ -138,12 +75,13 @@ repos: files: '^otx/.*\.py' exclude: "otx/algorithms/anomaly/tests|external/anomaly/tests|otx/cli/utils/tests.py" - - repo: https://github.com/jumanjihouse/pre-commit-hooks - rev: 2.1.6 - hooks: - - id: markdownlint - # TODO: Check all files even tests after migration to otx is complete - exclude: "^(ote_sdk|tests|.github)" + # Will use rst + # - repo: https://github.com/jumanjihouse/pre-commit-hooks + # rev: 2.1.6 + # hooks: + # - id: markdownlint + # # TODO: Check all files even tests after migration to otx is complete + # exclude: "^(ote_sdk|tests|.github|external)" - repo: https://github.com/AleksaC/hadolint-py rev: v2.10.0 diff --git a/CHANGELOG.md b/CHANGELOG.md index d8138b31973..2e05598354f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,44 @@ All notable changes to this project will be documented in this file. +## \[v0.4.0\] + +### Added + +- Model Preparation Algorithm (MPA) + - Better saliency map support + - Replace current saliency map generation with Recipro-CAM for cls () + - Class-wise saliency map generation for the detection task () + - Improve object counting algorithm for high-res images via image tiling + - Add Tiling Module () + - Fliter object less than 1 pixel () + - Tiling deployment () + - Enable tiling oriented detection for v0.4.0/geti1.1.0 () + +### Fixed + +- Hot-fix for Detection fix two stage error () +- Some minor issues + +## \[v0.3.1\] + +### Fixed + +- Neural Network Compression Framework (NNCF) + + - Fix CUDA OOM for NNCF optimization model MaskRCNN-EfficientNetB2B () + +- Model Preparation Algorithm (MPA) + - Fix 'Shape out of bounds' error when accepting AI predictions for detection oriented () + - Fix weird confidence behaviour issue on predictions for hierarchical classification () + - Fix training failure issue for hierarchical classification () + - Fix training failure issues for segmentation and instance segmentation during inference process () + - Some minor issues + +### Security + +- Update vulnerable Python dependencies in OTE () + ## \[v0.3.0\] ### Added diff --git a/QUICK_START_GUIDE.md b/QUICK_START_GUIDE.md index f8665775b5c..4fd1a69db63 100644 --- a/QUICK_START_GUIDE.md +++ b/QUICK_START_GUIDE.md @@ -2,11 +2,13 @@ ## Prerequisites -- Ubuntu 18.04 / 20.04 -- Python 3.8+ -- for training on GPU: [CUDA Toolkit 11.1](https://developer.nvidia.com/cuda-11.1.1-download-archive) +Current version of OTX was tested under following environments -**Note:** If using CUDA, make sure you are using a proper driver version. To do so, use `ls -la /usr/local | grep cuda`. If necessary, [install CUDA 11.1](https://developer.nvidia.com/cuda-11.1.0-download-archive?target_os=Linux) and select it with `export CUDA_HOME=/usr/local/cuda-11.1`. +- Ubuntu 20.04 +- Python 3.8.x +- (Opional) To use the NVidia GPU for the training: [CUDA Toolkit 11.1](https://developer.nvidia.com/cuda-11.1.1-download-archive) + +> **_Note:_** If using CUDA, make sure you are using a proper driver version. To do so, use `ls -la /usr/local | grep cuda`. If necessary, [install CUDA 11.1](https://developer.nvidia.com/cuda-11.1.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=2004&target_type=runfilelocal) (requires 'sudo' permission) and select it with `export CUDA_HOME=/usr/local/cuda-11.1`. ## Setup OpenVINO™ Training Extensions @@ -16,121 +18,94 @@ git clone https://github.com/openvinotoolkit/training_extensions.git cd training_extensions git checkout develop - git submodule update --init --recursive ``` 1. Install prerequisites with: - ```bash - sudo apt-get install python3-pip python3-venv - ``` - - Although they are not required, You may also want to use Jupyter notebooks or OTE CLI tools: - - ```bash - pip3 install notebook; cd ote_cli/notebooks/; jupyter notebook - ``` - -1. Search for available scripts that create python virtual environments for different task types: - - ```bash - find external/ -name init_venv.sh - ``` - - Sample output: - - ```bash - external/mmdetection/init_venv.sh - external/mmsegmentation/init_venv.sh - external/deep-object-reid/init_venv.sh - ``` + (Optional) Install pytorch according to your system environment + Refer to the [official inatllation guide](https://pytorch.org/get-started/previous-versions/) - Each line in the output gives an `init_venv.sh` script that creates a virtual environment - for the corresponding task type. + > **_Important note:_** Currently, only torch==1.8 was fully validated. torch==1.13/2.x will be supported soon. -1. Choose a task type, for example,`external/mmdetection` for Object Detection. + (Optional) You may also want to use Jupyter notebooks or OTX CLI tools: ```bash - TASK_ALGO_DIR=./external/mmdetection/ + pip3 install notebook; cd ote_cli/notebooks/; jupyter notebook ``` - Note that the variable `TASK_ALGO_DIR` is set in this example for simplicity and will not be used in scripts. + > **_Important note:_** You should confirm that the Python version that installed on your machine should be 3.8.X. For the future release of OTX will support wide range of the Python version. -1. Create and activate a virtual environment for the chosen task, then install the `ote_cli`. - Note that the virtual environment directory may be created anywhere on your system. - The `./cur_task_venv` is just an example used here for convenience. +1. Create a virtual environment, then install OTX package ```bash - bash $TASK_ALGO_DIR/init_venv.sh ./cur_task_venv python3.8 - source ./cur_task_venv/bin/activate - pip3 install -e ote_cli/ -c $TASK_ALGO_DIR/constraints.txt + # Create virtual env. + otx/algorithms/init_venv.sh .venv + # Activate virtual env. + source .venv/bin/activate ``` - Note that `python3.8` is pointed as the second parameter of the script - `init_venv.sh` -- it is the version of python that should be used. You can - use any `python3.8+` version here if it is installed on your system. - - Also note that during installation of `ote_cli` the constraint file - from the chosen task folder is used to avoid breaking constraints - for the OTE task. +1. Once the package is installed to the virtual environment, you can use the + `otx` command line interface to perform various commands for templates related to the chosen task type, described in [OTX CLI commands](#otx-cli-commands) on that virutal environment. -1. When `ote_cli` is installed in the virtual environment, you can use the - `ote` command line interface to perform various actions for templates related to the chosen task type, such as running, training, evaluating, exporting, etc. +## OTX CLI commands -## OTE CLI commands +### Find -### ote find - -`ote find` lists model templates available for the given virtual environment. +`find` lists model templates available for the given virtual environment. ```bash -ote find --root $TASK_ALGO_DIR -``` +(otx) ...$ otx find --help +usage: otx find [-h] [--root ROOT] [--task_type {classification,detection,segmentation,instance_segmantation,rotated_detection,anomaly_classification,anomaly_detection,anomaly_segmentation}] + [--experimental] -Output for the mmdetection used in the above example looks as follows: +optional arguments: + -h, --help show this help message and exit + --root ROOT A root dir where templates should be searched. + --task_type {classification,detection,segmentation,instance_segmantation,rotated_detection,anomaly_classification,anomaly_detection,anomaly_segmentation} + --experimental +``` -```yaml -- id: Custom_Object_Detection_Gen3_VFNet - name: VFNet - path: ./external/mmdetection/configs/ote/custom-object-detection/gen3_resnet50_VFNet/template.yaml +```bash +# Example to find templates for the detection task +(otx) ...$ otx find --task_type detection +- id: Custom_Object_Detection_Gen3_SSD + name: SSD + path: otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml + task_type: DETECTION +- id: Custom_Object_Detection_YOLOX + name: YOLOX + path: otx/algorithms/detection/configs/detection/cspdarknet_yolox/template.yaml task_type: DETECTION - id: Custom_Object_Detection_Gen3_ATSS name: ATSS - path: ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml - task_type: DETECTION -- id: Custom_Object_Detection_Gen3_SSD - name: SSD - path: ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_SSD/template.yaml + path: otx/algorithms/detection/configs/detection/mobilenetv2_atss/template.yaml task_type: DETECTION -- ... ``` -### ote train +### Training -`ote train` trains a model (a particular model template) on a dataset and saves results in two files: +`train` trains a model (a particular model template) on a dataset and saves results in two files: - `weights.pth` - a model snapshot - `label_schema.json` - a label schema used in training, created from a dataset -These files can be used by other `ote` commands: `ote export`, `ote eval`, `ote demo`. +These files can be used by other commands: `export`, `eval`, and `demo`. -With the `--help` command, you can list additional information, such as its parameters common to all model templates and model-specific hyper parameters. - -#### common parameters - -command example: +`train` command requires `template` as a positional arguement. it could be taken from the output of the `find` command above. ```bash -ote train ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --help +otx train template ``` -output example: +And with the `--help` command along with `template`, you can list additional information, such as its parameters common to all model templates and model-specific hyper parameters. + +#### Common parameters ```bash -usage: ote train [-h] --train-ann-files TRAIN_ANN_FILES --train-data-roots - TRAIN_DATA_ROOTS --val-ann-files VAL_ANN_FILES - --val-data-roots VAL_DATA_ROOTS [--load-weights LOAD_WEIGHTS] - --save-model-to SAVE_MODEL_TO +# Command example to get common paramters to any model templates +(otx) ...$ otx train otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --help +usage: otx train [-h] --train-ann-files TRAIN_ANN_FILES --train-data-roots TRAIN_DATA_ROOTS --val-ann-files VAL_ANN_FILES --val-data-roots VAL_DATA_ROOTS [--load-weights LOAD_WEIGHTS] --save-model-to SAVE_MODEL_TO + [--enable-hpo] [--hpo-time-ratio HPO_TIME_RATIO] template {params} ... positional arguments: @@ -157,30 +132,21 @@ optional arguments: Expected ratio of total time to run HPO to time taken for full fine-tuning. ``` -#### model template-specific parameters +#### Model template-specific parameters command example: ```bash -ote train ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml params --help -``` - -output example: - -```bash -usage: ote train template params [-h] - [--learning_parameters.batch_size BATCH_SIZE] - [--learning_parameters.learning_rate LEARNING_RATE] - [--learning_parameters.learning_rate_warmup_iters LEARNING_RATE_WARMUP_ITERS] - [--learning_parameters.num_iters NUM_ITERS] - [--learning_parameters.enable_early_stopping ENABLE_EARLY_STOPPING] - [--learning_parameters.early_stop_patience EARLY_STOP_PATIENCE] - [--learning_parameters.early_stop_iteration_patience EARLY_STOP_ITERATION_PATIENCE] - [--postprocessing.confidence_threshold CONFIDENCE_THRESHOLD] - [--postprocessing.result_based_confidence_threshold RESULT_BASED_CONFIDENCE_THRESHOLD] - [--nncf_optimization.enable_quantization ENABLE_QUANTIZATION] - [--nncf_optimization.enable_pruning ENABLE_PRUNING] - [--nncf_optimization.maximal_accuracy_degradation MAXIMAL_ACCURACY_DEGRADATION] +# command example to get tamplate-specific parameters +(otx) ...$ otx train otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml params --help +usage: otx train template params [-h] [--learning_parameters.batch_size BATCH_SIZE] [--learning_parameters.learning_rate LEARNING_RATE] [--learning_parameters.learning_rate_warmup_iters LEARNING_RATE_WARMUP_ITERS] + [--learning_parameters.num_iters NUM_ITERS] [--learning_parameters.enable_early_stopping ENABLE_EARLY_STOPPING] [--learning_parameters.early_stop_start EARLY_STOP_START] + [--learning_parameters.early_stop_patience EARLY_STOP_PATIENCE] [--learning_parameters.early_stop_iteration_patience EARLY_STOP_ITERATION_PATIENCE] + [--learning_parameters.use_adaptive_interval USE_ADAPTIVE_INTERVAL] [--postprocessing.confidence_threshold CONFIDENCE_THRESHOLD] + [--postprocessing.result_based_confidence_threshold RESULT_BASED_CONFIDENCE_THRESHOLD] [--nncf_optimization.enable_quantization ENABLE_QUANTIZATION] + [--nncf_optimization.enable_pruning ENABLE_PRUNING] [--nncf_optimization.pruning_supported PRUNING_SUPPORTED] [--tiling_parameters.enable_tiling ENABLE_TILING] + [--tiling_parameters.enable_adaptive_params ENABLE_ADAPTIVE_PARAMS] [--tiling_parameters.tile_size TILE_SIZE] [--tiling_parameters.tile_overlap TILE_OVERLAP] + [--tiling_parameters.tile_max_number TILE_MAX_NUMBER] optional arguments: -h, --help show this help message and exit @@ -193,97 +159,92 @@ optional arguments: --learning_parameters.learning_rate LEARNING_RATE header: Learning rate type: FLOAT - default_value: 0.008 + default_value: 0.01 max_value: 0.1 min_value: 1e-07 --learning_parameters.learning_rate_warmup_iters LEARNING_RATE_WARMUP_ITERS header: Number of iterations for learning rate warmup type: INTEGER - default_value: 200 + default_value: 3 max_value: 10000 min_value: 0 - --learning_parameters.num_iters NUM_ITERS - header: Number of training iterations - type: INTEGER - default_value: 300 - max_value: 100000 - min_value: 1 - --learning_parameters.enable_early_stopping ENABLE_EARLY_STOPPING - header: Enable early stopping of the training - type: BOOLEAN - default_value: True - --learning_parameters.early_stop_patience EARLY_STOP_PATIENCE - header: Patience for early stopping - type: INTEGER - default_value: 10 - max_value: 50 - min_value: 0 - --learning_parameters.early_stop_iteration_patience EARLY_STOP_ITERATION_PATIENCE - header: Iteration patience for early stopping - type: INTEGER - default_value: 0 - max_value: 1000 - min_value: 0 - --postprocessing.confidence_threshold CONFIDENCE_THRESHOLD - header: Confidence threshold - type: FLOAT - default_value: 0.35 - max_value: 1 - min_value: 0 - --postprocessing.result_based_confidence_threshold RESULT_BASED_CONFIDENCE_THRESHOLD - header: Result based confidence threshold - type: BOOLEAN - default_value: True - --nncf_optimization.enable_quantization ENABLE_QUANTIZATION - header: Enable quantization algorithm - type: BOOLEAN - default_value: True - --nncf_optimization.enable_pruning ENABLE_PRUNING - header: Enable filter pruning algorithm - type: BOOLEAN - default_value: False - --nncf_optimization.maximal_accuracy_degradation MAXIMAL_ACCURACY_DEGRADATION - header: Maximum accuracy degradation - type: FLOAT - default_value: 1.0 - max_value: 100.0 - min_value: 0.0 +... ``` -### ote optimize +#### Command example of the training + +```bash +(otx) ...$ otx train otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --train-ann-file data/airport/annotation_person_train.json --train-data-roots data/airport/train/ --val-ann-files data/airport/annotation_person_val.json --val-data-roots data/airport/val/ --save-model-to outputs +... + +---------------iou_thr: 0.5--------------- + ++--------+-----+------+--------+-------+ +| class | gts | dets | recall | ap | ++--------+-----+------+--------+-------+ +| person | 0 | 2000 | 0.000 | 0.000 | ++--------+-----+------+--------+-------+ +| mAP | | | | 0.000 | ++--------+-----+------+--------+-------+ +2022-11-17 11:08:15,245 | INFO : run task done. +2022-11-17 11:08:15,318 | INFO : Inference completed +2022-11-17 11:08:15,319 | INFO : called evaluate() +2022-11-17 11:08:15,334 | INFO : F-measure after evaluation: 0.8809523809523808 +2022-11-17 11:08:15,334 | INFO : Evaluation completed +Performance(score: 0.8809523809523808, dashboard: (1 metric groups)) +``` -`ote optimize` optimizes a pre-trained model using NNCF or POT depending on the model format. +### Exporting -- NNCF optimization used for trained snapshots in a framework-specific format -- POT optimization used for models exported in the OpenVINO IR format +`export` exports a trained model to the OpenVINO format in order to efficiently run it on Intel hardware. -For example: -Optimize a PyTorch model (.pth) with OpenVINO NNCF: +With the `--help` command, you can list additional information, such as its parameters common to all model templates: +command example: ```bash -ote optimize ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --load-weights weights.pth --save-model-to ./nncf_output --save-performance ./nncf_output/performance.json --train-ann-file ./data/car_tree_bug/annotations/instances_default.json --train-data-roots ./data/car_tree_bug/images --val-ann-file ./data/car_tree_bug/annotations/instances_default.json --val-data-roots ./data/car_tree_bug/images -``` +(otx) ...$ otx export otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --help +usage: otx export [-h] --load-weights LOAD_WEIGHTS --save-model-to SAVE_MODEL_TO template -Optimize OpenVINO model (.bin or .xml) with OpenVINO POT: +positional arguments: + template -```bash -ote optimize ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --load-weights openvino.xml --save-model-to ./pot_output --save-performance ./pot_output/performance.json --train-ann-file ./data/car_tree_bug/annotations/instances_default.json --train-data-roots ./data/car_tree_bug/images --val-ann-file ./data/car_tree_bug/annotations/instances_default.json --val-data-roots ./data/car_tree_bug/images +optional arguments: + -h, --help show this help message and exit + --load-weights LOAD_WEIGHTS + Load weights from saved checkpoint for exporting + --save-model-to SAVE_MODEL_TO + Location where exported model will be stored. ``` -With the `--help` command, you can list additional information. -command example: +#### Command example of the exporting + +The command below performs exporting to the [trained model](#command-example-of-the-training) `outputs/weights.pth` in previous section and save exported model to the `outputs/ov/` folder. ```bash -ote optimize ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --help +(otx) ...$ otx export otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --load-weights outputs/weights.pth --save-model-to outputs/ov +... +[ INFO ] The model was converted to IR v11, the latest model format that corresponds to the source DL framework input/output format. While IR v11 is backwards compatible with OpenVINO Inference Engine API v1.0, please use API v2.0 (as of 2022.1) to take advantage of the latest improvements in IR v11. +Find more information about API v2.0 and IR v11 at https://docs.openvino.ai +2022-11-21 15:40:06,534 | INFO : Exporting completed +2022-11-21 15:40:06,534 | INFO : run task done. +2022-11-21 15:40:06,538 | INFO : Exporting completed ``` -Output example: +### Optimization + +`optimize` optimizes a model using NNCF or POT depending on the model format. + +- NNCF optimization used for trained snapshots in a framework-specific format such as checkpoint (pth) file from Pytorch +- POT optimization used for models exported in the OpenVINO IR format + +With the `--help` command, you can list additional information. +command example: ```bash -usage: ote optimize [-h] --train-ann-files TRAIN_ANN_FILES --train-data-roots TRAIN_DATA_ROOTS --val-ann-files - VAL_ANN_FILES --val-data-roots VAL_DATA_ROOTS --load-weights LOAD_WEIGHTS --save-model-to - SAVE_MODEL_TO [--aux-weights AUX_WEIGHTS] - template {params} ... +(otx) ...$ otx optimize otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --help +usage: otx optimize [-h] --train-ann-files TRAIN_ANN_FILES --train-data-roots TRAIN_DATA_ROOTS --val-ann-files VAL_ANN_FILES --val-data-roots VAL_DATA_ROOTS --load-weights LOAD_WEIGHTS --save-model-to SAVE_MODEL_TO + [--save-performance SAVE_PERFORMANCE] + template {params} ... positional arguments: template @@ -301,31 +262,39 @@ optional arguments: --val-data-roots VAL_DATA_ROOTS Comma-separated paths to validation data folders. --load-weights LOAD_WEIGHTS - Load weights of trained model + Load weights of trained model (for NNCF) or exported OpenVINO model (for POT) --save-model-to SAVE_MODEL_TO Location where trained model will be stored. - --aux-weights AUX_WEIGHTS - Load weights of trained auxiliary model + --save-performance SAVE_PERFORMANCE + Path to a json file where computed performance will be stored. ``` -### ote eval +#### Command example for optimizing a PyTorch model (.pth) with OpenVINO NNCF -`ote eval` runs evaluation of a trained model on a particular dataset. +The command below performs optimization to the [trained model](#command-example-of-the-training) `outputs/weights.pth` in previous section and save optimized model to the `outputs/nncf` folder. -With the `--help` command, you can list additional information, such as its parameters common to all model templates: -command example: +```bash +(otx) ...$ otx optimize otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --train-ann-files data/airport/annotation_person_train.json --train-data-roots data/airport/train/ --val-ann-files data/airport/annotation_person_val.json --val-data-roots data/airport/val/ --load-weights outputs/weights.pth --save-model-to outputs/nncf --save-performance outputs/nncf/performance.json +``` + +#### Command example for optimizing OpenVINO model (.xml) with OpenVINO POT + +The command below performs optimization to the [exported model](#command-example-of-the-exporting) `outputs/ov/openvino.xml` in previous section and save optimized model to the `outputs/ov/pot` folder. ```bash -ote eval ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --help +(otx) ...$ otx optimize otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --train-ann-files data/airport/annotation_person_train.json --train-data-roots data/airport/train/ --val-ann-files data/airport/annotation_person_val.json --val-data-roots data/airport/val/ --load-weights outputs/ov/openvino.xml --save-model-to outputs/ov/pot --save-performance outputs/ov/pot/performance.json ``` -output example: +### Evaluation + +`eval` runs evaluation of a model on the particular dataset. + +With the `--help` command, you can list additional information, such as its parameters common to all model templates: +command example: ```bash -usage: ote eval [-h] --test-ann-files TEST_ANN_FILES --test-data-roots - TEST_DATA_ROOTS --load-weights LOAD_WEIGHTS - [--save-performance SAVE_PERFORMANCE] - template {params} ... +(otx) ...$ otx eval otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --help +usage: otx eval [-h] --test-ann-files TEST_ANN_FILES --test-data-roots TEST_DATA_ROOTS --load-weights LOAD_WEIGHTS [--save-performance SAVE_PERFORMANCE] template {params} ... positional arguments: template @@ -339,59 +308,52 @@ optional arguments: --test-data-roots TEST_DATA_ROOTS Comma-separated paths to test data folders. --load-weights LOAD_WEIGHTS - Load only weights from previously saved checkpoint + Load weights to run the evaluation. It could be a trained/optimized model or exported model. --save-performance SAVE_PERFORMANCE - Path to a json file where computed performance will be - stored. + Path to a json file where computed performance will be stored. ``` -### ote export +> **_Note:_** Work-In-Progress for `params` argument. -`ote export` exports a trained model to the OpenVINO format in order to efficiently run it on Intel hardware. +#### Command example of the evaluation -With the `--help` command, you can list additional information, such as its parameters common to all model templates: -command example: +The command below performs evaluation to the [trained model](#command-example-of-the-training) `outputs/weights.pth` in previous section and save result performance to the `outputs/performance.json` file. ```bash -ote export ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --help +(otx) ...$ otx eval otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --test-ann-files data/airport/annotation_person_val.json --test-data-roots data/airport/val/ --load-weights outputs/weights.pth --save-performance outputs/performance.json +... +[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] 10/10, 7.9 task/s, elapsed: 1s, ETA: 0s +---------------iou_thr: 0.5--------------- + ++--------+-----+------+--------+-------+ +| class | gts | dets | recall | ap | ++--------+-----+------+--------+-------+ +| person | 0 | 2000 | 0.000 | 0.000 | ++--------+-----+------+--------+-------+ +| mAP | | | | 0.000 | ++--------+-----+------+--------+-------+ +2022-11-21 15:30:04,695 | INFO : run task done. +2022-11-21 15:30:04,734 | INFO : Inference completed +2022-11-21 15:30:04,734 | INFO : called evaluate() +2022-11-21 15:30:04,746 | INFO : F-measure after evaluation: 0.8799999999999999 +2022-11-21 15:30:04,746 | INFO : Evaluation completed +Performance(score: 0.8799999999999999, dashboard: (1 metric groups)) ``` -output example: - -```bash -usage: ote export [-h] --load-weights LOAD_WEIGHTS --save-model-to - SAVE_MODEL_TO - template - -positional arguments: - template - -optional arguments: - -h, --help show this help message and exit - --load-weights LOAD_WEIGHTS - Load only weights from previously saved checkpoint - --save-model-to SAVE_MODEL_TO - Location where exported model will be stored. -``` +### Demonstrate -### ote demo +`demo` runs model inference on images, videos, or webcam streams in order to see how it works with user's data -`ote demo` runs model inference on images, videos, or webcam streams in order to see how it works with user's data +> **_Note:_** `demo` command requires GUI backend to your system for displaying inference results. +> +> **_Note:_** The model optimzied with `NNCF` is not supported for the `demo` command. With the `--help` command, you can list additional information, such as its parameters common to all model templates: command example: ```bash -ote demo ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --help -``` - -output example: - -```bash -usage: ote demo [-h] -i INPUT --load-weights LOAD_WEIGHTS - [--fit-to-size FIT_TO_SIZE FIT_TO_SIZE] [--loop] - [--delay DELAY] [--display-perf] - template {params} ... +(otx) ...$ otx demo otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --help +usage: otx demo [-h] -i INPUT --load-weights LOAD_WEIGHTS [--fit-to-size FIT_TO_SIZE FIT_TO_SIZE] [--loop] [--delay DELAY] [--display-perf] template {params} ... positional arguments: template @@ -401,40 +363,38 @@ positional arguments: optional arguments: -h, --help show this help message and exit -i INPUT, --input INPUT - Source of input data: images folder, image, webcam and - video. + Source of input data: images folder, image, webcam and video. --load-weights LOAD_WEIGHTS - Load only weights from previously saved checkpoint + Load weights to run the evaluation. It could be a trained/optimized model (POT only) or exported model. --fit-to-size FIT_TO_SIZE FIT_TO_SIZE - Width and Height space-separated values. Fits - displayed images to window with specified Width and - Height. This options applies to result visualisation - only. + Width and Height space-separated values. Fits displayed images to window with specified Width and Height. This options applies to result visualisation only. --loop Enable reading the input in a loop. --delay DELAY Frame visualization time in ms. - --display-perf This option enables writing performance metrics on - displayed frame. These metrics take into account not - only model inference time, but also frame reading, - pre-processing and post-processing. + --display-perf This option enables writing performance metrics on displayed frame. These metrics take into account not only model inference time, but also frame reading, pre-processing and post-processing. ``` -### ote deploy - -`ote deploy` creates openvino.zip with a self-contained python package, a demo application, and an exported model. +#### Command example of the demostration -With the `--help` command, you can list additional information, such as its parameters common to all model templates: -command example: +The command below performs demonstration to the [optimized model](#command-example-for-optimizing-openvino-model-xml-with-openvino-pot) `outputs/ov/pot/openvino.xml` in previous section with images in the given input folder. ```bash -ote deploy ./external/mmdetection/configs/ote/custom-object-detection/gen3_mobilenetV2_ATSS/template.yaml --help +(otx) ...$ otx demo otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --input data/airport/val/ --load-weights outputs/ov/pot/openvino.xml --display-perf --delay 1000 +... +[ INFO ] OpenVINO inference completed ``` -output example: +> **_Note:_** The inference results with a model will be display to the GUI window with 1 second interval. If you execute this command from the remote environment (e.g., using text-only SSH via terminal) without having remote GUI client software, you can meet some error message from this command. + +### Deployment + +`deploy` creates openvino.zip with a self-contained python package, a demo application, and an exported model. + +With the `--help` command, you can list additional information, such as its parameters common to all model templates: +command example: ```bash -usage: ote deploy [-h] --load-weights LOAD_WEIGHTS - [--save-model-to SAVE_MODEL_TO] - template +(otx) ...$ otx deploy otx/algorithms/detection/configs/detection/mobilenetv2_ssd/template.yaml --help +usage: otx deploy [-h] --load-weights LOAD_WEIGHTS [--save-model-to SAVE_MODEL_TO] template positional arguments: template @@ -442,7 +402,7 @@ positional arguments: optional arguments: -h, --help show this help message and exit --load-weights LOAD_WEIGHTS - Load only weights from previously saved checkpoint. + Load model's weights from. --save-model-to SAVE_MODEL_TO Location where openvino.zip will be stored. ``` diff --git a/README.md b/README.md index e2c560eb8dc..7a65712fd9a 100644 --- a/README.md +++ b/README.md @@ -20,31 +20,65 @@ -OpenVINO™ Training Extensions provide a convenient environment to train -Deep Learning models and convert them using the [OpenVINO™ -toolkit](https://software.intel.com/en-us/openvino-toolkit) for optimized -inference. +> **_DISCLAIMERS_**: Some features described below are under development (refer to [feature/otx branch](https://github.com/openvinotoolkit/training_extensions/tree/feature/otx)). You can find more detailed estimation from the [Roadmap](#roadmap) section below. -# Prerequisites +## Overview -- Ubuntu 18.04 / 20.04 -- Python 3.8+ -- [CUDA Toolkit 11.1](https://developer.nvidia.com/cuda-11.1.1-download-archive) - for training on GPU +OpenVINO™ Training Extensions (OTX) is command-line interface (CLI) framework designed for low-code deep learning model training. OTX lets developers train/inference/optimize models with a diverse combination of model architectures and learning methods using the [OpenVINO™ +toolkit](https://software.intel.com/en-us/openvino-toolkit). For example, users can train a ResNet18-based SSD ([Single Shot Detection](https://arxiv.org/abs/1512.02325)) model in a semi-supervised manner without worrying about setting a configuration manually. `otx build` and `otx train` commands will automatically analyze users' dataset and do necessary tasks for training the model with best configuration. OTX provides the following features: -# Repository components +- Provide a set of pre-configured models for quick start + - `otx find` helps you quickly finds the best pre-configured models for common task types like classification, detection, segmentation, and anomaly analysis. +- Configure and train a model from torchvision, [OpenVINO Model Zoo (OMZ)](https://github.com/openvinotoolkit/open_model_zoo) + - `otx build` can help you configure your own model based on torchvision and OpenVINO Model Zoo models. You can replace backbones, necks and heads for your own preference (Currently only backbones are supported). +- Provide several learning methods including supervised, semi-supervised, imbalanced-learn, class-incremental, self-supervised representation learning + - `otx build` helps you automatically identify the best learning methods for your data and model. All you need to do is to set your data in the supported format. If you don't specify a model, the framework will automatically sets the best model for you. For example, if your dataset has long-tailed and partially-annotated bounding box annotations, OTX auto-configurator will choose a semi-supervised imbalanced-learning method and an appropriate model with the best parameters. +- Integrated efficient hyper-parameter optimization + - OTX has an integrated, efficient hyper-parameter optimization module. So, you don't need to worry about searching right hyper-parameters. Through dataset proxy and built-in hyper-parameter optimizer, you can get much faster hyper-parameter optimization compared to other off-the-shelf tools. The hyperparameter optimization is dynamically scheduled based on your resource budget. +- Support widely-used annotation formats + - OTX uses [datumaro](https://github.com/openvinotoolkit/datumaro), which is designed for dataset building and transformation, as a default interface for dataset management. All supported formats by datumaro are also consumable by OTX without the need of explicit data conversion. If you want to build your own custom dataset format, you can do this via datumaro CLI and API. -- [OTE SDK](ote_sdk) -- [OTE CLI](ote_cli) -- [OTE Algorithms](external) +--- + +## Roadmap + +### v1.0.0 (1Q23) + +- Installation through PyPI + - Package will be renamed as OTX (OpenVINO Training eXtension) +- CLI update + - Update `find` command to find configurations of tasks/algorithms + - Introduce `build` command to customize task or model configurations + - Automatic algorihm selection for the `train` command using the given input dataset +- Adaptation of [Datumaro](https://github.com/openvinotoolkit/datumaro) component as a dataset interface +- Integrate hyper-parameter optimizations +- Support action recognition task + +### v1.1.0 (2Q23) + +- SDK/API update + +--- + +## Repository + +- Components + - [OTX API](otx/api) + - [OTX CLI](otx/cli) + - [OTX Algorithms](otx/algorithms) +- Branches + - [develop](https://github.com/openvinotoolkit/training_extensions/tree/develop) + - Mainly maintained branch for releasing new features in the future + - [misc](https://github.com/openvinotoolkit/training_extensions/tree/misc) + - Previously developed models can be found on this branch + +--- # Quick start guide In order to get started with OpenVINO™ Training Extensions see [the quick-start guide](QUICK_START_GUIDE.md). -# GitHub Repository - -The project files can be found in [OpenVINO™ Training Extensions](https://github.com/openvinotoolkit/training_extensions). -Previously developed models can be found on the [misc branch](https://github.com/openvinotoolkit/training_extensions/tree/misc). +--- # License @@ -52,13 +86,23 @@ Deep Learning Deployment Toolkit is licensed under [Apache License Version 2.0]( By contributing to the project, you agree to the license and copyright terms therein and release your contribution under these terms. -# Contributing +--- + +## Issues / Discussions + +Please use [Issues](https://github.com/openvinotoolkit/training_extensions/issues/new/choose) tab for your bug reporting, feature requesting, or any questions. + +--- + +## Contributing Please read the [Contribution guide](CONTRIBUTING.md) before starting work on a pull request. -# Known limitations +--- + +## Known limitations -Training, export, and evaluation scripts for TensorFlow- and most PyTorch-based models from the [misc](#misc) branch are, currently, not production-ready. They serve exploratory purposes and are not validated. +Training, export, and evaluation scripts for TensorFlow- and most PyTorch-based models from the [misc](https://github.com/openvinotoolkit/training_extensions/tree/misc) branch are, currently, not production-ready. They serve exploratory purposes and are not validated. --- diff --git a/data/small_objects/annotations/image_info_test.json b/data/small_objects/annotations/image_info_test.json new file mode 100644 index 00000000000..ea37649f026 --- /dev/null +++ b/data/small_objects/annotations/image_info_test.json @@ -0,0 +1,35 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [], + "images": [ + { + "id": 9, + "width": 3500, + "height": 3500, + "file_name": "sample_0.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 10, + "width": 3500, + "height": 3500, + "file_name": "sample_1.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [] +} diff --git a/data/small_objects/annotations/image_info_train.json b/data/small_objects/annotations/image_info_train.json new file mode 100644 index 00000000000..d996e703c35 --- /dev/null +++ b/data/small_objects/annotations/image_info_train.json @@ -0,0 +1,75 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [], + "images": [ + { + "id": 1, + "width": 3500, + "height": 3500, + "file_name": "sample_2.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 2, + "width": 3500, + "height": 3500, + "file_name": "sample_3.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 3, + "width": 3500, + "height": 3500, + "file_name": "sample_4.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 4, + "width": 3500, + "height": 3500, + "file_name": "sample_6.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 5, + "width": 3500, + "height": 3500, + "file_name": "sample_7.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 6, + "width": 3500, + "height": 3500, + "file_name": "sample_9.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [] +} diff --git a/data/small_objects/annotations/image_info_val.json b/data/small_objects/annotations/image_info_val.json new file mode 100644 index 00000000000..1ac2c98bdf2 --- /dev/null +++ b/data/small_objects/annotations/image_info_val.json @@ -0,0 +1,35 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [], + "images": [ + { + "id": 7, + "width": 3500, + "height": 3500, + "file_name": "sample_5.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 8, + "width": 3500, + "height": 3500, + "file_name": "sample_8.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [] +} diff --git a/data/small_objects/annotations/instances_test.json b/data/small_objects/annotations/instances_test.json new file mode 100644 index 00000000000..3a0efb025a9 --- /dev/null +++ b/data/small_objects/annotations/instances_test.json @@ -0,0 +1,4631 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { "id": 1, "name": "rectangle", "supercategory": "" }, + { "id": 2, "name": "ellipse", "supercategory": "" }, + { "id": 3, "name": "triangle", "supercategory": "" } + ], + "images": [ + { + "id": 9, + "width": 3500, + "height": 3500, + "file_name": "sample_0.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 10, + "width": 3500, + "height": 3500, + "file_name": "sample_1.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [ + { + "id": 1, + "image_id": 9, + "category_id": 3, + "segmentation": [[1261.5, 1415.0, 1234.0, 1463.0, 1289.0, 1463.0]], + "area": 1326.0, + "bbox": [1234.0, 1415.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 2, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3356.0, 2286.5, 3355.7, 2291.33, 3354.79, 2296.07, 3353.3, 2300.67, + 3351.24, 2305.05, 3348.65, 2309.13, 3345.57, 2312.86, 3342.04, + 2316.16, 3338.13, 2319.01, 3333.89, 2321.34, 3329.4, 2323.12, 3324.71, + 2324.32, 3319.92, 2324.92, 3315.08, 2324.92, 3310.29, 2324.32, 3305.6, + 2323.12, 3301.11, 2321.34, 3296.87, 2319.01, 3292.96, 2316.16, + 3289.43, 2312.86, 3286.35, 2309.13, 3283.76, 2305.05, 3281.7, 2300.67, + 3280.21, 2296.07, 3279.3, 2291.33, 3279.0, 2286.5, 3279.3, 2281.67, + 3280.21, 2276.93, 3281.7, 2272.33, 3283.76, 2267.95, 3286.35, 2263.87, + 3289.43, 2260.14, 3292.96, 2256.84, 3296.87, 2253.99, 3301.11, + 2251.66, 3305.6, 2249.88, 3310.29, 2248.68, 3315.08, 2248.08, 3319.92, + 2248.08, 3324.71, 2248.68, 3329.4, 2249.88, 3333.89, 2251.66, 3338.13, + 2253.99, 3342.04, 2256.84, 3345.57, 2260.14, 3348.65, 2263.87, + 3351.24, 2267.95, 3353.3, 2272.33, 3354.79, 2276.93, 3355.7, 2281.67 + ] + ], + "area": 4653.0, + "bbox": [3279.0, 2248.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 3, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1417.0, 197.0, 1483.0, 197.0, 1483.0, 276.0, 1417.0, 276.0, 1417.0, + 197.0 + ] + ], + "area": 5214.0, + "bbox": [1417.0, 197.0, 66.0, 79.0], + "iscrowd": 0 + }, + { + "id": 4, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1760.5, 487.0, 1764.82, 486.73, 1769.08, 485.92, 1773.2, 484.58, + 1777.12, 482.73, 1780.78, 480.41, 1784.12, 477.65, 1787.08, 474.49, + 1789.63, 470.99, 1791.72, 467.19, 1793.31, 463.16, 1794.39, 458.96, + 1794.93, 454.67, 1794.93, 450.33, 1794.39, 446.04, 1793.31, 441.84, + 1791.72, 437.81, 1789.63, 434.01, 1787.08, 430.51, 1784.12, 427.35, + 1780.78, 424.59, 1777.12, 422.27, 1773.2, 420.42, 1769.08, 419.08, + 1764.82, 418.27, 1760.5, 418.0, 1756.18, 418.27, 1751.92, 419.08, + 1747.8, 420.42, 1743.88, 422.27, 1740.22, 424.59, 1736.88, 427.35, + 1733.92, 430.51, 1731.37, 434.01, 1729.28, 437.81, 1727.69, 441.84, + 1726.61, 446.04, 1726.07, 450.33, 1726.07, 454.67, 1726.61, 458.96, + 1727.69, 463.16, 1729.28, 467.19, 1731.37, 470.99, 1733.92, 474.49, + 1736.88, 477.65, 1740.22, 480.41, 1743.88, 482.73, 1747.8, 484.58, + 1751.92, 485.92, 1756.18, 486.73 + ] + ], + "area": 3743.0, + "bbox": [1726.07, 418.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 5, + "image_id": 9, + "category_id": 3, + "segmentation": [[1173.5, 1820.0, 1127.0, 1901.0, 1220.0, 1901.0]], + "area": 3776.0, + "bbox": [1127.0, 1820.0, 93.0, 81.0], + "iscrowd": 0 + }, + { + "id": 6, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1694.0, 2585.0, 1754.0, 2585.0, 1754.0, 2642.0, 1694.0, 2642.0, + 1694.0, 2585.0 + ] + ], + "area": 3420.0, + "bbox": [1694.0, 2585.0, 60.0, 57.0], + "iscrowd": 0 + }, + { + "id": 7, + "image_id": 9, + "category_id": 3, + "segmentation": [[1824.5, 1282.0, 1781.0, 1358.0, 1868.0, 1358.0]], + "area": 3315.0, + "bbox": [1781.0, 1282.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 8, + "image_id": 9, + "category_id": 3, + "segmentation": [[132.0, 1149.0, 98.0, 1209.0, 166.0, 1209.0]], + "area": 2048.0, + "bbox": [98.0, 1149.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 9, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1930.0, 1158.0, 2021.0, 1158.0, 2021.0, 1247.0, 1930.0, 1247.0, + 1930.0, 1158.0 + ] + ], + "area": 8099.0, + "bbox": [1930.0, 1158.0, 91.0, 89.0], + "iscrowd": 0 + }, + { + "id": 10, + "image_id": 9, + "category_id": 3, + "segmentation": [[1190.0, 3008.0, 1147.0, 3083.0, 1233.0, 3083.0]], + "area": 3234.0, + "bbox": [1147.0, 3008.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 11, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [12.0, 1147.0, 83.0, 1147.0, 83.0, 1229.0, 12.0, 1229.0, 12.0, 1147.0] + ], + "area": 5822.0, + "bbox": [12.0, 1147.0, 71.0, 82.0], + "iscrowd": 0 + }, + { + "id": 12, + "image_id": 9, + "category_id": 3, + "segmentation": [[1268.0, 157.0, 1221.0, 239.0, 1315.0, 239.0]], + "area": 3864.0, + "bbox": [1221.0, 157.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 13, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1091.0, 1533.0, 1148.0, 1533.0, 1148.0, 1588.0, 1091.0, 1588.0, + 1091.0, 1533.0 + ] + ], + "area": 3135.0, + "bbox": [1091.0, 1533.0, 57.0, 55.0], + "iscrowd": 0 + }, + { + "id": 14, + "image_id": 9, + "category_id": 3, + "segmentation": [[102.0, 137.0, 55.0, 219.0, 149.0, 219.0]], + "area": 3864.0, + "bbox": [55.0, 137.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 15, + "image_id": 9, + "category_id": 3, + "segmentation": [[509.0, 424.0, 481.0, 473.0, 537.0, 473.0]], + "area": 1372.0, + "bbox": [481.0, 424.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 16, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 134.0, 1884.0, 206.0, 1884.0, 206.0, 1958.0, 134.0, 1958.0, 134.0, + 1884.0 + ] + ], + "area": 5328.0, + "bbox": [134.0, 1884.0, 72.0, 74.0], + "iscrowd": 0 + }, + { + "id": 17, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1477.0, 1646.0, 1536.0, 1646.0, 1536.0, 1745.0, 1477.0, 1745.0, + 1477.0, 1646.0 + ] + ], + "area": 5841.0, + "bbox": [1477.0, 1646.0, 59.0, 99.0], + "iscrowd": 0 + }, + { + "id": 18, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1221.0, 2152.5, 1220.74, 2156.7, 1219.95, 2160.83, 1218.65, 2164.83, + 1216.86, 2168.64, 1214.6, 2172.19, 1211.92, 2175.43, 1208.85, 2178.31, + 1205.45, 2180.78, 1201.76, 2182.81, 1197.85, 2184.36, 1193.78, + 2185.41, 1189.6, 2185.93, 1185.4, 2185.93, 1181.22, 2185.41, 1177.15, + 2184.36, 1173.24, 2182.81, 1169.55, 2180.78, 1166.15, 2178.31, + 1163.08, 2175.43, 1160.4, 2172.19, 1158.14, 2168.64, 1156.35, 2164.83, + 1155.05, 2160.83, 1154.26, 2156.7, 1154.0, 2152.5, 1154.26, 2148.3, + 1155.05, 2144.17, 1156.35, 2140.17, 1158.14, 2136.36, 1160.4, 2132.81, + 1163.08, 2129.57, 1166.15, 2126.69, 1169.55, 2124.22, 1173.24, + 2122.19, 1177.15, 2120.64, 1181.22, 2119.59, 1185.4, 2119.07, 1189.6, + 2119.07, 1193.78, 2119.59, 1197.85, 2120.64, 1201.76, 2122.19, + 1205.45, 2124.22, 1208.85, 2126.69, 1211.92, 2129.57, 1214.6, 2132.81, + 1216.86, 2136.36, 1218.65, 2140.17, 1219.95, 2144.17, 1220.74, 2148.3 + ] + ], + "area": 3519.0, + "bbox": [1154.0, 2119.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 19, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 628.0, 2525.5, 627.65, 2531.08, 626.6, 2536.57, 624.88, 2541.88, + 622.5, 2546.94, 619.5, 2551.66, 615.94, 2555.96, 611.87, 2559.79, + 607.34, 2563.07, 602.45, 2565.76, 597.25, 2567.82, 591.84, 2569.21, + 586.29, 2569.91, 580.71, 2569.91, 575.16, 2569.21, 569.75, 2567.82, + 564.55, 2565.76, 559.66, 2563.07, 555.13, 2559.79, 551.06, 2555.96, + 547.5, 2551.66, 544.5, 2546.94, 542.12, 2541.88, 540.4, 2536.57, + 539.35, 2531.08, 539.0, 2525.5, 539.35, 2519.92, 540.4, 2514.43, + 542.12, 2509.12, 544.5, 2504.06, 547.5, 2499.34, 551.06, 2495.04, + 555.13, 2491.21, 559.66, 2487.93, 564.55, 2485.24, 569.75, 2483.18, + 575.16, 2481.79, 580.71, 2481.09, 586.29, 2481.09, 591.84, 2481.79, + 597.25, 2483.18, 602.45, 2485.24, 607.34, 2487.93, 611.87, 2491.21, + 615.94, 2495.04, 619.5, 2499.34, 622.5, 2504.06, 624.88, 2509.12, + 626.6, 2514.43, 627.65, 2519.92 + ] + ], + "area": 6208.0, + "bbox": [539.0, 2481.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 20, + "image_id": 9, + "category_id": 3, + "segmentation": [[2493.5, 2550.0, 2468.0, 2595.0, 2519.0, 2595.0]], + "area": 1154.0, + "bbox": [2468.0, 2550.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 21, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 902.0, 1477.0, 987.0, 1477.0, 987.0, 1550.0, 902.0, 1550.0, 902.0, + 1477.0 + ] + ], + "area": 6205.0, + "bbox": [902.0, 1477.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 22, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2996.0, 1249.5, 2995.73, 1253.82, 2994.92, 1258.08, 2993.58, 1262.2, + 2991.73, 1266.12, 2989.41, 1269.78, 2986.65, 1273.12, 2983.49, + 1276.08, 2979.99, 1278.63, 2976.19, 1280.72, 2972.16, 1282.31, + 2967.96, 1283.39, 2963.67, 1283.93, 2959.33, 1283.93, 2955.04, + 1283.39, 2950.84, 1282.31, 2946.81, 1280.72, 2943.01, 1278.63, + 2939.51, 1276.08, 2936.35, 1273.12, 2933.59, 1269.78, 2931.27, + 1266.12, 2929.42, 1262.2, 2928.08, 1258.08, 2927.27, 1253.82, 2927.0, + 1249.5, 2927.27, 1245.18, 2928.08, 1240.92, 2929.42, 1236.8, 2931.27, + 1232.88, 2933.59, 1229.22, 2936.35, 1225.88, 2939.51, 1222.92, + 2943.01, 1220.37, 2946.81, 1218.28, 2950.84, 1216.69, 2955.04, + 1215.61, 2959.33, 1215.07, 2963.67, 1215.07, 2967.96, 1215.61, + 2972.16, 1216.69, 2976.19, 1218.28, 2979.99, 1220.37, 2983.49, + 1222.92, 2986.65, 1225.88, 2989.41, 1229.22, 2991.73, 1232.88, + 2993.58, 1236.8, 2994.92, 1240.92, 2995.73, 1245.18 + ] + ], + "area": 3743.0, + "bbox": [2927.0, 1215.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 23, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 534.5, 2460.0, 539.07, 2459.71, 543.58, 2458.85, 547.94, 2457.44, + 552.08, 2455.49, 555.95, 2453.03, 559.49, 2450.11, 562.62, 2446.77, + 565.32, 2443.06, 567.53, 2439.04, 569.21, 2434.78, 570.35, 2430.34, + 570.93, 2425.79, 570.93, 2421.21, 570.35, 2416.66, 569.21, 2412.22, + 567.53, 2407.96, 565.32, 2403.94, 562.62, 2400.23, 559.49, 2396.89, + 555.95, 2393.97, 552.08, 2391.51, 547.94, 2389.56, 543.58, 2388.15, + 539.07, 2387.29, 534.5, 2387.0, 529.93, 2387.29, 525.42, 2388.15, + 521.06, 2389.56, 516.92, 2391.51, 513.05, 2393.97, 509.51, 2396.89, + 506.38, 2400.23, 503.68, 2403.94, 501.47, 2407.96, 499.79, 2412.22, + 498.65, 2416.66, 498.07, 2421.21, 498.07, 2425.79, 498.65, 2430.34, + 499.79, 2434.78, 501.47, 2439.04, 503.68, 2443.06, 506.38, 2446.77, + 509.51, 2450.11, 513.05, 2453.03, 516.92, 2455.49, 521.06, 2457.44, + 525.42, 2458.85, 529.93, 2459.71 + ] + ], + "area": 4187.0, + "bbox": [498.07, 2387.0, 72.86, 73.0], + "iscrowd": 0 + }, + { + "id": 24, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1070.0, 327.0, 1163.0, 327.0, 1163.0, 407.0, 1070.0, 407.0, 1070.0, + 327.0 + ] + ], + "area": 7440.0, + "bbox": [1070.0, 327.0, 93.0, 80.0], + "iscrowd": 0 + }, + { + "id": 25, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2261.0, 2427.0, 2356.0, 2427.0, 2356.0, 2497.0, 2261.0, 2497.0, + 2261.0, 2427.0 + ] + ], + "area": 6650.0, + "bbox": [2261.0, 2427.0, 95.0, 70.0], + "iscrowd": 0 + }, + { + "id": 26, + "image_id": 9, + "category_id": 3, + "segmentation": [[552.0, 1852.0, 511.0, 1924.0, 593.0, 1924.0]], + "area": 2960.0, + "bbox": [511.0, 1852.0, 82.0, 72.0], + "iscrowd": 0 + }, + { + "id": 27, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1766.0, 2573.0, 1862.0, 2573.0, 1862.0, 2664.0, 1766.0, 2664.0, + 1766.0, 2573.0 + ] + ], + "area": 8736.0, + "bbox": [1766.0, 2573.0, 96.0, 91.0], + "iscrowd": 0 + }, + { + "id": 28, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1505.0, 2061.0, 1590.0, 2061.0, 1590.0, 2132.0, 1505.0, 2132.0, + 1505.0, 2061.0 + ] + ], + "area": 6035.0, + "bbox": [1505.0, 2061.0, 85.0, 71.0], + "iscrowd": 0 + }, + { + "id": 29, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2785.0, 570.0, 2835.0, 570.0, 2835.0, 668.0, 2785.0, 668.0, 2785.0, + 570.0 + ] + ], + "area": 4900.0, + "bbox": [2785.0, 570.0, 50.0, 98.0], + "iscrowd": 0 + }, + { + "id": 30, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2437.5, 79.0, 2440.57, 78.81, 2443.59, 78.23, 2446.52, 77.28, 2449.3, + 75.97, 2451.9, 74.32, 2454.27, 72.36, 2456.38, 70.12, 2458.19, 67.63, + 2459.67, 64.93, 2460.8, 62.07, 2461.57, 59.09, 2461.95, 56.04, + 2461.95, 52.96, 2461.57, 49.91, 2460.8, 46.93, 2459.67, 44.07, + 2458.19, 41.37, 2456.38, 38.88, 2454.27, 36.64, 2451.9, 34.68, 2449.3, + 33.03, 2446.52, 31.72, 2443.59, 30.77, 2440.57, 30.19, 2437.5, 30.0, + 2434.43, 30.19, 2431.41, 30.77, 2428.48, 31.72, 2425.7, 33.03, 2423.1, + 34.68, 2420.73, 36.64, 2418.62, 38.88, 2416.81, 41.37, 2415.33, 44.07, + 2414.2, 46.93, 2413.43, 49.91, 2413.05, 52.96, 2413.05, 56.04, + 2413.43, 59.09, 2414.2, 62.07, 2415.33, 64.93, 2416.81, 67.63, + 2418.62, 70.12, 2420.73, 72.36, 2423.1, 74.32, 2425.7, 75.97, 2428.48, + 77.28, 2431.41, 78.23, 2434.43, 78.81 + ] + ], + "area": 1885.0, + "bbox": [2413.05, 30.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 31, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 344.0, 3002.0, 433.0, 3002.0, 433.0, 3068.0, 344.0, 3068.0, 344.0, + 3002.0 + ] + ], + "area": 5874.0, + "bbox": [344.0, 3002.0, 89.0, 66.0], + "iscrowd": 0 + }, + { + "id": 32, + "image_id": 9, + "category_id": 3, + "segmentation": [[2593.5, 115.0, 2563.0, 168.0, 2624.0, 168.0]], + "area": 1623.0, + "bbox": [2563.0, 115.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 33, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2553.0, 2876.5, 2552.63, 2882.45, 2551.51, 2888.31, 2549.66, 2893.99, + 2547.12, 2899.38, 2543.93, 2904.42, 2540.13, 2909.02, 2535.78, 2913.1, + 2530.95, 2916.61, 2525.72, 2919.48, 2520.18, 2921.68, 2514.4, 2923.16, + 2508.48, 2923.91, 2502.52, 2923.91, 2496.6, 2923.16, 2490.82, 2921.68, + 2485.28, 2919.48, 2480.05, 2916.61, 2475.22, 2913.1, 2470.87, 2909.02, + 2467.07, 2904.42, 2463.88, 2899.38, 2461.34, 2893.99, 2459.49, + 2888.31, 2458.37, 2882.45, 2458.0, 2876.5, 2458.37, 2870.55, 2459.49, + 2864.69, 2461.34, 2859.01, 2463.88, 2853.62, 2467.07, 2848.58, + 2470.87, 2843.98, 2475.22, 2839.9, 2480.05, 2836.39, 2485.28, 2833.52, + 2490.82, 2831.32, 2496.6, 2829.84, 2502.52, 2829.09, 2508.48, 2829.09, + 2514.4, 2829.84, 2520.18, 2831.32, 2525.72, 2833.52, 2530.95, 2836.39, + 2535.78, 2839.9, 2540.13, 2843.98, 2543.93, 2848.58, 2547.12, 2853.62, + 2549.66, 2859.01, 2551.51, 2864.69, 2552.63, 2870.55 + ] + ], + "area": 7083.0, + "bbox": [2458.0, 2829.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 34, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [422.0, 566.0, 509.0, 566.0, 509.0, 628.0, 422.0, 628.0, 422.0, 566.0] + ], + "area": 5394.0, + "bbox": [422.0, 566.0, 87.0, 62.0], + "iscrowd": 0 + }, + { + "id": 35, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2394.0, 2266.5, 2393.7, 2271.33, 2392.79, 2276.07, 2391.3, 2280.67, + 2389.24, 2285.05, 2386.65, 2289.13, 2383.57, 2292.86, 2380.04, + 2296.16, 2376.13, 2299.01, 2371.89, 2301.34, 2367.4, 2303.12, 2362.71, + 2304.32, 2357.92, 2304.92, 2353.08, 2304.92, 2348.29, 2304.32, 2343.6, + 2303.12, 2339.11, 2301.34, 2334.87, 2299.01, 2330.96, 2296.16, + 2327.43, 2292.86, 2324.35, 2289.13, 2321.76, 2285.05, 2319.7, 2280.67, + 2318.21, 2276.07, 2317.3, 2271.33, 2317.0, 2266.5, 2317.3, 2261.67, + 2318.21, 2256.93, 2319.7, 2252.33, 2321.76, 2247.95, 2324.35, 2243.87, + 2327.43, 2240.14, 2330.96, 2236.84, 2334.87, 2233.99, 2339.11, + 2231.66, 2343.6, 2229.88, 2348.29, 2228.68, 2353.08, 2228.08, 2357.92, + 2228.08, 2362.71, 2228.68, 2367.4, 2229.88, 2371.89, 2231.66, 2376.13, + 2233.99, 2380.04, 2236.84, 2383.57, 2240.14, 2386.65, 2243.87, + 2389.24, 2247.95, 2391.3, 2252.33, 2392.79, 2256.93, 2393.7, 2261.67 + ] + ], + "area": 4653.0, + "bbox": [2317.0, 2228.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 36, + "image_id": 9, + "category_id": 3, + "segmentation": [[525.0, 3045.0, 495.0, 3098.0, 555.0, 3098.0]], + "area": 1596.0, + "bbox": [495.0, 3045.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 37, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2686.0, 1405.0, 2757.0, 1405.0, 2757.0, 1479.0, 2686.0, 1479.0, + 2686.0, 1405.0 + ] + ], + "area": 5254.0, + "bbox": [2686.0, 1405.0, 71.0, 74.0], + "iscrowd": 0 + }, + { + "id": 38, + "image_id": 9, + "category_id": 3, + "segmentation": [[1204.0, 3174.0, 1178.0, 3220.0, 1230.0, 3220.0]], + "area": 1202.0, + "bbox": [1178.0, 3174.0, 52.0, 46.0], + "iscrowd": 0 + }, + { + "id": 39, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2913.0, 1354.0, 2983.0, 1354.0, 2983.0, 1419.0, 2913.0, 1419.0, + 2913.0, 1354.0 + ] + ], + "area": 4550.0, + "bbox": [2913.0, 1354.0, 70.0, 65.0], + "iscrowd": 0 + }, + { + "id": 40, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1020.0, 1900.0, 1077.0, 1900.0, 1077.0, 1960.0, 1020.0, 1960.0, + 1020.0, 1900.0 + ] + ], + "area": 3420.0, + "bbox": [1020.0, 1900.0, 57.0, 60.0], + "iscrowd": 0 + }, + { + "id": 41, + "image_id": 9, + "category_id": 3, + "segmentation": [[1033.5, 1599.0, 995.0, 1666.0, 1072.0, 1666.0]], + "area": 2588.0, + "bbox": [995.0, 1599.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 42, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2665.0, 1197.0, 2748.0, 1197.0, 2748.0, 1288.0, 2665.0, 1288.0, + 2665.0, 1197.0 + ] + ], + "area": 7553.0, + "bbox": [2665.0, 1197.0, 83.0, 91.0], + "iscrowd": 0 + }, + { + "id": 43, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1844.0, 1566.0, 1903.0, 1566.0, 1903.0, 1663.0, 1844.0, 1663.0, + 1844.0, 1566.0 + ] + ], + "area": 5723.0, + "bbox": [1844.0, 1566.0, 59.0, 97.0], + "iscrowd": 0 + }, + { + "id": 44, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2658.0, 3079.5, 2657.81, 3082.57, 2657.23, 3085.59, 2656.28, 3088.52, + 2654.97, 3091.3, 2653.32, 3093.9, 2651.36, 3096.27, 2649.12, 3098.38, + 2646.63, 3100.19, 2643.93, 3101.67, 2641.07, 3102.8, 2638.09, 3103.57, + 2635.04, 3103.95, 2631.96, 3103.95, 2628.91, 3103.57, 2625.93, 3102.8, + 2623.07, 3101.67, 2620.37, 3100.19, 2617.88, 3098.38, 2615.64, + 3096.27, 2613.68, 3093.9, 2612.03, 3091.3, 2610.72, 3088.52, 2609.77, + 3085.59, 2609.19, 3082.57, 2609.0, 3079.5, 2609.19, 3076.43, 2609.77, + 3073.41, 2610.72, 3070.48, 2612.03, 3067.7, 2613.68, 3065.1, 2615.64, + 3062.73, 2617.88, 3060.62, 2620.37, 3058.81, 2623.07, 3057.33, + 2625.93, 3056.2, 2628.91, 3055.43, 2631.96, 3055.05, 2635.04, 3055.05, + 2638.09, 3055.43, 2641.07, 3056.2, 2643.93, 3057.33, 2646.63, 3058.81, + 2649.12, 3060.62, 2651.36, 3062.73, 2653.32, 3065.1, 2654.97, 3067.7, + 2656.28, 3070.48, 2657.23, 3073.41, 2657.81, 3076.43 + ] + ], + "area": 1885.0, + "bbox": [2609.0, 3055.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 45, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2909.0, 1024.0, 2980.0, 1024.0, 2980.0, 1101.0, 2909.0, 1101.0, + 2909.0, 1024.0 + ] + ], + "area": 5467.0, + "bbox": [2909.0, 1024.0, 71.0, 77.0], + "iscrowd": 0 + }, + { + "id": 46, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [61.0, 1762.0, 152.0, 1762.0, 152.0, 1825.0, 61.0, 1825.0, 61.0, 1762.0] + ], + "area": 5733.0, + "bbox": [61.0, 1762.0, 91.0, 63.0], + "iscrowd": 0 + }, + { + "id": 47, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2257.5, 96.0, 2262.2, 95.7, 2266.83, 94.82, 2271.3, 93.37, 2275.57, + 91.36, 2279.54, 88.84, 2283.17, 85.84, 2286.39, 82.4, 2289.16, 78.59, + 2291.43, 74.47, 2293.16, 70.09, 2294.34, 65.53, 2294.93, 60.85, + 2294.93, 56.15, 2294.34, 51.47, 2293.16, 46.91, 2291.43, 42.53, + 2289.16, 38.41, 2286.39, 34.6, 2283.17, 31.16, 2279.54, 28.16, + 2275.57, 25.64, 2271.3, 23.63, 2266.83, 22.18, 2262.2, 21.3, 2257.5, + 21.0, 2252.8, 21.3, 2248.17, 22.18, 2243.7, 23.63, 2239.43, 25.64, + 2235.46, 28.16, 2231.83, 31.16, 2228.61, 34.6, 2225.84, 38.41, + 2223.57, 42.53, 2221.84, 46.91, 2220.66, 51.47, 2220.07, 56.15, + 2220.07, 60.85, 2220.66, 65.53, 2221.84, 70.09, 2223.57, 74.47, + 2225.84, 78.59, 2228.61, 82.4, 2231.83, 85.84, 2235.46, 88.84, + 2239.43, 91.36, 2243.7, 93.37, 2248.17, 94.82, 2252.8, 95.7 + ] + ], + "area": 4409.0, + "bbox": [2220.07, 21.0, 74.86, 75.0], + "iscrowd": 0 + }, + { + "id": 48, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 801.0, 1200.5, 800.72, 1204.95, 799.88, 1209.33, 798.51, 1213.57, + 796.61, 1217.6, 794.22, 1221.37, 791.38, 1224.8, 788.13, 1227.85, + 784.52, 1230.47, 780.62, 1232.62, 776.47, 1234.26, 772.15, 1235.37, + 767.73, 1235.93, 763.27, 1235.93, 758.85, 1235.37, 754.53, 1234.26, + 750.38, 1232.62, 746.48, 1230.47, 742.87, 1227.85, 739.62, 1224.8, + 736.78, 1221.37, 734.39, 1217.6, 732.49, 1213.57, 731.12, 1209.33, + 730.28, 1204.95, 730.0, 1200.5, 730.28, 1196.05, 731.12, 1191.67, + 732.49, 1187.43, 734.39, 1183.4, 736.78, 1179.63, 739.62, 1176.2, + 742.87, 1173.15, 746.48, 1170.53, 750.38, 1168.38, 754.53, 1166.74, + 758.85, 1165.63, 763.27, 1165.07, 767.73, 1165.07, 772.15, 1165.63, + 776.47, 1166.74, 780.62, 1168.38, 784.52, 1170.53, 788.13, 1173.15, + 791.38, 1176.2, 794.22, 1179.63, 796.61, 1183.4, 798.51, 1187.43, + 799.88, 1191.67, 800.72, 1196.05 + ] + ], + "area": 3957.0, + "bbox": [730.0, 1165.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 49, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 337.0, 2418.0, 416.0, 2418.0, 416.0, 2505.0, 337.0, 2505.0, 337.0, + 2418.0 + ] + ], + "area": 6873.0, + "bbox": [337.0, 2418.0, 79.0, 87.0], + "iscrowd": 0 + }, + { + "id": 50, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2871.0, 320.0, 2954.0, 320.0, 2954.0, 414.0, 2871.0, 414.0, 2871.0, + 320.0 + ] + ], + "area": 7802.0, + "bbox": [2871.0, 320.0, 83.0, 94.0], + "iscrowd": 0 + }, + { + "id": 51, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1657.0, 142.0, 1752.0, 142.0, 1752.0, 235.0, 1657.0, 235.0, 1657.0, + 142.0 + ] + ], + "area": 8835.0, + "bbox": [1657.0, 142.0, 95.0, 93.0], + "iscrowd": 0 + }, + { + "id": 52, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [78.0, 513.0, 145.0, 513.0, 145.0, 594.0, 78.0, 594.0, 78.0, 513.0] + ], + "area": 5427.0, + "bbox": [78.0, 513.0, 67.0, 81.0], + "iscrowd": 0 + }, + { + "id": 53, + "image_id": 9, + "category_id": 3, + "segmentation": [[2432.0, 1907.0, 2402.0, 1960.0, 2462.0, 1960.0]], + "area": 1596.0, + "bbox": [2402.0, 1907.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 54, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1436.0, 357.0, 1493.0, 357.0, 1493.0, 412.0, 1436.0, 412.0, 1436.0, + 357.0 + ] + ], + "area": 3135.0, + "bbox": [1436.0, 357.0, 57.0, 55.0], + "iscrowd": 0 + }, + { + "id": 55, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3268.0, 2811.5, 3267.77, 2815.2, 3267.07, 2818.84, 3265.93, 2822.36, + 3264.35, 2825.71, 3262.37, 2828.84, 3260.0, 2831.69, 3257.3, 2834.23, + 3254.31, 2836.41, 3251.06, 2838.19, 3247.62, 2839.56, 3244.03, + 2840.48, 3240.35, 2840.94, 3236.65, 2840.94, 3232.97, 2840.48, + 3229.38, 2839.56, 3225.94, 2838.19, 3222.69, 2836.41, 3219.7, 2834.23, + 3217.0, 2831.69, 3214.63, 2828.84, 3212.65, 2825.71, 3211.07, 2822.36, + 3209.93, 2818.84, 3209.23, 2815.2, 3209.0, 2811.5, 3209.23, 2807.8, + 3209.93, 2804.16, 3211.07, 2800.64, 3212.65, 2797.29, 3214.63, + 2794.16, 3217.0, 2791.31, 3219.7, 2788.77, 3222.69, 2786.59, 3225.94, + 2784.81, 3229.38, 2783.44, 3232.97, 2782.52, 3236.65, 2782.06, + 3240.35, 2782.06, 3244.03, 2782.52, 3247.62, 2783.44, 3251.06, + 2784.81, 3254.31, 2786.59, 3257.3, 2788.77, 3260.0, 2791.31, 3262.37, + 2794.16, 3264.35, 2797.29, 3265.93, 2800.64, 3267.07, 2804.16, + 3267.77, 2807.8 + ] + ], + "area": 2729.0, + "bbox": [3209.0, 2782.06, 59.0, 58.88], + "iscrowd": 0 + }, + { + "id": 56, + "image_id": 9, + "category_id": 3, + "segmentation": [[3048.5, 1201.0, 3004.0, 1279.0, 3093.0, 1279.0]], + "area": 3477.0, + "bbox": [3004.0, 1201.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 57, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1755.0, 1007.5, 1754.8, 1010.7, 1754.2, 1013.84, 1753.21, 1016.89, + 1751.85, 1019.78, 1750.13, 1022.49, 1748.09, 1024.96, 1745.75, + 1027.15, 1743.16, 1029.03, 1740.36, 1030.57, 1737.38, 1031.75, + 1734.28, 1032.55, 1731.1, 1032.95, 1727.9, 1032.95, 1724.72, 1032.55, + 1721.62, 1031.75, 1718.64, 1030.57, 1715.84, 1029.03, 1713.25, + 1027.15, 1710.91, 1024.96, 1708.87, 1022.49, 1707.15, 1019.78, + 1705.79, 1016.89, 1704.8, 1013.84, 1704.2, 1010.7, 1704.0, 1007.5, + 1704.2, 1004.3, 1704.8, 1001.16, 1705.79, 998.11, 1707.15, 995.22, + 1708.87, 992.51, 1710.91, 990.04, 1713.25, 987.85, 1715.84, 985.97, + 1718.64, 984.43, 1721.62, 983.25, 1724.72, 982.45, 1727.9, 982.05, + 1731.1, 982.05, 1734.28, 982.45, 1737.38, 983.25, 1740.36, 984.43, + 1743.16, 985.97, 1745.75, 987.85, 1748.09, 990.04, 1750.13, 992.51, + 1751.85, 995.22, 1753.21, 998.11, 1754.2, 1001.16, 1754.8, 1004.3 + ] + ], + "area": 2037.0, + "bbox": [1704.0, 982.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 58, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1644.0, 2704.5, 1643.73, 2708.82, 1642.92, 2713.08, 1641.58, 2717.2, + 1639.73, 2721.12, 1637.41, 2724.78, 1634.65, 2728.12, 1631.49, + 2731.08, 1627.99, 2733.63, 1624.19, 2735.72, 1620.16, 2737.31, + 1615.96, 2738.39, 1611.67, 2738.93, 1607.33, 2738.93, 1603.04, + 2738.39, 1598.84, 2737.31, 1594.81, 2735.72, 1591.01, 2733.63, + 1587.51, 2731.08, 1584.35, 2728.12, 1581.59, 2724.78, 1579.27, + 2721.12, 1577.42, 2717.2, 1576.08, 2713.08, 1575.27, 2708.82, 1575.0, + 2704.5, 1575.27, 2700.18, 1576.08, 2695.92, 1577.42, 2691.8, 1579.27, + 2687.88, 1581.59, 2684.22, 1584.35, 2680.88, 1587.51, 2677.92, + 1591.01, 2675.37, 1594.81, 2673.28, 1598.84, 2671.69, 1603.04, + 2670.61, 1607.33, 2670.07, 1611.67, 2670.07, 1615.96, 2670.61, + 1620.16, 2671.69, 1624.19, 2673.28, 1627.99, 2675.37, 1631.49, + 2677.92, 1634.65, 2680.88, 1637.41, 2684.22, 1639.73, 2687.88, + 1641.58, 2691.8, 1642.92, 2695.92, 1643.73, 2700.18 + ] + ], + "area": 3743.0, + "bbox": [1575.0, 2670.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 59, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1945.5, 1476.0, 1949.2, 1475.77, 1952.84, 1475.07, 1956.36, 1473.93, + 1959.71, 1472.35, 1962.84, 1470.37, 1965.69, 1468.0, 1968.23, 1465.3, + 1970.41, 1462.31, 1972.19, 1459.06, 1973.56, 1455.62, 1974.48, + 1452.03, 1974.94, 1448.35, 1974.94, 1444.65, 1974.48, 1440.97, + 1973.56, 1437.38, 1972.19, 1433.94, 1970.41, 1430.69, 1968.23, 1427.7, + 1965.69, 1425.0, 1962.84, 1422.63, 1959.71, 1420.65, 1956.36, 1419.07, + 1952.84, 1417.93, 1949.2, 1417.23, 1945.5, 1417.0, 1941.8, 1417.23, + 1938.16, 1417.93, 1934.64, 1419.07, 1931.29, 1420.65, 1928.16, + 1422.63, 1925.31, 1425.0, 1922.77, 1427.7, 1920.59, 1430.69, 1918.81, + 1433.94, 1917.44, 1437.38, 1916.52, 1440.97, 1916.06, 1444.65, + 1916.06, 1448.35, 1916.52, 1452.03, 1917.44, 1455.62, 1918.81, + 1459.06, 1920.59, 1462.31, 1922.77, 1465.3, 1925.31, 1468.0, 1928.16, + 1470.37, 1931.29, 1472.35, 1934.64, 1473.93, 1938.16, 1475.07, 1941.8, + 1475.77 + ] + ], + "area": 2732.0, + "bbox": [1916.06, 1417.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 60, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1761.0, 824.0, 1822.0, 824.0, 1822.0, 915.0, 1761.0, 915.0, 1761.0, + 824.0 + ] + ], + "area": 5551.0, + "bbox": [1761.0, 824.0, 61.0, 91.0], + "iscrowd": 0 + }, + { + "id": 61, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1664.5, 379.0, 1669.33, 378.7, 1674.07, 377.79, 1678.67, 376.3, + 1683.05, 374.24, 1687.13, 371.65, 1690.86, 368.57, 1694.16, 365.04, + 1697.01, 361.13, 1699.34, 356.89, 1701.12, 352.4, 1702.32, 347.71, + 1702.92, 342.92, 1702.92, 338.08, 1702.32, 333.29, 1701.12, 328.6, + 1699.34, 324.11, 1697.01, 319.87, 1694.16, 315.96, 1690.86, 312.43, + 1687.13, 309.35, 1683.05, 306.76, 1678.67, 304.7, 1674.07, 303.21, + 1669.33, 302.3, 1664.5, 302.0, 1659.67, 302.3, 1654.93, 303.21, + 1650.33, 304.7, 1645.95, 306.76, 1641.87, 309.35, 1638.14, 312.43, + 1634.84, 315.96, 1631.99, 319.87, 1629.66, 324.11, 1627.88, 328.6, + 1626.68, 333.29, 1626.08, 338.08, 1626.08, 342.92, 1626.68, 347.71, + 1627.88, 352.4, 1629.66, 356.89, 1631.99, 361.13, 1634.84, 365.04, + 1638.14, 368.57, 1641.87, 371.65, 1645.95, 374.24, 1650.33, 376.3, + 1654.93, 377.79, 1659.67, 378.7 + ] + ], + "area": 4651.0, + "bbox": [1626.08, 302.0, 76.84, 77.0], + "iscrowd": 0 + }, + { + "id": 62, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2444.0, 2756.0, 2514.0, 2756.0, 2514.0, 2807.0, 2444.0, 2807.0, + 2444.0, 2756.0 + ] + ], + "area": 3570.0, + "bbox": [2444.0, 2756.0, 70.0, 51.0], + "iscrowd": 0 + }, + { + "id": 63, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3299.0, 811.5, 3298.8, 814.7, 3298.2, 817.84, 3297.21, 820.89, + 3295.85, 823.78, 3294.13, 826.49, 3292.09, 828.96, 3289.75, 831.15, + 3287.16, 833.03, 3284.36, 834.57, 3281.38, 835.75, 3278.28, 836.55, + 3275.1, 836.95, 3271.9, 836.95, 3268.72, 836.55, 3265.62, 835.75, + 3262.64, 834.57, 3259.84, 833.03, 3257.25, 831.15, 3254.91, 828.96, + 3252.87, 826.49, 3251.15, 823.78, 3249.79, 820.89, 3248.8, 817.84, + 3248.2, 814.7, 3248.0, 811.5, 3248.2, 808.3, 3248.8, 805.16, 3249.79, + 802.11, 3251.15, 799.22, 3252.87, 796.51, 3254.91, 794.04, 3257.25, + 791.85, 3259.84, 789.97, 3262.64, 788.43, 3265.62, 787.25, 3268.72, + 786.45, 3271.9, 786.05, 3275.1, 786.05, 3278.28, 786.45, 3281.38, + 787.25, 3284.36, 788.43, 3287.16, 789.97, 3289.75, 791.85, 3292.09, + 794.04, 3294.13, 796.51, 3295.85, 799.22, 3297.21, 802.11, 3298.2, + 805.16, 3298.8, 808.3 + ] + ], + "area": 2037.0, + "bbox": [3248.0, 786.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 64, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 919.0, 2700.0, 986.0, 2700.0, 986.0, 2781.0, 919.0, 2781.0, 919.0, + 2700.0 + ] + ], + "area": 5427.0, + "bbox": [919.0, 2700.0, 67.0, 81.0], + "iscrowd": 0 + }, + { + "id": 65, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2513.0, 3048.5, 2512.73, 3052.82, 2511.92, 3057.08, 2510.58, 3061.2, + 2508.73, 3065.12, 2506.41, 3068.78, 2503.65, 3072.12, 2500.49, + 3075.08, 2496.99, 3077.63, 2493.19, 3079.72, 2489.16, 3081.31, + 2484.96, 3082.39, 2480.67, 3082.93, 2476.33, 3082.93, 2472.04, + 3082.39, 2467.84, 3081.31, 2463.81, 3079.72, 2460.01, 3077.63, + 2456.51, 3075.08, 2453.35, 3072.12, 2450.59, 3068.78, 2448.27, + 3065.12, 2446.42, 3061.2, 2445.08, 3057.08, 2444.27, 3052.82, 2444.0, + 3048.5, 2444.27, 3044.18, 2445.08, 3039.92, 2446.42, 3035.8, 2448.27, + 3031.88, 2450.59, 3028.22, 2453.35, 3024.88, 2456.51, 3021.92, + 2460.01, 3019.37, 2463.81, 3017.28, 2467.84, 3015.69, 2472.04, + 3014.61, 2476.33, 3014.07, 2480.67, 3014.07, 2484.96, 3014.61, + 2489.16, 3015.69, 2493.19, 3017.28, 2496.99, 3019.37, 2500.49, + 3021.92, 2503.65, 3024.88, 2506.41, 3028.22, 2508.73, 3031.88, + 2510.58, 3035.8, 2511.92, 3039.92, 2512.73, 3044.18 + ] + ], + "area": 3743.0, + "bbox": [2444.0, 3014.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 66, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 519.0, 2318.0, 597.0, 2318.0, 597.0, 2382.0, 519.0, 2382.0, 519.0, + 2318.0 + ] + ], + "area": 4992.0, + "bbox": [519.0, 2318.0, 78.0, 64.0], + "iscrowd": 0 + }, + { + "id": 67, + "image_id": 9, + "category_id": 3, + "segmentation": [[750.0, 1344.0, 725.0, 1388.0, 775.0, 1388.0]], + "area": 1105.0, + "bbox": [725.0, 1344.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 68, + "image_id": 9, + "category_id": 3, + "segmentation": [[713.5, 2155.0, 684.0, 2207.0, 743.0, 2207.0]], + "area": 1542.0, + "bbox": [684.0, 2155.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 69, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2721.5, 2274.0, 2726.95, 2273.66, 2732.32, 2272.63, 2737.51, 2270.95, + 2742.46, 2268.62, 2747.07, 2265.69, 2751.28, 2262.21, 2755.02, + 2258.23, 2758.23, 2253.81, 2760.86, 2249.02, 2762.87, 2243.94, + 2764.23, 2238.65, 2764.91, 2233.23, 2764.91, 2227.77, 2764.23, + 2222.35, 2762.87, 2217.06, 2760.86, 2211.98, 2758.23, 2207.19, + 2755.02, 2202.77, 2751.28, 2198.79, 2747.07, 2195.31, 2742.46, + 2192.38, 2737.51, 2190.05, 2732.32, 2188.37, 2726.95, 2187.34, 2721.5, + 2187.0, 2716.05, 2187.34, 2710.68, 2188.37, 2705.49, 2190.05, 2700.54, + 2192.38, 2695.93, 2195.31, 2691.72, 2198.79, 2687.98, 2202.77, + 2684.77, 2207.19, 2682.14, 2211.98, 2680.13, 2217.06, 2678.77, + 2222.35, 2678.09, 2227.77, 2678.09, 2233.23, 2678.77, 2238.65, + 2680.13, 2243.94, 2682.14, 2249.02, 2684.77, 2253.81, 2687.98, + 2258.23, 2691.72, 2262.21, 2695.93, 2265.69, 2700.54, 2268.62, + 2705.49, 2270.95, 2710.68, 2272.63, 2716.05, 2273.66 + ] + ], + "area": 5930.0, + "bbox": [2678.09, 2187.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 70, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1690.0, 3196.0, 1749.0, 3196.0, 1749.0, 3284.0, 1690.0, 3284.0, + 1690.0, 3196.0 + ] + ], + "area": 5192.0, + "bbox": [1690.0, 3196.0, 59.0, 88.0], + "iscrowd": 0 + }, + { + "id": 71, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2858.0, 2469.5, 2857.8, 2472.7, 2857.2, 2475.84, 2856.21, 2478.89, + 2854.85, 2481.78, 2853.13, 2484.49, 2851.09, 2486.96, 2848.75, + 2489.15, 2846.16, 2491.03, 2843.36, 2492.57, 2840.38, 2493.75, + 2837.28, 2494.55, 2834.1, 2494.95, 2830.9, 2494.95, 2827.72, 2494.55, + 2824.62, 2493.75, 2821.64, 2492.57, 2818.84, 2491.03, 2816.25, + 2489.15, 2813.91, 2486.96, 2811.87, 2484.49, 2810.15, 2481.78, + 2808.79, 2478.89, 2807.8, 2475.84, 2807.2, 2472.7, 2807.0, 2469.5, + 2807.2, 2466.3, 2807.8, 2463.16, 2808.79, 2460.11, 2810.15, 2457.22, + 2811.87, 2454.51, 2813.91, 2452.04, 2816.25, 2449.85, 2818.84, + 2447.97, 2821.64, 2446.43, 2824.62, 2445.25, 2827.72, 2444.45, 2830.9, + 2444.05, 2834.1, 2444.05, 2837.28, 2444.45, 2840.38, 2445.25, 2843.36, + 2446.43, 2846.16, 2447.97, 2848.75, 2449.85, 2851.09, 2452.04, + 2853.13, 2454.51, 2854.85, 2457.22, 2856.21, 2460.11, 2857.2, 2463.16, + 2857.8, 2466.3 + ] + ], + "area": 2037.0, + "bbox": [2807.0, 2444.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 72, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2006.0, 346.0, 2083.0, 346.0, 2083.0, 413.0, 2006.0, 413.0, 2006.0, + 346.0 + ] + ], + "area": 5159.0, + "bbox": [2006.0, 346.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 73, + "image_id": 9, + "category_id": 3, + "segmentation": [[547.5, 3372.0, 522.0, 3417.0, 573.0, 3417.0]], + "area": 1154.0, + "bbox": [522.0, 3372.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 74, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 914.0, 1705.0, 990.0, 1705.0, 990.0, 1756.0, 914.0, 1756.0, 914.0, + 1705.0 + ] + ], + "area": 3876.0, + "bbox": [914.0, 1705.0, 76.0, 51.0], + "iscrowd": 0 + }, + { + "id": 75, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1595.0, 872.0, 1667.0, 872.0, 1667.0, 933.0, 1595.0, 933.0, 1595.0, + 872.0 + ] + ], + "area": 4392.0, + "bbox": [1595.0, 872.0, 72.0, 61.0], + "iscrowd": 0 + }, + { + "id": 76, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1261.0, 2626.5, 1260.62, 2632.58, 1259.48, 2638.56, 1257.59, 2644.35, + 1255.0, 2649.87, 1251.74, 2655.01, 1247.85, 2659.7, 1243.42, 2663.87, + 1238.49, 2667.45, 1233.15, 2670.38, 1227.49, 2672.63, 1221.59, + 2674.14, 1215.55, 2674.9, 1209.45, 2674.9, 1203.41, 2674.14, 1197.51, + 2672.63, 1191.85, 2670.38, 1186.51, 2667.45, 1181.58, 2663.87, + 1177.15, 2659.7, 1173.26, 2655.01, 1170.0, 2649.87, 1167.41, 2644.35, + 1165.52, 2638.56, 1164.38, 2632.58, 1164.0, 2626.5, 1164.38, 2620.42, + 1165.52, 2614.44, 1167.41, 2608.65, 1170.0, 2603.13, 1173.26, 2597.99, + 1177.15, 2593.3, 1181.58, 2589.13, 1186.51, 2585.55, 1191.85, 2582.62, + 1197.51, 2580.37, 1203.41, 2578.86, 1209.45, 2578.1, 1215.55, 2578.1, + 1221.59, 2578.86, 1227.49, 2580.37, 1233.15, 2582.62, 1238.49, + 2585.55, 1243.42, 2589.13, 1247.85, 2593.3, 1251.74, 2597.99, 1255.0, + 2603.13, 1257.59, 2608.65, 1259.48, 2614.44, 1260.62, 2620.42 + ] + ], + "area": 7381.0, + "bbox": [1164.0, 2578.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 77, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [941.0, 494.0, 1016.0, 494.0, 1016.0, 567.0, 941.0, 567.0, 941.0, 494.0] + ], + "area": 5475.0, + "bbox": [941.0, 494.0, 75.0, 73.0], + "iscrowd": 0 + }, + { + "id": 78, + "image_id": 9, + "category_id": 3, + "segmentation": [[3301.0, 1652.0, 3269.0, 1708.0, 3333.0, 1708.0]], + "area": 1792.0, + "bbox": [3269.0, 1652.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 79, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3310.0, 839.0, 3405.0, 839.0, 3405.0, 902.0, 3310.0, 902.0, 3310.0, + 839.0 + ] + ], + "area": 5985.0, + "bbox": [3310.0, 839.0, 95.0, 63.0], + "iscrowd": 0 + }, + { + "id": 80, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 412.0, 1027.0, 472.0, 1027.0, 472.0, 1085.0, 412.0, 1085.0, 412.0, + 1027.0 + ] + ], + "area": 3480.0, + "bbox": [412.0, 1027.0, 60.0, 58.0], + "iscrowd": 0 + }, + { + "id": 81, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1064.0, 910.0, 1145.0, 910.0, 1145.0, 991.0, 1064.0, 991.0, 1064.0, + 910.0 + ] + ], + "area": 6561.0, + "bbox": [1064.0, 910.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 82, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 624.0, 1566.0, 685.0, 1566.0, 685.0, 1657.0, 624.0, 1657.0, 624.0, + 1566.0 + ] + ], + "area": 5551.0, + "bbox": [624.0, 1566.0, 61.0, 91.0], + "iscrowd": 0 + }, + { + "id": 83, + "image_id": 9, + "category_id": 3, + "segmentation": [[1356.5, 2730.0, 1329.0, 2778.0, 1384.0, 2778.0]], + "area": 1326.0, + "bbox": [1329.0, 2730.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 84, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [7.0, 1644.0, 74.0, 1644.0, 74.0, 1705.0, 7.0, 1705.0, 7.0, 1644.0] + ], + "area": 4087.0, + "bbox": [7.0, 1644.0, 67.0, 61.0], + "iscrowd": 0 + }, + { + "id": 85, + "image_id": 9, + "category_id": 3, + "segmentation": [[3232.0, 1682.0, 3189.0, 1757.0, 3275.0, 1757.0]], + "area": 3234.0, + "bbox": [3189.0, 1682.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 86, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 652.0, 979.5, 651.74, 983.57, 650.98, 987.58, 649.72, 991.46, 647.98, + 995.16, 645.79, 998.6, 643.19, 1001.75, 640.22, 1004.54, 636.91, + 1006.94, 633.34, 1008.91, 629.54, 1010.41, 625.59, 1011.42, 621.54, + 1011.94, 617.46, 1011.94, 613.41, 1011.42, 609.46, 1010.41, 605.66, + 1008.91, 602.09, 1006.94, 598.78, 1004.54, 595.81, 1001.75, 593.21, + 998.6, 591.02, 995.16, 589.28, 991.46, 588.02, 987.58, 587.26, 983.57, + 587.0, 979.5, 587.26, 975.43, 588.02, 971.42, 589.28, 967.54, 591.02, + 963.84, 593.21, 960.4, 595.81, 957.25, 598.78, 954.46, 602.09, 952.06, + 605.66, 950.09, 609.46, 948.59, 613.41, 947.58, 617.46, 947.06, + 621.54, 947.06, 625.59, 947.58, 629.54, 948.59, 633.34, 950.09, + 636.91, 952.06, 640.22, 954.46, 643.19, 957.25, 645.79, 960.4, 647.98, + 963.84, 649.72, 967.54, 650.98, 971.42, 651.74, 975.43 + ] + ], + "area": 3315.0, + "bbox": [587.0, 947.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 87, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2119.0, 1934.5, 2118.66, 1939.95, 2117.63, 1945.32, 2115.95, 1950.51, + 2113.62, 1955.46, 2110.69, 1960.07, 2107.21, 1964.28, 2103.23, + 1968.02, 2098.81, 1971.23, 2094.02, 1973.86, 2088.94, 1975.87, + 2083.65, 1977.23, 2078.23, 1977.91, 2072.77, 1977.91, 2067.35, + 1977.23, 2062.06, 1975.87, 2056.98, 1973.86, 2052.19, 1971.23, + 2047.77, 1968.02, 2043.79, 1964.28, 2040.31, 1960.07, 2037.38, + 1955.46, 2035.05, 1950.51, 2033.37, 1945.32, 2032.34, 1939.95, 2032.0, + 1934.5, 2032.34, 1929.05, 2033.37, 1923.68, 2035.05, 1918.49, 2037.38, + 1913.54, 2040.31, 1908.93, 2043.79, 1904.72, 2047.77, 1900.98, + 2052.19, 1897.77, 2056.98, 1895.14, 2062.06, 1893.13, 2067.35, + 1891.77, 2072.77, 1891.09, 2078.23, 1891.09, 2083.65, 1891.77, + 2088.94, 1893.13, 2094.02, 1895.14, 2098.81, 1897.77, 2103.23, + 1900.98, 2107.21, 1904.72, 2110.69, 1908.93, 2113.62, 1913.54, + 2115.95, 1918.49, 2117.63, 1923.68, 2118.66, 1929.05 + ] + ], + "area": 5927.0, + "bbox": [2032.0, 1891.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 88, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2329.5, 1594.0, 2335.08, 1593.65, 2340.57, 1592.6, 2345.88, 1590.88, + 2350.94, 1588.5, 2355.66, 1585.5, 2359.96, 1581.94, 2363.79, 1577.87, + 2367.07, 1573.34, 2369.76, 1568.45, 2371.82, 1563.25, 2373.21, + 1557.84, 2373.91, 1552.29, 2373.91, 1546.71, 2373.21, 1541.16, + 2371.82, 1535.75, 2369.76, 1530.55, 2367.07, 1525.66, 2363.79, + 1521.13, 2359.96, 1517.06, 2355.66, 1513.5, 2350.94, 1510.5, 2345.88, + 1508.12, 2340.57, 1506.4, 2335.08, 1505.35, 2329.5, 1505.0, 2323.92, + 1505.35, 2318.43, 1506.4, 2313.12, 1508.12, 2308.06, 1510.5, 2303.34, + 1513.5, 2299.04, 1517.06, 2295.21, 1521.13, 2291.93, 1525.66, 2289.24, + 1530.55, 2287.18, 1535.75, 2285.79, 1541.16, 2285.09, 1546.71, + 2285.09, 1552.29, 2285.79, 1557.84, 2287.18, 1563.25, 2289.24, + 1568.45, 2291.93, 1573.34, 2295.21, 1577.87, 2299.04, 1581.94, + 2303.34, 1585.5, 2308.06, 1588.5, 2313.12, 1590.88, 2318.43, 1592.6, + 2323.92, 1593.65 + ] + ], + "area": 6209.0, + "bbox": [2285.09, 1505.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 89, + "image_id": 9, + "category_id": 3, + "segmentation": [[99.0, 2795.0, 72.0, 2842.0, 126.0, 2842.0]], + "area": 1274.0, + "bbox": [72.0, 2795.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 90, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2632.0, 2119.5, 2631.76, 2123.32, 2631.04, 2127.09, 2629.86, 2130.73, + 2628.23, 2134.19, 2626.18, 2137.43, 2623.73, 2140.38, 2620.94, 2143.0, + 2617.84, 2145.25, 2614.49, 2147.1, 2610.93, 2148.51, 2607.22, 2149.46, + 2603.42, 2149.94, 2599.58, 2149.94, 2595.78, 2149.46, 2592.07, + 2148.51, 2588.51, 2147.1, 2585.16, 2145.25, 2582.06, 2143.0, 2579.27, + 2140.38, 2576.82, 2137.43, 2574.77, 2134.19, 2573.14, 2130.73, + 2571.96, 2127.09, 2571.24, 2123.32, 2571.0, 2119.5, 2571.24, 2115.68, + 2571.96, 2111.91, 2573.14, 2108.27, 2574.77, 2104.81, 2576.82, + 2101.57, 2579.27, 2098.62, 2582.06, 2096.0, 2585.16, 2093.75, 2588.51, + 2091.9, 2592.07, 2090.49, 2595.78, 2089.54, 2599.58, 2089.06, 2603.42, + 2089.06, 2607.22, 2089.54, 2610.93, 2090.49, 2614.49, 2091.9, 2617.84, + 2093.75, 2620.94, 2096.0, 2623.73, 2098.62, 2626.18, 2101.57, 2628.23, + 2104.81, 2629.86, 2108.27, 2631.04, 2111.91, 2631.76, 2115.68 + ] + ], + "area": 2915.0, + "bbox": [2571.0, 2089.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 91, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2484.0, 1414.0, 2576.0, 1414.0, 2576.0, 1474.0, 2484.0, 1474.0, + 2484.0, 1414.0 + ] + ], + "area": 5520.0, + "bbox": [2484.0, 1414.0, 92.0, 60.0], + "iscrowd": 0 + }, + { + "id": 92, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2655.0, 2535.5, 2654.7, 2540.33, 2653.79, 2545.07, 2652.3, 2549.67, + 2650.24, 2554.05, 2647.65, 2558.13, 2644.57, 2561.86, 2641.04, + 2565.16, 2637.13, 2568.01, 2632.89, 2570.34, 2628.4, 2572.12, 2623.71, + 2573.32, 2618.92, 2573.92, 2614.08, 2573.92, 2609.29, 2573.32, 2604.6, + 2572.12, 2600.11, 2570.34, 2595.87, 2568.01, 2591.96, 2565.16, + 2588.43, 2561.86, 2585.35, 2558.13, 2582.76, 2554.05, 2580.7, 2549.67, + 2579.21, 2545.07, 2578.3, 2540.33, 2578.0, 2535.5, 2578.3, 2530.67, + 2579.21, 2525.93, 2580.7, 2521.33, 2582.76, 2516.95, 2585.35, 2512.87, + 2588.43, 2509.14, 2591.96, 2505.84, 2595.87, 2502.99, 2600.11, + 2500.66, 2604.6, 2498.88, 2609.29, 2497.68, 2614.08, 2497.08, 2618.92, + 2497.08, 2623.71, 2497.68, 2628.4, 2498.88, 2632.89, 2500.66, 2637.13, + 2502.99, 2641.04, 2505.84, 2644.57, 2509.14, 2647.65, 2512.87, + 2650.24, 2516.95, 2652.3, 2521.33, 2653.79, 2525.93, 2654.7, 2530.67 + ] + ], + "area": 4653.0, + "bbox": [2578.0, 2497.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 93, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 854.0, 2835.0, 925.0, 2835.0, 925.0, 2930.0, 854.0, 2930.0, 854.0, + 2835.0 + ] + ], + "area": 6745.0, + "bbox": [854.0, 2835.0, 71.0, 95.0], + "iscrowd": 0 + }, + { + "id": 94, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1463.0, 1290.0, 1526.0, 1290.0, 1526.0, 1353.0, 1463.0, 1353.0, + 1463.0, 1290.0 + ] + ], + "area": 3969.0, + "bbox": [1463.0, 1290.0, 63.0, 63.0], + "iscrowd": 0 + }, + { + "id": 95, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [204.0, 313.0, 299.0, 313.0, 299.0, 401.0, 204.0, 401.0, 204.0, 313.0] + ], + "area": 8360.0, + "bbox": [204.0, 313.0, 95.0, 88.0], + "iscrowd": 0 + }, + { + "id": 96, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2790.0, 1399.0, 2879.0, 1399.0, 2879.0, 1488.0, 2790.0, 1488.0, + 2790.0, 1399.0 + ] + ], + "area": 7921.0, + "bbox": [2790.0, 1399.0, 89.0, 89.0], + "iscrowd": 0 + }, + { + "id": 97, + "image_id": 9, + "category_id": 3, + "segmentation": [[584.0, 676.0, 553.0, 730.0, 615.0, 730.0]], + "area": 1680.0, + "bbox": [553.0, 676.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 98, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2804.0, 1615.0, 2895.0, 1615.0, 2895.0, 1690.0, 2804.0, 1690.0, + 2804.0, 1615.0 + ] + ], + "area": 6825.0, + "bbox": [2804.0, 1615.0, 91.0, 75.0], + "iscrowd": 0 + }, + { + "id": 99, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3147.5, 1665.0, 3152.83, 1664.66, 3158.07, 1663.66, 3163.15, 1662.02, + 3167.97, 1659.74, 3172.48, 1656.88, 3176.59, 1653.48, 3180.25, + 1649.59, 3183.38, 1645.27, 3185.96, 1640.6, 3187.92, 1635.63, 3189.25, + 1630.46, 3189.92, 1625.17, 3189.92, 1619.83, 3189.25, 1614.54, + 3187.92, 1609.37, 3185.96, 1604.4, 3183.38, 1599.73, 3180.25, 1595.41, + 3176.59, 1591.52, 3172.48, 1588.12, 3167.97, 1585.26, 3163.15, + 1582.98, 3158.07, 1581.34, 3152.83, 1580.34, 3147.5, 1580.0, 3142.17, + 1580.34, 3136.93, 1581.34, 3131.85, 1582.98, 3127.03, 1585.26, + 3122.52, 1588.12, 3118.41, 1591.52, 3114.75, 1595.41, 3111.62, + 1599.73, 3109.04, 1604.4, 3107.08, 1609.37, 3105.75, 1614.54, 3105.08, + 1619.83, 3105.08, 1625.17, 3105.75, 1630.46, 3107.08, 1635.63, + 3109.04, 1640.6, 3111.62, 1645.27, 3114.75, 1649.59, 3118.41, 1653.48, + 3122.52, 1656.88, 3127.03, 1659.74, 3131.85, 1662.02, 3136.93, + 1663.66, 3142.17, 1664.66 + ] + ], + "area": 5651.0, + "bbox": [3105.08, 1580.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 100, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2473.0, 1024.0, 2564.0, 1024.0, 2564.0, 1109.0, 2473.0, 1109.0, + 2473.0, 1024.0 + ] + ], + "area": 7735.0, + "bbox": [2473.0, 1024.0, 91.0, 85.0], + "iscrowd": 0 + }, + { + "id": 101, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1581.0, 1248.0, 1676.0, 1248.0, 1676.0, 1319.0, 1581.0, 1319.0, + 1581.0, 1248.0 + ] + ], + "area": 6745.0, + "bbox": [1581.0, 1248.0, 95.0, 71.0], + "iscrowd": 0 + }, + { + "id": 102, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2460.5, 827.0, 2464.07, 826.78, 2467.59, 826.1, 2470.99, 825.0, + 2474.23, 823.47, 2477.25, 821.56, 2480.01, 819.28, 2482.46, 816.67, + 2484.56, 813.77, 2486.29, 810.63, 2487.61, 807.31, 2488.5, 803.84, + 2488.94, 800.29, 2488.94, 796.71, 2488.5, 793.16, 2487.61, 789.69, + 2486.29, 786.37, 2484.56, 783.23, 2482.46, 780.33, 2480.01, 777.72, + 2477.25, 775.44, 2474.23, 773.53, 2470.99, 772.0, 2467.59, 770.9, + 2464.07, 770.22, 2460.5, 770.0, 2456.93, 770.22, 2453.41, 770.9, + 2450.01, 772.0, 2446.77, 773.53, 2443.75, 775.44, 2440.99, 777.72, + 2438.54, 780.33, 2436.44, 783.23, 2434.71, 786.37, 2433.39, 789.69, + 2432.5, 793.16, 2432.06, 796.71, 2432.06, 800.29, 2432.5, 803.84, + 2433.39, 807.31, 2434.71, 810.63, 2436.44, 813.77, 2438.54, 816.67, + 2440.99, 819.28, 2443.75, 821.56, 2446.77, 823.47, 2450.01, 825.0, + 2453.41, 826.1, 2456.93, 826.78 + ] + ], + "area": 2547.0, + "bbox": [2432.06, 770.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 103, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 783.0, 2043.0, 874.0, 2043.0, 874.0, 2136.0, 783.0, 2136.0, 783.0, + 2043.0 + ] + ], + "area": 8463.0, + "bbox": [783.0, 2043.0, 91.0, 93.0], + "iscrowd": 0 + }, + { + "id": 104, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1861.0, 1182.5, 1860.76, 1186.32, 1860.04, 1190.09, 1858.86, 1193.73, + 1857.23, 1197.19, 1855.18, 1200.43, 1852.73, 1203.38, 1849.94, 1206.0, + 1846.84, 1208.25, 1843.49, 1210.1, 1839.93, 1211.51, 1836.22, 1212.46, + 1832.42, 1212.94, 1828.58, 1212.94, 1824.78, 1212.46, 1821.07, + 1211.51, 1817.51, 1210.1, 1814.16, 1208.25, 1811.06, 1206.0, 1808.27, + 1203.38, 1805.82, 1200.43, 1803.77, 1197.19, 1802.14, 1193.73, + 1800.96, 1190.09, 1800.24, 1186.32, 1800.0, 1182.5, 1800.24, 1178.68, + 1800.96, 1174.91, 1802.14, 1171.27, 1803.77, 1167.81, 1805.82, + 1164.57, 1808.27, 1161.62, 1811.06, 1159.0, 1814.16, 1156.75, 1817.51, + 1154.9, 1821.07, 1153.49, 1824.78, 1152.54, 1828.58, 1152.06, 1832.42, + 1152.06, 1836.22, 1152.54, 1839.93, 1153.49, 1843.49, 1154.9, 1846.84, + 1156.75, 1849.94, 1159.0, 1852.73, 1161.62, 1855.18, 1164.57, 1857.23, + 1167.81, 1858.86, 1171.27, 1860.04, 1174.91, 1860.76, 1178.68 + ] + ], + "area": 2915.0, + "bbox": [1800.0, 1152.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 105, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 469.0, 1870.5, 468.76, 1874.32, 468.04, 1878.09, 466.86, 1881.73, + 465.23, 1885.19, 463.18, 1888.43, 460.73, 1891.38, 457.94, 1894.0, + 454.84, 1896.25, 451.49, 1898.1, 447.93, 1899.51, 444.22, 1900.46, + 440.42, 1900.94, 436.58, 1900.94, 432.78, 1900.46, 429.07, 1899.51, + 425.51, 1898.1, 422.16, 1896.25, 419.06, 1894.0, 416.27, 1891.38, + 413.82, 1888.43, 411.77, 1885.19, 410.14, 1881.73, 408.96, 1878.09, + 408.24, 1874.32, 408.0, 1870.5, 408.24, 1866.68, 408.96, 1862.91, + 410.14, 1859.27, 411.77, 1855.81, 413.82, 1852.57, 416.27, 1849.62, + 419.06, 1847.0, 422.16, 1844.75, 425.51, 1842.9, 429.07, 1841.49, + 432.78, 1840.54, 436.58, 1840.06, 440.42, 1840.06, 444.22, 1840.54, + 447.93, 1841.49, 451.49, 1842.9, 454.84, 1844.75, 457.94, 1847.0, + 460.73, 1849.62, 463.18, 1852.57, 465.23, 1855.81, 466.86, 1859.27, + 468.04, 1862.91, 468.76, 1866.68 + ] + ], + "area": 2915.0, + "bbox": [408.0, 1840.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 106, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3229.0, 1212.0, 3293.0, 1212.0, 3293.0, 1273.0, 3229.0, 1273.0, + 3229.0, 1212.0 + ] + ], + "area": 3904.0, + "bbox": [3229.0, 1212.0, 64.0, 61.0], + "iscrowd": 0 + }, + { + "id": 107, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2930.0, 2483.5, 2929.8, 2486.7, 2929.2, 2489.84, 2928.21, 2492.89, + 2926.85, 2495.78, 2925.13, 2498.49, 2923.09, 2500.96, 2920.75, + 2503.15, 2918.16, 2505.03, 2915.36, 2506.57, 2912.38, 2507.75, + 2909.28, 2508.55, 2906.1, 2508.95, 2902.9, 2508.95, 2899.72, 2508.55, + 2896.62, 2507.75, 2893.64, 2506.57, 2890.84, 2505.03, 2888.25, + 2503.15, 2885.91, 2500.96, 2883.87, 2498.49, 2882.15, 2495.78, + 2880.79, 2492.89, 2879.8, 2489.84, 2879.2, 2486.7, 2879.0, 2483.5, + 2879.2, 2480.3, 2879.8, 2477.16, 2880.79, 2474.11, 2882.15, 2471.22, + 2883.87, 2468.51, 2885.91, 2466.04, 2888.25, 2463.85, 2890.84, + 2461.97, 2893.64, 2460.43, 2896.62, 2459.25, 2899.72, 2458.45, 2902.9, + 2458.05, 2906.1, 2458.05, 2909.28, 2458.45, 2912.38, 2459.25, 2915.36, + 2460.43, 2918.16, 2461.97, 2920.75, 2463.85, 2923.09, 2466.04, + 2925.13, 2468.51, 2926.85, 2471.22, 2928.21, 2474.11, 2929.2, 2477.16, + 2929.8, 2480.3 + ] + ], + "area": 2037.0, + "bbox": [2879.0, 2458.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 108, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2779.0, 2488.5, 2778.8, 2491.7, 2778.2, 2494.84, 2777.21, 2497.89, + 2775.85, 2500.78, 2774.13, 2503.49, 2772.09, 2505.96, 2769.75, + 2508.15, 2767.16, 2510.03, 2764.36, 2511.57, 2761.38, 2512.75, + 2758.28, 2513.55, 2755.1, 2513.95, 2751.9, 2513.95, 2748.72, 2513.55, + 2745.62, 2512.75, 2742.64, 2511.57, 2739.84, 2510.03, 2737.25, + 2508.15, 2734.91, 2505.96, 2732.87, 2503.49, 2731.15, 2500.78, + 2729.79, 2497.89, 2728.8, 2494.84, 2728.2, 2491.7, 2728.0, 2488.5, + 2728.2, 2485.3, 2728.8, 2482.16, 2729.79, 2479.11, 2731.15, 2476.22, + 2732.87, 2473.51, 2734.91, 2471.04, 2737.25, 2468.85, 2739.84, + 2466.97, 2742.64, 2465.43, 2745.62, 2464.25, 2748.72, 2463.45, 2751.9, + 2463.05, 2755.1, 2463.05, 2758.28, 2463.45, 2761.38, 2464.25, 2764.36, + 2465.43, 2767.16, 2466.97, 2769.75, 2468.85, 2772.09, 2471.04, + 2774.13, 2473.51, 2775.85, 2476.22, 2777.21, 2479.11, 2778.2, 2482.16, + 2778.8, 2485.3 + ] + ], + "area": 2037.0, + "bbox": [2728.0, 2463.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 109, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 490.5, 1417.0, 494.7, 1416.74, 498.83, 1415.95, 502.83, 1414.65, + 506.64, 1412.86, 510.19, 1410.6, 513.43, 1407.92, 516.31, 1404.85, + 518.78, 1401.45, 520.81, 1397.76, 522.36, 1393.85, 523.41, 1389.78, + 523.93, 1385.6, 523.93, 1381.4, 523.41, 1377.22, 522.36, 1373.15, + 520.81, 1369.24, 518.78, 1365.55, 516.31, 1362.15, 513.43, 1359.08, + 510.19, 1356.4, 506.64, 1354.14, 502.83, 1352.35, 498.83, 1351.05, + 494.7, 1350.26, 490.5, 1350.0, 486.3, 1350.26, 482.17, 1351.05, + 478.17, 1352.35, 474.36, 1354.14, 470.81, 1356.4, 467.57, 1359.08, + 464.69, 1362.15, 462.22, 1365.55, 460.19, 1369.24, 458.64, 1373.15, + 457.59, 1377.22, 457.07, 1381.4, 457.07, 1385.6, 457.59, 1389.78, + 458.64, 1393.85, 460.19, 1397.76, 462.22, 1401.45, 464.69, 1404.85, + 467.57, 1407.92, 470.81, 1410.6, 474.36, 1412.86, 478.17, 1414.65, + 482.17, 1415.95, 486.3, 1416.74 + ] + ], + "area": 3520.0, + "bbox": [457.07, 1350.0, 66.86, 67.0], + "iscrowd": 0 + }, + { + "id": 110, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2073.0, 2681.0, 2156.0, 2681.0, 2156.0, 2744.0, 2073.0, 2744.0, + 2073.0, 2681.0 + ] + ], + "area": 5229.0, + "bbox": [2073.0, 2681.0, 83.0, 63.0], + "iscrowd": 0 + }, + { + "id": 111, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [2399.0, 99.0, 2486.0, 99.0, 2486.0, 152.0, 2399.0, 152.0, 2399.0, 99.0] + ], + "area": 4611.0, + "bbox": [2399.0, 99.0, 87.0, 53.0], + "iscrowd": 0 + }, + { + "id": 112, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3262.0, 2911.0, 3359.0, 2911.0, 3359.0, 3012.0, 3262.0, 3012.0, + 3262.0, 2911.0 + ] + ], + "area": 9797.0, + "bbox": [3262.0, 2911.0, 97.0, 101.0], + "iscrowd": 0 + }, + { + "id": 113, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1896.0, 569.0, 1989.0, 569.0, 1989.0, 624.0, 1896.0, 624.0, 1896.0, + 569.0 + ] + ], + "area": 5115.0, + "bbox": [1896.0, 569.0, 93.0, 55.0], + "iscrowd": 0 + }, + { + "id": 114, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 854.0, 2964.5, 853.63, 2970.45, 852.51, 2976.31, 850.66, 2981.99, + 848.12, 2987.38, 844.93, 2992.42, 841.13, 2997.02, 836.78, 3001.1, + 831.95, 3004.61, 826.72, 3007.48, 821.18, 3009.68, 815.4, 3011.16, + 809.48, 3011.91, 803.52, 3011.91, 797.6, 3011.16, 791.82, 3009.68, + 786.28, 3007.48, 781.05, 3004.61, 776.22, 3001.1, 771.87, 2997.02, + 768.07, 2992.42, 764.88, 2987.38, 762.34, 2981.99, 760.49, 2976.31, + 759.37, 2970.45, 759.0, 2964.5, 759.37, 2958.55, 760.49, 2952.69, + 762.34, 2947.01, 764.88, 2941.62, 768.07, 2936.58, 771.87, 2931.98, + 776.22, 2927.9, 781.05, 2924.39, 786.28, 2921.52, 791.82, 2919.32, + 797.6, 2917.84, 803.52, 2917.09, 809.48, 2917.09, 815.4, 2917.84, + 821.18, 2919.32, 826.72, 2921.52, 831.95, 2924.39, 836.78, 2927.9, + 841.13, 2931.98, 844.93, 2936.58, 848.12, 2941.62, 850.66, 2947.01, + 852.51, 2952.69, 853.63, 2958.55 + ] + ], + "area": 7083.0, + "bbox": [759.0, 2917.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 115, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2269.0, 1233.5, 2268.66, 1238.83, 2267.66, 1244.07, 2266.02, 1249.15, + 2263.74, 1253.97, 2260.88, 1258.48, 2257.48, 1262.59, 2253.59, + 1266.25, 2249.27, 1269.38, 2244.6, 1271.96, 2239.63, 1273.92, 2234.46, + 1275.25, 2229.17, 1275.92, 2223.83, 1275.92, 2218.54, 1275.25, + 2213.37, 1273.92, 2208.4, 1271.96, 2203.73, 1269.38, 2199.41, 1266.25, + 2195.52, 1262.59, 2192.12, 1258.48, 2189.26, 1253.97, 2186.98, + 1249.15, 2185.34, 1244.07, 2184.34, 1238.83, 2184.0, 1233.5, 2184.34, + 1228.17, 2185.34, 1222.93, 2186.98, 1217.85, 2189.26, 1213.03, + 2192.12, 1208.52, 2195.52, 1204.41, 2199.41, 1200.75, 2203.73, + 1197.62, 2208.4, 1195.04, 2213.37, 1193.08, 2218.54, 1191.75, 2223.83, + 1191.08, 2229.17, 1191.08, 2234.46, 1191.75, 2239.63, 1193.08, 2244.6, + 1195.04, 2249.27, 1197.62, 2253.59, 1200.75, 2257.48, 1204.41, + 2260.88, 1208.52, 2263.74, 1213.03, 2266.02, 1217.85, 2267.66, + 1222.93, 2268.66, 1228.17 + ] + ], + "area": 5651.0, + "bbox": [2184.0, 1191.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 116, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3043.0, 2118.0, 3112.0, 2118.0, 3112.0, 2208.0, 3043.0, 2208.0, + 3043.0, 2118.0 + ] + ], + "area": 6210.0, + "bbox": [3043.0, 2118.0, 69.0, 90.0], + "iscrowd": 0 + }, + { + "id": 117, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3303.0, 1312.0, 3358.0, 1312.0, 3358.0, 1403.0, 3303.0, 1403.0, + 3303.0, 1312.0 + ] + ], + "area": 5005.0, + "bbox": [3303.0, 1312.0, 55.0, 91.0], + "iscrowd": 0 + }, + { + "id": 118, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1724.0, 74.5, 1723.66, 79.95, 1722.63, 85.32, 1720.95, 90.51, 1718.62, + 95.46, 1715.69, 100.07, 1712.21, 104.28, 1708.23, 108.02, 1703.81, + 111.23, 1699.02, 113.86, 1693.94, 115.87, 1688.65, 117.23, 1683.23, + 117.91, 1677.77, 117.91, 1672.35, 117.23, 1667.06, 115.87, 1661.98, + 113.86, 1657.19, 111.23, 1652.77, 108.02, 1648.79, 104.28, 1645.31, + 100.07, 1642.38, 95.46, 1640.05, 90.51, 1638.37, 85.32, 1637.34, + 79.95, 1637.0, 74.5, 1637.34, 69.05, 1638.37, 63.68, 1640.05, 58.49, + 1642.38, 53.54, 1645.31, 48.93, 1648.79, 44.72, 1652.77, 40.98, + 1657.19, 37.77, 1661.98, 35.14, 1667.06, 33.13, 1672.35, 31.77, + 1677.77, 31.09, 1683.23, 31.09, 1688.65, 31.77, 1693.94, 33.13, + 1699.02, 35.14, 1703.81, 37.77, 1708.23, 40.98, 1712.21, 44.72, + 1715.69, 48.93, 1718.62, 53.54, 1720.95, 58.49, 1722.63, 63.68, + 1723.66, 69.05 + ] + ], + "area": 5927.0, + "bbox": [1637.0, 31.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 119, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1816.0, 208.0, 1909.0, 208.0, 1909.0, 275.0, 1816.0, 275.0, 1816.0, + 208.0 + ] + ], + "area": 6231.0, + "bbox": [1816.0, 208.0, 93.0, 67.0], + "iscrowd": 0 + }, + { + "id": 120, + "image_id": 9, + "category_id": 3, + "segmentation": [[2741.5, 718.0, 2702.0, 787.0, 2781.0, 787.0]], + "area": 2734.0, + "bbox": [2702.0, 718.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 121, + "image_id": 9, + "category_id": 3, + "segmentation": [[2778.5, 1718.0, 2742.0, 1782.0, 2815.0, 1782.0]], + "area": 2341.0, + "bbox": [2742.0, 1718.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 122, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1274.0, 3060.0, 1343.0, 3060.0, 1343.0, 3131.0, 1274.0, 3131.0, + 1274.0, 3060.0 + ] + ], + "area": 4899.0, + "bbox": [1274.0, 3060.0, 69.0, 71.0], + "iscrowd": 0 + }, + { + "id": 123, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1463.0, 2388.0, 1514.0, 2388.0, 1514.0, 2448.0, 1463.0, 2448.0, + 1463.0, 2388.0 + ] + ], + "area": 3060.0, + "bbox": [1463.0, 2388.0, 51.0, 60.0], + "iscrowd": 0 + }, + { + "id": 124, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 752.0, 1264.0, 817.0, 1264.0, 817.0, 1315.0, 752.0, 1315.0, 752.0, + 1264.0 + ] + ], + "area": 3315.0, + "bbox": [752.0, 1264.0, 65.0, 51.0], + "iscrowd": 0 + }, + { + "id": 125, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 236.0, 1598.0, 324.0, 1598.0, 324.0, 1696.0, 236.0, 1696.0, 236.0, + 1598.0 + ] + ], + "area": 8624.0, + "bbox": [236.0, 1598.0, 88.0, 98.0], + "iscrowd": 0 + }, + { + "id": 126, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 417.5, 2755.0, 420.95, 2754.78, 424.34, 2754.14, 427.62, 2753.07, + 430.75, 2751.6, 433.66, 2749.75, 436.33, 2747.55, 438.69, 2745.03, + 440.72, 2742.24, 442.38, 2739.21, 443.65, 2736.0, 444.51, 2732.65, + 444.95, 2729.23, 444.95, 2725.77, 444.51, 2722.35, 443.65, 2719.0, + 442.38, 2715.79, 440.72, 2712.76, 438.69, 2709.97, 436.33, 2707.45, + 433.66, 2705.25, 430.75, 2703.4, 427.62, 2701.93, 424.34, 2700.86, + 420.95, 2700.22, 417.5, 2700.0, 414.05, 2700.22, 410.66, 2700.86, + 407.38, 2701.93, 404.25, 2703.4, 401.34, 2705.25, 398.67, 2707.45, + 396.31, 2709.97, 394.28, 2712.76, 392.62, 2715.79, 391.35, 2719.0, + 390.49, 2722.35, 390.05, 2725.77, 390.05, 2729.23, 390.49, 2732.65, + 391.35, 2736.0, 392.62, 2739.21, 394.28, 2742.24, 396.31, 2745.03, + 398.67, 2747.55, 401.34, 2749.75, 404.25, 2751.6, 407.38, 2753.07, + 410.66, 2754.14, 414.05, 2754.78 + ] + ], + "area": 2375.0, + "bbox": [390.05, 2700.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 127, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2414.0, 2113.0, 2495.0, 2113.0, 2495.0, 2214.0, 2414.0, 2214.0, + 2414.0, 2113.0 + ] + ], + "area": 8181.0, + "bbox": [2414.0, 2113.0, 81.0, 101.0], + "iscrowd": 0 + }, + { + "id": 128, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 345.5, 1756.0, 349.07, 1755.78, 352.59, 1755.1, 355.99, 1754.0, + 359.23, 1752.47, 362.25, 1750.56, 365.01, 1748.28, 367.46, 1745.67, + 369.56, 1742.77, 371.29, 1739.63, 372.61, 1736.31, 373.5, 1732.84, + 373.94, 1729.29, 373.94, 1725.71, 373.5, 1722.16, 372.61, 1718.69, + 371.29, 1715.37, 369.56, 1712.23, 367.46, 1709.33, 365.01, 1706.72, + 362.25, 1704.44, 359.23, 1702.53, 355.99, 1701.0, 352.59, 1699.9, + 349.07, 1699.22, 345.5, 1699.0, 341.93, 1699.22, 338.41, 1699.9, + 335.01, 1701.0, 331.77, 1702.53, 328.75, 1704.44, 325.99, 1706.72, + 323.54, 1709.33, 321.44, 1712.23, 319.71, 1715.37, 318.39, 1718.69, + 317.5, 1722.16, 317.06, 1725.71, 317.06, 1729.29, 317.5, 1732.84, + 318.39, 1736.31, 319.71, 1739.63, 321.44, 1742.77, 323.54, 1745.67, + 325.99, 1748.28, 328.75, 1750.56, 331.77, 1752.47, 335.01, 1754.0, + 338.41, 1755.1, 341.93, 1755.78 + ] + ], + "area": 2547.0, + "bbox": [317.06, 1699.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 129, + "image_id": 9, + "category_id": 3, + "segmentation": [[636.0, 2954.0, 598.0, 3020.0, 674.0, 3020.0]], + "area": 2514.0, + "bbox": [598.0, 2954.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 130, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2723.0, 2921.0, 2822.0, 2921.0, 2822.0, 3018.0, 2723.0, 3018.0, + 2723.0, 2921.0 + ] + ], + "area": 9603.0, + "bbox": [2723.0, 2921.0, 99.0, 97.0], + "iscrowd": 0 + }, + { + "id": 131, + "image_id": 9, + "category_id": 3, + "segmentation": [[1890.0, 2309.0, 1845.0, 2388.0, 1935.0, 2388.0]], + "area": 3564.0, + "bbox": [1845.0, 2309.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 132, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3090.0, 2893.0, 3157.0, 2893.0, 3157.0, 2978.0, 3090.0, 2978.0, + 3090.0, 2893.0 + ] + ], + "area": 5695.0, + "bbox": [3090.0, 2893.0, 67.0, 85.0], + "iscrowd": 0 + }, + { + "id": 133, + "image_id": 9, + "category_id": 3, + "segmentation": [[217.5, 2939.0, 186.0, 2994.0, 249.0, 2994.0]], + "area": 1739.0, + "bbox": [186.0, 2939.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 134, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2226.0, 1422.0, 2299.0, 1422.0, 2299.0, 1507.0, 2226.0, 1507.0, + 2226.0, 1422.0 + ] + ], + "area": 6205.0, + "bbox": [2226.0, 1422.0, 73.0, 85.0], + "iscrowd": 0 + }, + { + "id": 135, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1706.0, 2794.0, 1767.0, 2794.0, 1767.0, 2880.0, 1706.0, 2880.0, + 1706.0, 2794.0 + ] + ], + "area": 5246.0, + "bbox": [1706.0, 2794.0, 61.0, 86.0], + "iscrowd": 0 + }, + { + "id": 136, + "image_id": 9, + "category_id": 3, + "segmentation": [[1802.0, 1407.0, 1771.0, 1461.0, 1833.0, 1461.0]], + "area": 1680.0, + "bbox": [1771.0, 1407.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 137, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2876.5, 2822.0, 2881.95, 2821.66, 2887.32, 2820.63, 2892.51, 2818.95, + 2897.46, 2816.62, 2902.07, 2813.69, 2906.28, 2810.21, 2910.02, + 2806.23, 2913.23, 2801.81, 2915.86, 2797.02, 2917.87, 2791.94, + 2919.23, 2786.65, 2919.91, 2781.23, 2919.91, 2775.77, 2919.23, + 2770.35, 2917.87, 2765.06, 2915.86, 2759.98, 2913.23, 2755.19, + 2910.02, 2750.77, 2906.28, 2746.79, 2902.07, 2743.31, 2897.46, + 2740.38, 2892.51, 2738.05, 2887.32, 2736.37, 2881.95, 2735.34, 2876.5, + 2735.0, 2871.05, 2735.34, 2865.68, 2736.37, 2860.49, 2738.05, 2855.54, + 2740.38, 2850.93, 2743.31, 2846.72, 2746.79, 2842.98, 2750.77, + 2839.77, 2755.19, 2837.14, 2759.98, 2835.13, 2765.06, 2833.77, + 2770.35, 2833.09, 2775.77, 2833.09, 2781.23, 2833.77, 2786.65, + 2835.13, 2791.94, 2837.14, 2797.02, 2839.77, 2801.81, 2842.98, + 2806.23, 2846.72, 2810.21, 2850.93, 2813.69, 2855.54, 2816.62, + 2860.49, 2818.95, 2865.68, 2820.63, 2871.05, 2821.66 + ] + ], + "area": 5930.0, + "bbox": [2833.09, 2735.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 138, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1904.0, 946.0, 2001.0, 946.0, 2001.0, 1005.0, 1904.0, 1005.0, 1904.0, + 946.0 + ] + ], + "area": 5723.0, + "bbox": [1904.0, 946.0, 97.0, 59.0], + "iscrowd": 0 + }, + { + "id": 139, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3102.0, 2992.0, 3180.0, 2992.0, 3180.0, 3063.0, 3102.0, 3063.0, + 3102.0, 2992.0 + ] + ], + "area": 5538.0, + "bbox": [3102.0, 2992.0, 78.0, 71.0], + "iscrowd": 0 + }, + { + "id": 140, + "image_id": 9, + "category_id": 3, + "segmentation": [[1801.0, 1017.0, 1762.0, 1085.0, 1840.0, 1085.0]], + "area": 2660.0, + "bbox": [1762.0, 1017.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 141, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 57.0, 1304.5, 56.81, 1307.57, 56.23, 1310.59, 55.28, 1313.52, 53.97, + 1316.3, 52.32, 1318.9, 50.36, 1321.27, 48.12, 1323.38, 45.63, 1325.19, + 42.93, 1326.67, 40.07, 1327.8, 37.09, 1328.57, 34.04, 1328.95, 30.96, + 1328.95, 27.91, 1328.57, 24.93, 1327.8, 22.07, 1326.67, 19.37, + 1325.19, 16.88, 1323.38, 14.64, 1321.27, 12.68, 1318.9, 11.03, 1316.3, + 9.72, 1313.52, 8.77, 1310.59, 8.19, 1307.57, 8.0, 1304.5, 8.19, + 1301.43, 8.77, 1298.41, 9.72, 1295.48, 11.03, 1292.7, 12.68, 1290.1, + 14.64, 1287.73, 16.88, 1285.62, 19.37, 1283.81, 22.07, 1282.33, 24.93, + 1281.2, 27.91, 1280.43, 30.96, 1280.05, 34.04, 1280.05, 37.09, + 1280.43, 40.07, 1281.2, 42.93, 1282.33, 45.63, 1283.81, 48.12, + 1285.62, 50.36, 1287.73, 52.32, 1290.1, 53.97, 1292.7, 55.28, 1295.48, + 56.23, 1298.41, 56.81, 1301.43 + ] + ], + "area": 1885.0, + "bbox": [8.0, 1280.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 142, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 763.0, 1537.5, 762.8, 1540.7, 762.2, 1543.84, 761.21, 1546.89, 759.85, + 1549.78, 758.13, 1552.49, 756.09, 1554.96, 753.75, 1557.15, 751.16, + 1559.03, 748.36, 1560.57, 745.38, 1561.75, 742.28, 1562.55, 739.1, + 1562.95, 735.9, 1562.95, 732.72, 1562.55, 729.62, 1561.75, 726.64, + 1560.57, 723.84, 1559.03, 721.25, 1557.15, 718.91, 1554.96, 716.87, + 1552.49, 715.15, 1549.78, 713.79, 1546.89, 712.8, 1543.84, 712.2, + 1540.7, 712.0, 1537.5, 712.2, 1534.3, 712.8, 1531.16, 713.79, 1528.11, + 715.15, 1525.22, 716.87, 1522.51, 718.91, 1520.04, 721.25, 1517.85, + 723.84, 1515.97, 726.64, 1514.43, 729.62, 1513.25, 732.72, 1512.45, + 735.9, 1512.05, 739.1, 1512.05, 742.28, 1512.45, 745.38, 1513.25, + 748.36, 1514.43, 751.16, 1515.97, 753.75, 1517.85, 756.09, 1520.04, + 758.13, 1522.51, 759.85, 1525.22, 761.21, 1528.11, 762.2, 1531.16, + 762.8, 1534.3 + ] + ], + "area": 2037.0, + "bbox": [712.0, 1512.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 143, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2971.5, 1509.0, 2975.2, 1508.77, 2978.84, 1508.07, 2982.36, 1506.93, + 2985.71, 1505.35, 2988.84, 1503.37, 2991.69, 1501.0, 2994.23, 1498.3, + 2996.41, 1495.31, 2998.19, 1492.06, 2999.56, 1488.62, 3000.48, + 1485.03, 3000.94, 1481.35, 3000.94, 1477.65, 3000.48, 1473.97, + 2999.56, 1470.38, 2998.19, 1466.94, 2996.41, 1463.69, 2994.23, 1460.7, + 2991.69, 1458.0, 2988.84, 1455.63, 2985.71, 1453.65, 2982.36, 1452.07, + 2978.84, 1450.93, 2975.2, 1450.23, 2971.5, 1450.0, 2967.8, 1450.23, + 2964.16, 1450.93, 2960.64, 1452.07, 2957.29, 1453.65, 2954.16, + 1455.63, 2951.31, 1458.0, 2948.77, 1460.7, 2946.59, 1463.69, 2944.81, + 1466.94, 2943.44, 1470.38, 2942.52, 1473.97, 2942.06, 1477.65, + 2942.06, 1481.35, 2942.52, 1485.03, 2943.44, 1488.62, 2944.81, + 1492.06, 2946.59, 1495.31, 2948.77, 1498.3, 2951.31, 1501.0, 2954.16, + 1503.37, 2957.29, 1505.35, 2960.64, 1506.93, 2964.16, 1508.07, 2967.8, + 1508.77 + ] + ], + "area": 2732.0, + "bbox": [2942.06, 1450.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 144, + "image_id": 9, + "category_id": 3, + "segmentation": [[832.0, 1928.0, 796.0, 1991.0, 868.0, 1991.0]], + "area": 2268.0, + "bbox": [796.0, 1928.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 145, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2545.0, 604.0, 2619.0, 604.0, 2619.0, 675.0, 2545.0, 675.0, 2545.0, + 604.0 + ] + ], + "area": 5254.0, + "bbox": [2545.0, 604.0, 74.0, 71.0], + "iscrowd": 0 + }, + { + "id": 146, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2139.0, 1585.5, 2138.73, 1589.82, 2137.92, 1594.08, 2136.58, 1598.2, + 2134.73, 1602.12, 2132.41, 1605.78, 2129.65, 1609.12, 2126.49, + 1612.08, 2122.99, 1614.63, 2119.19, 1616.72, 2115.16, 1618.31, + 2110.96, 1619.39, 2106.67, 1619.93, 2102.33, 1619.93, 2098.04, + 1619.39, 2093.84, 1618.31, 2089.81, 1616.72, 2086.01, 1614.63, + 2082.51, 1612.08, 2079.35, 1609.12, 2076.59, 1605.78, 2074.27, + 1602.12, 2072.42, 1598.2, 2071.08, 1594.08, 2070.27, 1589.82, 2070.0, + 1585.5, 2070.27, 1581.18, 2071.08, 1576.92, 2072.42, 1572.8, 2074.27, + 1568.88, 2076.59, 1565.22, 2079.35, 1561.88, 2082.51, 1558.92, + 2086.01, 1556.37, 2089.81, 1554.28, 2093.84, 1552.69, 2098.04, + 1551.61, 2102.33, 1551.07, 2106.67, 1551.07, 2110.96, 1551.61, + 2115.16, 1552.69, 2119.19, 1554.28, 2122.99, 1556.37, 2126.49, + 1558.92, 2129.65, 1561.88, 2132.41, 1565.22, 2134.73, 1568.88, + 2136.58, 1572.8, 2137.92, 1576.92, 2138.73, 1581.18 + ] + ], + "area": 3743.0, + "bbox": [2070.0, 1551.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 147, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [3013.0, 92.0, 3070.0, 92.0, 3070.0, 155.0, 3013.0, 155.0, 3013.0, 92.0] + ], + "area": 3591.0, + "bbox": [3013.0, 92.0, 57.0, 63.0], + "iscrowd": 0 + }, + { + "id": 148, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3371.0, 2138.0, 3469.0, 2138.0, 3469.0, 2205.0, 3371.0, 2205.0, + 3371.0, 2138.0 + ] + ], + "area": 6566.0, + "bbox": [3371.0, 2138.0, 98.0, 67.0], + "iscrowd": 0 + }, + { + "id": 149, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3197.0, 630.0, 3294.0, 630.0, 3294.0, 726.0, 3197.0, 726.0, 3197.0, + 630.0 + ] + ], + "area": 9312.0, + "bbox": [3197.0, 630.0, 97.0, 96.0], + "iscrowd": 0 + }, + { + "id": 150, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1998.0, 2732.0, 2087.0, 2732.0, 2087.0, 2823.0, 1998.0, 2823.0, + 1998.0, 2732.0 + ] + ], + "area": 8099.0, + "bbox": [1998.0, 2732.0, 89.0, 91.0], + "iscrowd": 0 + }, + { + "id": 151, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 741.0, 2901.0, 819.0, 2901.0, 819.0, 2975.0, 741.0, 2975.0, 741.0, + 2901.0 + ] + ], + "area": 5772.0, + "bbox": [741.0, 2901.0, 78.0, 74.0], + "iscrowd": 0 + }, + { + "id": 152, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2736.0, 1112.0, 2834.0, 1112.0, 2834.0, 1185.0, 2736.0, 1185.0, + 2736.0, 1112.0 + ] + ], + "area": 7154.0, + "bbox": [2736.0, 1112.0, 98.0, 73.0], + "iscrowd": 0 + }, + { + "id": 153, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2465.0, 474.0, 2537.0, 474.0, 2537.0, 540.0, 2465.0, 540.0, 2465.0, + 474.0 + ] + ], + "area": 4752.0, + "bbox": [2465.0, 474.0, 72.0, 66.0], + "iscrowd": 0 + }, + { + "id": 154, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1938.0, 1910.0, 1995.0, 1910.0, 1995.0, 1967.0, 1938.0, 1967.0, + 1938.0, 1910.0 + ] + ], + "area": 3249.0, + "bbox": [1938.0, 1910.0, 57.0, 57.0], + "iscrowd": 0 + }, + { + "id": 155, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1970.0, 1231.0, 2050.0, 1231.0, 2050.0, 1295.0, 1970.0, 1295.0, + 1970.0, 1231.0 + ] + ], + "area": 5120.0, + "bbox": [1970.0, 1231.0, 80.0, 64.0], + "iscrowd": 0 + }, + { + "id": 156, + "image_id": 10, + "category_id": 3, + "segmentation": [[2778.0, 1927.0, 2749.0, 1978.0, 2807.0, 1978.0]], + "area": 1484.0, + "bbox": [2749.0, 1927.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 157, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2833.0, 2644.0, 2923.0, 2644.0, 2923.0, 2706.0, 2833.0, 2706.0, + 2833.0, 2644.0 + ] + ], + "area": 5580.0, + "bbox": [2833.0, 2644.0, 90.0, 62.0], + "iscrowd": 0 + }, + { + "id": 158, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2253.0, 1766.0, 2320.0, 1766.0, 2320.0, 1843.0, 2253.0, 1843.0, + 2253.0, 1766.0 + ] + ], + "area": 5159.0, + "bbox": [2253.0, 1766.0, 67.0, 77.0], + "iscrowd": 0 + }, + { + "id": 159, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 414.0, 479.5, 413.79, 482.82, 413.17, 486.09, 412.14, 489.26, 410.72, + 492.27, 408.94, 495.08, 406.82, 497.64, 404.39, 499.92, 401.7, 501.87, + 398.78, 503.48, 395.69, 504.7, 392.47, 505.53, 389.16, 505.95, 385.84, + 505.95, 382.53, 505.53, 379.31, 504.7, 376.22, 503.48, 373.3, 501.87, + 370.61, 499.92, 368.18, 497.64, 366.06, 495.08, 364.28, 492.27, + 362.86, 489.26, 361.83, 486.09, 361.21, 482.82, 361.0, 479.5, 361.21, + 476.18, 361.83, 472.91, 362.86, 469.74, 364.28, 466.73, 366.06, + 463.92, 368.18, 461.36, 370.61, 459.08, 373.3, 457.13, 376.22, 455.52, + 379.31, 454.3, 382.53, 453.47, 385.84, 453.05, 389.16, 453.05, 392.47, + 453.47, 395.69, 454.3, 398.78, 455.52, 401.7, 457.13, 404.39, 459.08, + 406.82, 461.36, 408.94, 463.92, 410.72, 466.73, 412.14, 469.74, + 413.17, 472.91, 413.79, 476.18 + ] + ], + "area": 2207.0, + "bbox": [361.0, 453.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 160, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3021.0, 3352.0, 3089.0, 3352.0, 3089.0, 3441.0, 3021.0, 3441.0, + 3021.0, 3352.0 + ] + ], + "area": 6052.0, + "bbox": [3021.0, 3352.0, 68.0, 89.0], + "iscrowd": 0 + }, + { + "id": 161, + "image_id": 10, + "category_id": 3, + "segmentation": [[1822.5, 2632.0, 1793.0, 2684.0, 1852.0, 2684.0]], + "area": 1542.0, + "bbox": [1793.0, 2632.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 162, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 521.5, 3402.0, 527.08, 3401.65, 532.57, 3400.6, 537.88, 3398.88, + 542.94, 3396.5, 547.66, 3393.5, 551.96, 3389.94, 555.79, 3385.87, + 559.07, 3381.34, 561.76, 3376.45, 563.82, 3371.25, 565.21, 3365.84, + 565.91, 3360.29, 565.91, 3354.71, 565.21, 3349.16, 563.82, 3343.75, + 561.76, 3338.55, 559.07, 3333.66, 555.79, 3329.13, 551.96, 3325.06, + 547.66, 3321.5, 542.94, 3318.5, 537.88, 3316.12, 532.57, 3314.4, + 527.08, 3313.35, 521.5, 3313.0, 515.92, 3313.35, 510.43, 3314.4, + 505.12, 3316.12, 500.06, 3318.5, 495.34, 3321.5, 491.04, 3325.06, + 487.21, 3329.13, 483.93, 3333.66, 481.24, 3338.55, 479.18, 3343.75, + 477.79, 3349.16, 477.09, 3354.71, 477.09, 3360.29, 477.79, 3365.84, + 479.18, 3371.25, 481.24, 3376.45, 483.93, 3381.34, 487.21, 3385.87, + 491.04, 3389.94, 495.34, 3393.5, 500.06, 3396.5, 505.12, 3398.88, + 510.43, 3400.6, 515.92, 3401.65 + ] + ], + "area": 6209.0, + "bbox": [477.09, 3313.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 163, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 741.0, 2799.5, 740.65, 2805.08, 739.6, 2810.57, 737.88, 2815.88, + 735.5, 2820.94, 732.5, 2825.66, 728.94, 2829.96, 724.87, 2833.79, + 720.34, 2837.07, 715.45, 2839.76, 710.25, 2841.82, 704.84, 2843.21, + 699.29, 2843.91, 693.71, 2843.91, 688.16, 2843.21, 682.75, 2841.82, + 677.55, 2839.76, 672.66, 2837.07, 668.13, 2833.79, 664.06, 2829.96, + 660.5, 2825.66, 657.5, 2820.94, 655.12, 2815.88, 653.4, 2810.57, + 652.35, 2805.08, 652.0, 2799.5, 652.35, 2793.92, 653.4, 2788.43, + 655.12, 2783.12, 657.5, 2778.06, 660.5, 2773.34, 664.06, 2769.04, + 668.13, 2765.21, 672.66, 2761.93, 677.55, 2759.24, 682.75, 2757.18, + 688.16, 2755.79, 693.71, 2755.09, 699.29, 2755.09, 704.84, 2755.79, + 710.25, 2757.18, 715.45, 2759.24, 720.34, 2761.93, 724.87, 2765.21, + 728.94, 2769.04, 732.5, 2773.34, 735.5, 2778.06, 737.88, 2783.12, + 739.6, 2788.43, 740.65, 2793.92 + ] + ], + "area": 6208.0, + "bbox": [652.0, 2755.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 164, + "image_id": 10, + "category_id": 3, + "segmentation": [[672.5, 1424.0, 623.0, 1510.0, 722.0, 1510.0]], + "area": 4268.0, + "bbox": [623.0, 1424.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 165, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1169.0, 954.0, 1230.0, 954.0, 1230.0, 1025.0, 1169.0, 1025.0, 1169.0, + 954.0 + ] + ], + "area": 4331.0, + "bbox": [1169.0, 954.0, 61.0, 71.0], + "iscrowd": 0 + }, + { + "id": 166, + "image_id": 10, + "category_id": 3, + "segmentation": [[2832.0, 2730.0, 2794.0, 2796.0, 2870.0, 2796.0]], + "area": 2514.0, + "bbox": [2794.0, 2730.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 167, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 113.5, 479.0, 117.57, 478.74, 121.58, 477.98, 125.46, 476.72, 129.16, + 474.98, 132.6, 472.79, 135.75, 470.19, 138.54, 467.22, 140.94, 463.91, + 142.91, 460.34, 144.41, 456.54, 145.42, 452.59, 145.94, 448.54, + 145.94, 444.46, 145.42, 440.41, 144.41, 436.46, 142.91, 432.66, + 140.94, 429.09, 138.54, 425.78, 135.75, 422.81, 132.6, 420.21, 129.16, + 418.02, 125.46, 416.28, 121.58, 415.02, 117.57, 414.26, 113.5, 414.0, + 109.43, 414.26, 105.42, 415.02, 101.54, 416.28, 97.84, 418.02, 94.4, + 420.21, 91.25, 422.81, 88.46, 425.78, 86.06, 429.09, 84.09, 432.66, + 82.59, 436.46, 81.58, 440.41, 81.06, 444.46, 81.06, 448.54, 81.58, + 452.59, 82.59, 456.54, 84.09, 460.34, 86.06, 463.91, 88.46, 467.22, + 91.25, 470.19, 94.4, 472.79, 97.84, 474.98, 101.54, 476.72, 105.42, + 477.98, 109.43, 478.74 + ] + ], + "area": 3315.0, + "bbox": [81.06, 414.0, 64.88, 65.0], + "iscrowd": 0 + }, + { + "id": 168, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 486.5, 2288.0, 490.7, 2287.74, 494.83, 2286.95, 498.83, 2285.65, + 502.64, 2283.86, 506.19, 2281.6, 509.43, 2278.92, 512.31, 2275.85, + 514.78, 2272.45, 516.81, 2268.76, 518.36, 2264.85, 519.41, 2260.78, + 519.93, 2256.6, 519.93, 2252.4, 519.41, 2248.22, 518.36, 2244.15, + 516.81, 2240.24, 514.78, 2236.55, 512.31, 2233.15, 509.43, 2230.08, + 506.19, 2227.4, 502.64, 2225.14, 498.83, 2223.35, 494.83, 2222.05, + 490.7, 2221.26, 486.5, 2221.0, 482.3, 2221.26, 478.17, 2222.05, + 474.17, 2223.35, 470.36, 2225.14, 466.81, 2227.4, 463.57, 2230.08, + 460.69, 2233.15, 458.22, 2236.55, 456.19, 2240.24, 454.64, 2244.15, + 453.59, 2248.22, 453.07, 2252.4, 453.07, 2256.6, 453.59, 2260.78, + 454.64, 2264.85, 456.19, 2268.76, 458.22, 2272.45, 460.69, 2275.85, + 463.57, 2278.92, 466.81, 2281.6, 470.36, 2283.86, 474.17, 2285.65, + 478.17, 2286.95, 482.3, 2287.74 + ] + ], + "area": 3520.0, + "bbox": [453.07, 2221.0, 66.86, 67.0], + "iscrowd": 0 + }, + { + "id": 169, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3295.0, 1525.5, 3294.65, 1531.08, 3293.6, 1536.57, 3291.88, 1541.88, + 3289.5, 1546.94, 3286.5, 1551.66, 3282.94, 1555.96, 3278.87, 1559.79, + 3274.34, 1563.07, 3269.45, 1565.76, 3264.25, 1567.82, 3258.84, + 1569.21, 3253.29, 1569.91, 3247.71, 1569.91, 3242.16, 1569.21, + 3236.75, 1567.82, 3231.55, 1565.76, 3226.66, 1563.07, 3222.13, + 1559.79, 3218.06, 1555.96, 3214.5, 1551.66, 3211.5, 1546.94, 3209.12, + 1541.88, 3207.4, 1536.57, 3206.35, 1531.08, 3206.0, 1525.5, 3206.35, + 1519.92, 3207.4, 1514.43, 3209.12, 1509.12, 3211.5, 1504.06, 3214.5, + 1499.34, 3218.06, 1495.04, 3222.13, 1491.21, 3226.66, 1487.93, + 3231.55, 1485.24, 3236.75, 1483.18, 3242.16, 1481.79, 3247.71, + 1481.09, 3253.29, 1481.09, 3258.84, 1481.79, 3264.25, 1483.18, + 3269.45, 1485.24, 3274.34, 1487.93, 3278.87, 1491.21, 3282.94, + 1495.04, 3286.5, 1499.34, 3289.5, 1504.06, 3291.88, 1509.12, 3293.6, + 1514.43, 3294.65, 1519.92 + ] + ], + "area": 6208.0, + "bbox": [3206.0, 1481.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 170, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 67.5, 3474.0, 70.7, 3473.8, 73.84, 3473.2, 76.89, 3472.21, 79.78, + 3470.85, 82.49, 3469.13, 84.96, 3467.09, 87.15, 3464.75, 89.03, + 3462.16, 90.57, 3459.36, 91.75, 3456.38, 92.55, 3453.28, 92.95, + 3450.1, 92.95, 3446.9, 92.55, 3443.72, 91.75, 3440.62, 90.57, 3437.64, + 89.03, 3434.84, 87.15, 3432.25, 84.96, 3429.91, 82.49, 3427.87, 79.78, + 3426.15, 76.89, 3424.79, 73.84, 3423.8, 70.7, 3423.2, 67.5, 3423.0, + 64.3, 3423.2, 61.16, 3423.8, 58.11, 3424.79, 55.22, 3426.15, 52.51, + 3427.87, 50.04, 3429.91, 47.85, 3432.25, 45.97, 3434.84, 44.43, + 3437.64, 43.25, 3440.62, 42.45, 3443.72, 42.05, 3446.9, 42.05, 3450.1, + 42.45, 3453.28, 43.25, 3456.38, 44.43, 3459.36, 45.97, 3462.16, 47.85, + 3464.75, 50.04, 3467.09, 52.51, 3469.13, 55.22, 3470.85, 58.11, + 3472.21, 61.16, 3473.2, 64.3, 3473.8 + ] + ], + "area": 2036.0, + "bbox": [42.05, 3423.0, 50.9, 51.0], + "iscrowd": 0 + }, + { + "id": 171, + "image_id": 10, + "category_id": 3, + "segmentation": [[1457.0, 1205.0, 1417.0, 1275.0, 1497.0, 1275.0]], + "area": 2800.0, + "bbox": [1417.0, 1205.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 172, + "image_id": 10, + "category_id": 3, + "segmentation": [[2108.0, 782.0, 2079.0, 833.0, 2137.0, 833.0]], + "area": 1484.0, + "bbox": [2079.0, 782.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 173, + "image_id": 10, + "category_id": 3, + "segmentation": [[1408.0, 2250.0, 1375.0, 2308.0, 1441.0, 2308.0]], + "area": 1920.0, + "bbox": [1375.0, 2250.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 174, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 446.5, 753.0, 450.2, 752.77, 453.84, 752.07, 457.36, 750.93, 460.71, + 749.35, 463.84, 747.37, 466.69, 745.0, 469.23, 742.3, 471.41, 739.31, + 473.19, 736.06, 474.56, 732.62, 475.48, 729.03, 475.94, 725.35, + 475.94, 721.65, 475.48, 717.97, 474.56, 714.38, 473.19, 710.94, + 471.41, 707.69, 469.23, 704.7, 466.69, 702.0, 463.84, 699.63, 460.71, + 697.65, 457.36, 696.07, 453.84, 694.93, 450.2, 694.23, 446.5, 694.0, + 442.8, 694.23, 439.16, 694.93, 435.64, 696.07, 432.29, 697.65, 429.16, + 699.63, 426.31, 702.0, 423.77, 704.7, 421.59, 707.69, 419.81, 710.94, + 418.44, 714.38, 417.52, 717.97, 417.06, 721.65, 417.06, 725.35, + 417.52, 729.03, 418.44, 732.62, 419.81, 736.06, 421.59, 739.31, + 423.77, 742.3, 426.31, 745.0, 429.16, 747.37, 432.29, 749.35, 435.64, + 750.93, 439.16, 752.07, 442.8, 752.77 + ] + ], + "area": 2732.0, + "bbox": [417.06, 694.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 175, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3407.0, 1992.5, 3406.74, 1996.7, 3405.95, 2000.83, 3404.65, 2004.83, + 3402.86, 2008.64, 3400.6, 2012.19, 3397.92, 2015.43, 3394.85, 2018.31, + 3391.45, 2020.78, 3387.76, 2022.81, 3383.85, 2024.36, 3379.78, + 2025.41, 3375.6, 2025.93, 3371.4, 2025.93, 3367.22, 2025.41, 3363.15, + 2024.36, 3359.24, 2022.81, 3355.55, 2020.78, 3352.15, 2018.31, + 3349.08, 2015.43, 3346.4, 2012.19, 3344.14, 2008.64, 3342.35, 2004.83, + 3341.05, 2000.83, 3340.26, 1996.7, 3340.0, 1992.5, 3340.26, 1988.3, + 3341.05, 1984.17, 3342.35, 1980.17, 3344.14, 1976.36, 3346.4, 1972.81, + 3349.08, 1969.57, 3352.15, 1966.69, 3355.55, 1964.22, 3359.24, + 1962.19, 3363.15, 1960.64, 3367.22, 1959.59, 3371.4, 1959.07, 3375.6, + 1959.07, 3379.78, 1959.59, 3383.85, 1960.64, 3387.76, 1962.19, + 3391.45, 1964.22, 3394.85, 1966.69, 3397.92, 1969.57, 3400.6, 1972.81, + 3402.86, 1976.36, 3404.65, 1980.17, 3405.95, 1984.17, 3406.74, 1988.3 + ] + ], + "area": 3519.0, + "bbox": [3340.0, 1959.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 176, + "image_id": 10, + "category_id": 3, + "segmentation": [[1494.0, 898.0, 1459.0, 959.0, 1529.0, 959.0]], + "area": 2142.0, + "bbox": [1459.0, 898.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 177, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2419.0, 1862.5, 2418.81, 1865.57, 2418.23, 1868.59, 2417.28, 1871.52, + 2415.97, 1874.3, 2414.32, 1876.9, 2412.36, 1879.27, 2410.12, 1881.38, + 2407.63, 1883.19, 2404.93, 1884.67, 2402.07, 1885.8, 2399.09, 1886.57, + 2396.04, 1886.95, 2392.96, 1886.95, 2389.91, 1886.57, 2386.93, 1885.8, + 2384.07, 1884.67, 2381.37, 1883.19, 2378.88, 1881.38, 2376.64, + 1879.27, 2374.68, 1876.9, 2373.03, 1874.3, 2371.72, 1871.52, 2370.77, + 1868.59, 2370.19, 1865.57, 2370.0, 1862.5, 2370.19, 1859.43, 2370.77, + 1856.41, 2371.72, 1853.48, 2373.03, 1850.7, 2374.68, 1848.1, 2376.64, + 1845.73, 2378.88, 1843.62, 2381.37, 1841.81, 2384.07, 1840.33, + 2386.93, 1839.2, 2389.91, 1838.43, 2392.96, 1838.05, 2396.04, 1838.05, + 2399.09, 1838.43, 2402.07, 1839.2, 2404.93, 1840.33, 2407.63, 1841.81, + 2410.12, 1843.62, 2412.36, 1845.73, 2414.32, 1848.1, 2415.97, 1850.7, + 2417.28, 1853.48, 2418.23, 1856.41, 2418.81, 1859.43 + ] + ], + "area": 1885.0, + "bbox": [2370.0, 1838.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 178, + "image_id": 10, + "category_id": 3, + "segmentation": [[79.0, 650.0, 33.0, 730.0, 125.0, 730.0]], + "area": 3688.0, + "bbox": [33.0, 650.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 179, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3159.0, 452.0, 3236.0, 452.0, 3236.0, 521.0, 3159.0, 521.0, 3159.0, + 452.0 + ] + ], + "area": 5313.0, + "bbox": [3159.0, 452.0, 77.0, 69.0], + "iscrowd": 0 + }, + { + "id": 180, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1450.0, 2185.0, 1506.0, 2185.0, 1506.0, 2275.0, 1450.0, 2275.0, + 1450.0, 2185.0 + ] + ], + "area": 5040.0, + "bbox": [1450.0, 2185.0, 56.0, 90.0], + "iscrowd": 0 + }, + { + "id": 181, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2863.0, 204.0, 2936.0, 204.0, 2936.0, 267.0, 2863.0, 267.0, 2863.0, + 204.0 + ] + ], + "area": 4599.0, + "bbox": [2863.0, 204.0, 73.0, 63.0], + "iscrowd": 0 + }, + { + "id": 182, + "image_id": 10, + "category_id": 3, + "segmentation": [[3154.0, 1886.0, 3126.0, 1935.0, 3182.0, 1935.0]], + "area": 1372.0, + "bbox": [3126.0, 1886.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 183, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2444.5, 1000.0, 2448.32, 999.76, 2452.09, 999.04, 2455.73, 997.86, + 2459.19, 996.23, 2462.43, 994.18, 2465.38, 991.73, 2468.0, 988.94, + 2470.25, 985.84, 2472.1, 982.49, 2473.51, 978.93, 2474.46, 975.22, + 2474.94, 971.42, 2474.94, 967.58, 2474.46, 963.78, 2473.51, 960.07, + 2472.1, 956.51, 2470.25, 953.16, 2468.0, 950.06, 2465.38, 947.27, + 2462.43, 944.82, 2459.19, 942.77, 2455.73, 941.14, 2452.09, 939.96, + 2448.32, 939.24, 2444.5, 939.0, 2440.68, 939.24, 2436.91, 939.96, + 2433.27, 941.14, 2429.81, 942.77, 2426.57, 944.82, 2423.62, 947.27, + 2421.0, 950.06, 2418.75, 953.16, 2416.9, 956.51, 2415.49, 960.07, + 2414.54, 963.78, 2414.06, 967.58, 2414.06, 971.42, 2414.54, 975.22, + 2415.49, 978.93, 2416.9, 982.49, 2418.75, 985.84, 2421.0, 988.94, + 2423.62, 991.73, 2426.57, 994.18, 2429.81, 996.23, 2433.27, 997.86, + 2436.91, 999.04, 2440.68, 999.76 + ] + ], + "area": 2916.0, + "bbox": [2414.06, 939.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 184, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1340.5, 2444.0, 1344.07, 2443.78, 1347.59, 2443.1, 1350.99, 2442.0, + 1354.23, 2440.47, 1357.25, 2438.56, 1360.01, 2436.28, 1362.46, + 2433.67, 1364.56, 2430.77, 1366.29, 2427.63, 1367.61, 2424.31, 1368.5, + 2420.84, 1368.94, 2417.29, 1368.94, 2413.71, 1368.5, 2410.16, 1367.61, + 2406.69, 1366.29, 2403.37, 1364.56, 2400.23, 1362.46, 2397.33, + 1360.01, 2394.72, 1357.25, 2392.44, 1354.23, 2390.53, 1350.99, 2389.0, + 1347.59, 2387.9, 1344.07, 2387.22, 1340.5, 2387.0, 1336.93, 2387.22, + 1333.41, 2387.9, 1330.01, 2389.0, 1326.77, 2390.53, 1323.75, 2392.44, + 1320.99, 2394.72, 1318.54, 2397.33, 1316.44, 2400.23, 1314.71, + 2403.37, 1313.39, 2406.69, 1312.5, 2410.16, 1312.06, 2413.71, 1312.06, + 2417.29, 1312.5, 2420.84, 1313.39, 2424.31, 1314.71, 2427.63, 1316.44, + 2430.77, 1318.54, 2433.67, 1320.99, 2436.28, 1323.75, 2438.56, + 1326.77, 2440.47, 1330.01, 2442.0, 1333.41, 2443.1, 1336.93, 2443.78 + ] + ], + "area": 2547.0, + "bbox": [1312.06, 2387.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 185, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1480.0, 1993.5, 1479.75, 1997.45, 1479.01, 2001.33, 1477.79, 2005.1, + 1476.1, 2008.68, 1473.98, 2012.02, 1471.46, 2015.06, 1468.58, 2017.77, + 1465.38, 2020.1, 1461.91, 2022.0, 1458.23, 2023.46, 1454.4, 2024.44, + 1450.48, 2024.94, 1446.52, 2024.94, 1442.6, 2024.44, 1438.77, 2023.46, + 1435.09, 2022.0, 1431.62, 2020.1, 1428.42, 2017.77, 1425.54, 2015.06, + 1423.02, 2012.02, 1420.9, 2008.68, 1419.21, 2005.1, 1417.99, 2001.33, + 1417.25, 1997.45, 1417.0, 1993.5, 1417.25, 1989.55, 1417.99, 1985.67, + 1419.21, 1981.9, 1420.9, 1978.32, 1423.02, 1974.98, 1425.54, 1971.94, + 1428.42, 1969.23, 1431.62, 1966.9, 1435.09, 1965.0, 1438.77, 1963.54, + 1442.6, 1962.56, 1446.52, 1962.06, 1450.48, 1962.06, 1454.4, 1962.56, + 1458.23, 1963.54, 1461.91, 1965.0, 1465.38, 1966.9, 1468.58, 1969.23, + 1471.46, 1971.94, 1473.98, 1974.98, 1476.1, 1978.32, 1477.79, 1981.9, + 1479.01, 1985.67, 1479.75, 1989.55 + ] + ], + "area": 3122.0, + "bbox": [1417.0, 1962.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 186, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1720.0, 1205.5, 1719.65, 1211.08, 1718.6, 1216.57, 1716.88, 1221.88, + 1714.5, 1226.94, 1711.5, 1231.66, 1707.94, 1235.96, 1703.87, 1239.79, + 1699.34, 1243.07, 1694.45, 1245.76, 1689.25, 1247.82, 1683.84, + 1249.21, 1678.29, 1249.91, 1672.71, 1249.91, 1667.16, 1249.21, + 1661.75, 1247.82, 1656.55, 1245.76, 1651.66, 1243.07, 1647.13, + 1239.79, 1643.06, 1235.96, 1639.5, 1231.66, 1636.5, 1226.94, 1634.12, + 1221.88, 1632.4, 1216.57, 1631.35, 1211.08, 1631.0, 1205.5, 1631.35, + 1199.92, 1632.4, 1194.43, 1634.12, 1189.12, 1636.5, 1184.06, 1639.5, + 1179.34, 1643.06, 1175.04, 1647.13, 1171.21, 1651.66, 1167.93, + 1656.55, 1165.24, 1661.75, 1163.18, 1667.16, 1161.79, 1672.71, + 1161.09, 1678.29, 1161.09, 1683.84, 1161.79, 1689.25, 1163.18, + 1694.45, 1165.24, 1699.34, 1167.93, 1703.87, 1171.21, 1707.94, + 1175.04, 1711.5, 1179.34, 1714.5, 1184.06, 1716.88, 1189.12, 1718.6, + 1194.43, 1719.65, 1199.92 + ] + ], + "area": 6208.0, + "bbox": [1631.0, 1161.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 187, + "image_id": 10, + "category_id": 3, + "segmentation": [[1687.0, 2764.0, 1662.0, 2808.0, 1712.0, 2808.0]], + "area": 1105.0, + "bbox": [1662.0, 2764.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 188, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2834.0, 1768.0, 2910.0, 1768.0, 2910.0, 1856.0, 2834.0, 1856.0, + 2834.0, 1768.0 + ] + ], + "area": 6688.0, + "bbox": [2834.0, 1768.0, 76.0, 88.0], + "iscrowd": 0 + }, + { + "id": 189, + "image_id": 10, + "category_id": 3, + "segmentation": [[426.0, 1097.0, 395.0, 1151.0, 457.0, 1151.0]], + "area": 1680.0, + "bbox": [395.0, 1097.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 190, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2714.0, 2205.5, 2713.8, 2208.7, 2713.2, 2211.84, 2712.21, 2214.89, + 2710.85, 2217.78, 2709.13, 2220.49, 2707.09, 2222.96, 2704.75, + 2225.15, 2702.16, 2227.03, 2699.36, 2228.57, 2696.38, 2229.75, + 2693.28, 2230.55, 2690.1, 2230.95, 2686.9, 2230.95, 2683.72, 2230.55, + 2680.62, 2229.75, 2677.64, 2228.57, 2674.84, 2227.03, 2672.25, + 2225.15, 2669.91, 2222.96, 2667.87, 2220.49, 2666.15, 2217.78, + 2664.79, 2214.89, 2663.8, 2211.84, 2663.2, 2208.7, 2663.0, 2205.5, + 2663.2, 2202.3, 2663.8, 2199.16, 2664.79, 2196.11, 2666.15, 2193.22, + 2667.87, 2190.51, 2669.91, 2188.04, 2672.25, 2185.85, 2674.84, + 2183.97, 2677.64, 2182.43, 2680.62, 2181.25, 2683.72, 2180.45, 2686.9, + 2180.05, 2690.1, 2180.05, 2693.28, 2180.45, 2696.38, 2181.25, 2699.36, + 2182.43, 2702.16, 2183.97, 2704.75, 2185.85, 2707.09, 2188.04, + 2709.13, 2190.51, 2710.85, 2193.22, 2712.21, 2196.11, 2713.2, 2199.16, + 2713.8, 2202.3 + ] + ], + "area": 2037.0, + "bbox": [2663.0, 2180.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 191, + "image_id": 10, + "category_id": 3, + "segmentation": [[2067.0, 1386.0, 2036.0, 1440.0, 2098.0, 1440.0]], + "area": 1680.0, + "bbox": [2036.0, 1386.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 192, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [786.0, 200.0, 857.0, 200.0, 857.0, 291.0, 786.0, 291.0, 786.0, 200.0] + ], + "area": 6461.0, + "bbox": [786.0, 200.0, 71.0, 91.0], + "iscrowd": 0 + }, + { + "id": 193, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1743.0, 248.0, 1827.0, 248.0, 1827.0, 303.0, 1743.0, 303.0, 1743.0, + 248.0 + ] + ], + "area": 4620.0, + "bbox": [1743.0, 248.0, 84.0, 55.0], + "iscrowd": 0 + }, + { + "id": 194, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 817.5, 1812.0, 821.82, 1811.73, 826.08, 1810.92, 830.2, 1809.58, + 834.12, 1807.73, 837.78, 1805.41, 841.12, 1802.65, 844.08, 1799.49, + 846.63, 1795.99, 848.72, 1792.19, 850.31, 1788.16, 851.39, 1783.96, + 851.93, 1779.67, 851.93, 1775.33, 851.39, 1771.04, 850.31, 1766.84, + 848.72, 1762.81, 846.63, 1759.01, 844.08, 1755.51, 841.12, 1752.35, + 837.78, 1749.59, 834.12, 1747.27, 830.2, 1745.42, 826.08, 1744.08, + 821.82, 1743.27, 817.5, 1743.0, 813.18, 1743.27, 808.92, 1744.08, + 804.8, 1745.42, 800.88, 1747.27, 797.22, 1749.59, 793.88, 1752.35, + 790.92, 1755.51, 788.37, 1759.01, 786.28, 1762.81, 784.69, 1766.84, + 783.61, 1771.04, 783.07, 1775.33, 783.07, 1779.67, 783.61, 1783.96, + 784.69, 1788.16, 786.28, 1792.19, 788.37, 1795.99, 790.92, 1799.49, + 793.88, 1802.65, 797.22, 1805.41, 800.88, 1807.73, 804.8, 1809.58, + 808.92, 1810.92, 813.18, 1811.73 + ] + ], + "area": 3743.0, + "bbox": [783.07, 1743.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 195, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1025.5, 2926.0, 1030.7, 2925.67, 1035.82, 2924.7, 1040.78, 2923.09, + 1045.49, 2920.87, 1049.89, 2918.07, 1053.91, 2914.75, 1057.48, + 2910.95, 1060.54, 2906.74, 1063.05, 2902.17, 1064.97, 2897.32, + 1066.26, 2892.28, 1066.92, 2887.11, 1066.92, 2881.89, 1066.26, + 2876.72, 1064.97, 2871.68, 1063.05, 2866.83, 1060.54, 2862.26, + 1057.48, 2858.05, 1053.91, 2854.25, 1049.89, 2850.93, 1045.49, + 2848.13, 1040.78, 2845.91, 1035.82, 2844.3, 1030.7, 2843.33, 1025.5, + 2843.0, 1020.3, 2843.33, 1015.18, 2844.3, 1010.22, 2845.91, 1005.51, + 2848.13, 1001.11, 2850.93, 997.09, 2854.25, 993.52, 2858.05, 990.46, + 2862.26, 987.95, 2866.83, 986.03, 2871.68, 984.74, 2876.72, 984.08, + 2881.89, 984.08, 2887.11, 984.74, 2892.28, 986.03, 2897.32, 987.95, + 2902.17, 990.46, 2906.74, 993.52, 2910.95, 997.09, 2914.75, 1001.11, + 2918.07, 1005.51, 2920.87, 1010.22, 2923.09, 1015.18, 2924.7, 1020.3, + 2925.67 + ] + ], + "area": 5392.0, + "bbox": [984.08, 2843.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 196, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1982.0, 3423.0, 2051.0, 3423.0, 2051.0, 3478.0, 1982.0, 3478.0, + 1982.0, 3423.0 + ] + ], + "area": 3795.0, + "bbox": [1982.0, 3423.0, 69.0, 55.0], + "iscrowd": 0 + }, + { + "id": 197, + "image_id": 10, + "category_id": 3, + "segmentation": [[1352.5, 686.0, 1308.0, 764.0, 1397.0, 764.0]], + "area": 3477.0, + "bbox": [1308.0, 686.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 198, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1494.0, 3088.0, 1553.0, 3088.0, 1553.0, 3168.0, 1494.0, 3168.0, + 1494.0, 3088.0 + ] + ], + "area": 4720.0, + "bbox": [1494.0, 3088.0, 59.0, 80.0], + "iscrowd": 0 + }, + { + "id": 199, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2716.5, 2726.0, 2721.45, 2725.69, 2726.32, 2724.76, 2731.04, 2723.23, + 2735.53, 2721.11, 2739.72, 2718.46, 2743.54, 2715.29, 2746.94, + 2711.68, 2749.85, 2707.67, 2752.24, 2703.32, 2754.07, 2698.71, 2755.3, + 2693.9, 2755.92, 2688.98, 2755.92, 2684.02, 2755.3, 2679.1, 2754.07, + 2674.29, 2752.24, 2669.68, 2749.85, 2665.33, 2746.94, 2661.32, + 2743.54, 2657.71, 2739.72, 2654.54, 2735.53, 2651.89, 2731.04, + 2649.77, 2726.32, 2648.24, 2721.45, 2647.31, 2716.5, 2647.0, 2711.55, + 2647.31, 2706.68, 2648.24, 2701.96, 2649.77, 2697.47, 2651.89, + 2693.28, 2654.54, 2689.46, 2657.71, 2686.06, 2661.32, 2683.15, + 2665.33, 2680.76, 2669.68, 2678.93, 2674.29, 2677.7, 2679.1, 2677.08, + 2684.02, 2677.08, 2688.98, 2677.7, 2693.9, 2678.93, 2698.71, 2680.76, + 2703.32, 2683.15, 2707.67, 2686.06, 2711.68, 2689.46, 2715.29, + 2693.28, 2718.46, 2697.47, 2721.11, 2701.96, 2723.23, 2706.68, + 2724.76, 2711.55, 2725.69 + ] + ], + "area": 4893.0, + "bbox": [2677.08, 2647.0, 78.84, 79.0], + "iscrowd": 0 + }, + { + "id": 200, + "image_id": 10, + "category_id": 3, + "segmentation": [[2240.0, 576.0, 2208.0, 632.0, 2272.0, 632.0]], + "area": 1792.0, + "bbox": [2208.0, 576.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 201, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2798.0, 448.5, 2797.65, 454.08, 2796.6, 459.57, 2794.88, 464.88, + 2792.5, 469.94, 2789.5, 474.66, 2785.94, 478.96, 2781.87, 482.79, + 2777.34, 486.07, 2772.45, 488.76, 2767.25, 490.82, 2761.84, 492.21, + 2756.29, 492.91, 2750.71, 492.91, 2745.16, 492.21, 2739.75, 490.82, + 2734.55, 488.76, 2729.66, 486.07, 2725.13, 482.79, 2721.06, 478.96, + 2717.5, 474.66, 2714.5, 469.94, 2712.12, 464.88, 2710.4, 459.57, + 2709.35, 454.08, 2709.0, 448.5, 2709.35, 442.92, 2710.4, 437.43, + 2712.12, 432.12, 2714.5, 427.06, 2717.5, 422.34, 2721.06, 418.04, + 2725.13, 414.21, 2729.66, 410.93, 2734.55, 408.24, 2739.75, 406.18, + 2745.16, 404.79, 2750.71, 404.09, 2756.29, 404.09, 2761.84, 404.79, + 2767.25, 406.18, 2772.45, 408.24, 2777.34, 410.93, 2781.87, 414.21, + 2785.94, 418.04, 2789.5, 422.34, 2792.5, 427.06, 2794.88, 432.12, + 2796.6, 437.43, 2797.65, 442.92 + ] + ], + "area": 6208.0, + "bbox": [2709.0, 404.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 202, + "image_id": 10, + "category_id": 3, + "segmentation": [[706.0, 217.0, 667.0, 285.0, 745.0, 285.0]], + "area": 2660.0, + "bbox": [667.0, 217.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 203, + "image_id": 10, + "category_id": 3, + "segmentation": [[971.0, 2623.0, 924.0, 2705.0, 1018.0, 2705.0]], + "area": 3864.0, + "bbox": [924.0, 2623.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 204, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1428.0, 702.0, 1497.0, 702.0, 1497.0, 784.0, 1428.0, 784.0, 1428.0, + 702.0 + ] + ], + "area": 5658.0, + "bbox": [1428.0, 702.0, 69.0, 82.0], + "iscrowd": 0 + }, + { + "id": 205, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 841.0, 569.5, 840.67, 574.7, 839.7, 579.82, 838.09, 584.78, 835.87, + 589.49, 833.07, 593.89, 829.75, 597.91, 825.95, 601.48, 821.74, + 604.54, 817.17, 607.05, 812.32, 608.97, 807.28, 610.26, 802.11, + 610.92, 796.89, 610.92, 791.72, 610.26, 786.68, 608.97, 781.83, + 607.05, 777.26, 604.54, 773.05, 601.48, 769.25, 597.91, 765.93, + 593.89, 763.13, 589.49, 760.91, 584.78, 759.3, 579.82, 758.33, 574.7, + 758.0, 569.5, 758.33, 564.3, 759.3, 559.18, 760.91, 554.22, 763.13, + 549.51, 765.93, 545.11, 769.25, 541.09, 773.05, 537.52, 777.26, + 534.46, 781.83, 531.95, 786.68, 530.03, 791.72, 528.74, 796.89, + 528.08, 802.11, 528.08, 807.28, 528.74, 812.32, 530.03, 817.17, + 531.95, 821.74, 534.46, 825.95, 537.52, 829.75, 541.09, 833.07, + 545.11, 835.87, 549.51, 838.09, 554.22, 839.7, 559.18, 840.67, 564.3 + ] + ], + "area": 5394.0, + "bbox": [758.0, 528.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 206, + "image_id": 10, + "category_id": 3, + "segmentation": [[1430.5, 1119.0, 1401.0, 1171.0, 1460.0, 1171.0]], + "area": 1542.0, + "bbox": [1401.0, 1119.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 207, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1395.0, 261.0, 1486.0, 261.0, 1486.0, 348.0, 1395.0, 348.0, 1395.0, + 261.0 + ] + ], + "area": 7917.0, + "bbox": [1395.0, 261.0, 91.0, 87.0], + "iscrowd": 0 + }, + { + "id": 208, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [2174.0, 99.0, 2225.0, 99.0, 2225.0, 186.0, 2174.0, 186.0, 2174.0, 99.0] + ], + "area": 4437.0, + "bbox": [2174.0, 99.0, 51.0, 87.0], + "iscrowd": 0 + }, + { + "id": 209, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 567.0, 2310.0, 664.0, 2310.0, 664.0, 2408.0, 567.0, 2408.0, 567.0, + 2310.0 + ] + ], + "area": 9506.0, + "bbox": [567.0, 2310.0, 97.0, 98.0], + "iscrowd": 0 + }, + { + "id": 210, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2451.0, 1877.0, 2531.0, 1877.0, 2531.0, 1936.0, 2451.0, 1936.0, + 2451.0, 1877.0 + ] + ], + "area": 4720.0, + "bbox": [2451.0, 1877.0, 80.0, 59.0], + "iscrowd": 0 + }, + { + "id": 211, + "image_id": 10, + "category_id": 3, + "segmentation": [[1881.0, 2819.0, 1841.0, 2889.0, 1921.0, 2889.0]], + "area": 2800.0, + "bbox": [1841.0, 2819.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 212, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2368.0, 2965.0, 2439.0, 2965.0, 2439.0, 3032.0, 2368.0, 3032.0, + 2368.0, 2965.0 + ] + ], + "area": 4757.0, + "bbox": [2368.0, 2965.0, 71.0, 67.0], + "iscrowd": 0 + }, + { + "id": 213, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2541.0, 2290.5, 2540.65, 2296.08, 2539.6, 2301.57, 2537.88, 2306.88, + 2535.5, 2311.94, 2532.5, 2316.66, 2528.94, 2320.96, 2524.87, 2324.79, + 2520.34, 2328.07, 2515.45, 2330.76, 2510.25, 2332.82, 2504.84, + 2334.21, 2499.29, 2334.91, 2493.71, 2334.91, 2488.16, 2334.21, + 2482.75, 2332.82, 2477.55, 2330.76, 2472.66, 2328.07, 2468.13, + 2324.79, 2464.06, 2320.96, 2460.5, 2316.66, 2457.5, 2311.94, 2455.12, + 2306.88, 2453.4, 2301.57, 2452.35, 2296.08, 2452.0, 2290.5, 2452.35, + 2284.92, 2453.4, 2279.43, 2455.12, 2274.12, 2457.5, 2269.06, 2460.5, + 2264.34, 2464.06, 2260.04, 2468.13, 2256.21, 2472.66, 2252.93, + 2477.55, 2250.24, 2482.75, 2248.18, 2488.16, 2246.79, 2493.71, + 2246.09, 2499.29, 2246.09, 2504.84, 2246.79, 2510.25, 2248.18, + 2515.45, 2250.24, 2520.34, 2252.93, 2524.87, 2256.21, 2528.94, + 2260.04, 2532.5, 2264.34, 2535.5, 2269.06, 2537.88, 2274.12, 2539.6, + 2279.43, 2540.65, 2284.92 + ] + ], + "area": 6208.0, + "bbox": [2452.0, 2246.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 214, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 798.0, 2996.0, 869.0, 2996.0, 869.0, 3067.0, 798.0, 3067.0, 798.0, + 2996.0 + ] + ], + "area": 5041.0, + "bbox": [798.0, 2996.0, 71.0, 71.0], + "iscrowd": 0 + }, + { + "id": 215, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 523.0, 3125.0, 604.0, 3125.0, 604.0, 3194.0, 523.0, 3194.0, 523.0, + 3125.0 + ] + ], + "area": 5589.0, + "bbox": [523.0, 3125.0, 81.0, 69.0], + "iscrowd": 0 + }, + { + "id": 216, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2032.0, 2816.0, 2091.0, 2816.0, 2091.0, 2907.0, 2032.0, 2907.0, + 2032.0, 2816.0 + ] + ], + "area": 5369.0, + "bbox": [2032.0, 2816.0, 59.0, 91.0], + "iscrowd": 0 + }, + { + "id": 217, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [504.0, 305.0, 587.0, 305.0, 587.0, 373.0, 504.0, 373.0, 504.0, 305.0] + ], + "area": 5644.0, + "bbox": [504.0, 305.0, 83.0, 68.0], + "iscrowd": 0 + }, + { + "id": 218, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2638.0, 515.5, 2637.73, 519.82, 2636.92, 524.08, 2635.58, 528.2, + 2633.73, 532.12, 2631.41, 535.78, 2628.65, 539.12, 2625.49, 542.08, + 2621.99, 544.63, 2618.19, 546.72, 2614.16, 548.31, 2609.96, 549.39, + 2605.67, 549.93, 2601.33, 549.93, 2597.04, 549.39, 2592.84, 548.31, + 2588.81, 546.72, 2585.01, 544.63, 2581.51, 542.08, 2578.35, 539.12, + 2575.59, 535.78, 2573.27, 532.12, 2571.42, 528.2, 2570.08, 524.08, + 2569.27, 519.82, 2569.0, 515.5, 2569.27, 511.18, 2570.08, 506.92, + 2571.42, 502.8, 2573.27, 498.88, 2575.59, 495.22, 2578.35, 491.88, + 2581.51, 488.92, 2585.01, 486.37, 2588.81, 484.28, 2592.84, 482.69, + 2597.04, 481.61, 2601.33, 481.07, 2605.67, 481.07, 2609.96, 481.61, + 2614.16, 482.69, 2618.19, 484.28, 2621.99, 486.37, 2625.49, 488.92, + 2628.65, 491.88, 2631.41, 495.22, 2633.73, 498.88, 2635.58, 502.8, + 2636.92, 506.92, 2637.73, 511.18 + ] + ], + "area": 3743.0, + "bbox": [2569.0, 481.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 219, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1526.0, 106.5, 1525.71, 111.07, 1524.85, 115.58, 1523.44, 119.94, + 1521.49, 124.08, 1519.03, 127.95, 1516.11, 131.49, 1512.77, 134.62, + 1509.06, 137.32, 1505.04, 139.53, 1500.78, 141.21, 1496.34, 142.35, + 1491.79, 142.93, 1487.21, 142.93, 1482.66, 142.35, 1478.22, 141.21, + 1473.96, 139.53, 1469.94, 137.32, 1466.23, 134.62, 1462.89, 131.49, + 1459.97, 127.95, 1457.51, 124.08, 1455.56, 119.94, 1454.15, 115.58, + 1453.29, 111.07, 1453.0, 106.5, 1453.29, 101.93, 1454.15, 97.42, + 1455.56, 93.06, 1457.51, 88.92, 1459.97, 85.05, 1462.89, 81.51, + 1466.23, 78.38, 1469.94, 75.68, 1473.96, 73.47, 1478.22, 71.79, + 1482.66, 70.65, 1487.21, 70.07, 1491.79, 70.07, 1496.34, 70.65, + 1500.78, 71.79, 1505.04, 73.47, 1509.06, 75.68, 1512.77, 78.38, + 1516.11, 81.51, 1519.03, 85.05, 1521.49, 88.92, 1523.44, 93.06, + 1524.85, 97.42, 1525.71, 101.93 + ] + ], + "area": 4187.0, + "bbox": [1453.0, 70.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 220, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2329.0, 2065.5, 2328.79, 2068.82, 2328.17, 2072.09, 2327.14, 2075.26, + 2325.72, 2078.27, 2323.94, 2081.08, 2321.82, 2083.64, 2319.39, + 2085.92, 2316.7, 2087.87, 2313.78, 2089.48, 2310.69, 2090.7, 2307.47, + 2091.53, 2304.16, 2091.95, 2300.84, 2091.95, 2297.53, 2091.53, + 2294.31, 2090.7, 2291.22, 2089.48, 2288.3, 2087.87, 2285.61, 2085.92, + 2283.18, 2083.64, 2281.06, 2081.08, 2279.28, 2078.27, 2277.86, + 2075.26, 2276.83, 2072.09, 2276.21, 2068.82, 2276.0, 2065.5, 2276.21, + 2062.18, 2276.83, 2058.91, 2277.86, 2055.74, 2279.28, 2052.73, + 2281.06, 2049.92, 2283.18, 2047.36, 2285.61, 2045.08, 2288.3, 2043.13, + 2291.22, 2041.52, 2294.31, 2040.3, 2297.53, 2039.47, 2300.84, 2039.05, + 2304.16, 2039.05, 2307.47, 2039.47, 2310.69, 2040.3, 2313.78, 2041.52, + 2316.7, 2043.13, 2319.39, 2045.08, 2321.82, 2047.36, 2323.94, 2049.92, + 2325.72, 2052.73, 2327.14, 2055.74, 2328.17, 2058.91, 2328.79, 2062.18 + ] + ], + "area": 2207.0, + "bbox": [2276.0, 2039.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 221, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2369.5, 1690.0, 2373.07, 1689.78, 2376.59, 1689.1, 2379.99, 1688.0, + 2383.23, 1686.47, 2386.25, 1684.56, 2389.01, 1682.28, 2391.46, + 1679.67, 2393.56, 1676.77, 2395.29, 1673.63, 2396.61, 1670.31, 2397.5, + 1666.84, 2397.94, 1663.29, 2397.94, 1659.71, 2397.5, 1656.16, 2396.61, + 1652.69, 2395.29, 1649.37, 2393.56, 1646.23, 2391.46, 1643.33, + 2389.01, 1640.72, 2386.25, 1638.44, 2383.23, 1636.53, 2379.99, 1635.0, + 2376.59, 1633.9, 2373.07, 1633.22, 2369.5, 1633.0, 2365.93, 1633.22, + 2362.41, 1633.9, 2359.01, 1635.0, 2355.77, 1636.53, 2352.75, 1638.44, + 2349.99, 1640.72, 2347.54, 1643.33, 2345.44, 1646.23, 2343.71, + 1649.37, 2342.39, 1652.69, 2341.5, 1656.16, 2341.06, 1659.71, 2341.06, + 1663.29, 2341.5, 1666.84, 2342.39, 1670.31, 2343.71, 1673.63, 2345.44, + 1676.77, 2347.54, 1679.67, 2349.99, 1682.28, 2352.75, 1684.56, + 2355.77, 1686.47, 2359.01, 1688.0, 2362.41, 1689.1, 2365.93, 1689.78 + ] + ], + "area": 2547.0, + "bbox": [2341.06, 1633.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 222, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3318.0, 1864.5, 3317.78, 1868.07, 3317.1, 1871.59, 3316.0, 1874.99, + 3314.47, 1878.23, 3312.56, 1881.25, 3310.28, 1884.01, 3307.67, + 1886.46, 3304.77, 1888.56, 3301.63, 1890.29, 3298.31, 1891.61, + 3294.84, 1892.5, 3291.29, 1892.94, 3287.71, 1892.94, 3284.16, 1892.5, + 3280.69, 1891.61, 3277.37, 1890.29, 3274.23, 1888.56, 3271.33, + 1886.46, 3268.72, 1884.01, 3266.44, 1881.25, 3264.53, 1878.23, 3263.0, + 1874.99, 3261.9, 1871.59, 3261.22, 1868.07, 3261.0, 1864.5, 3261.22, + 1860.93, 3261.9, 1857.41, 3263.0, 1854.01, 3264.53, 1850.77, 3266.44, + 1847.75, 3268.72, 1844.99, 3271.33, 1842.54, 3274.23, 1840.44, + 3277.37, 1838.71, 3280.69, 1837.39, 3284.16, 1836.5, 3287.71, 1836.06, + 3291.29, 1836.06, 3294.84, 1836.5, 3298.31, 1837.39, 3301.63, 1838.71, + 3304.77, 1840.44, 3307.67, 1842.54, 3310.28, 1844.99, 3312.56, + 1847.75, 3314.47, 1850.77, 3316.0, 1854.01, 3317.1, 1857.41, 3317.78, + 1860.93 + ] + ], + "area": 2548.0, + "bbox": [3261.0, 1836.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 223, + "image_id": 10, + "category_id": 3, + "segmentation": [[2581.0, 2985.0, 2551.0, 3038.0, 2611.0, 3038.0]], + "area": 1596.0, + "bbox": [2551.0, 2985.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 224, + "image_id": 10, + "category_id": 3, + "segmentation": [[1731.5, 3283.0, 1701.0, 3336.0, 1762.0, 3336.0]], + "area": 1623.0, + "bbox": [1701.0, 3283.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 225, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1721.0, 2277.0, 1797.0, 2277.0, 1797.0, 2346.0, 1721.0, 2346.0, + 1721.0, 2277.0 + ] + ], + "area": 5244.0, + "bbox": [1721.0, 2277.0, 76.0, 69.0], + "iscrowd": 0 + }, + { + "id": 226, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 922.0, 3144.5, 921.72, 3148.95, 920.88, 3153.33, 919.51, 3157.57, + 917.61, 3161.6, 915.22, 3165.37, 912.38, 3168.8, 909.13, 3171.85, + 905.52, 3174.47, 901.62, 3176.62, 897.47, 3178.26, 893.15, 3179.37, + 888.73, 3179.93, 884.27, 3179.93, 879.85, 3179.37, 875.53, 3178.26, + 871.38, 3176.62, 867.48, 3174.47, 863.87, 3171.85, 860.62, 3168.8, + 857.78, 3165.37, 855.39, 3161.6, 853.49, 3157.57, 852.12, 3153.33, + 851.28, 3148.95, 851.0, 3144.5, 851.28, 3140.05, 852.12, 3135.67, + 853.49, 3131.43, 855.39, 3127.4, 857.78, 3123.63, 860.62, 3120.2, + 863.87, 3117.15, 867.48, 3114.53, 871.38, 3112.38, 875.53, 3110.74, + 879.85, 3109.63, 884.27, 3109.07, 888.73, 3109.07, 893.15, 3109.63, + 897.47, 3110.74, 901.62, 3112.38, 905.52, 3114.53, 909.13, 3117.15, + 912.38, 3120.2, 915.22, 3123.63, 917.61, 3127.4, 919.51, 3131.43, + 920.88, 3135.67, 921.72, 3140.05 + ] + ], + "area": 3957.0, + "bbox": [851.0, 3109.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 227, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [41.0, 2234.0, 127.0, 2234.0, 127.0, 2305.0, 41.0, 2305.0, 41.0, 2234.0] + ], + "area": 6106.0, + "bbox": [41.0, 2234.0, 86.0, 71.0], + "iscrowd": 0 + }, + { + "id": 228, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3225.0, 2139.5, 3224.71, 2144.07, 3223.85, 2148.58, 3222.44, 2152.94, + 3220.49, 2157.08, 3218.03, 2160.95, 3215.11, 2164.49, 3211.77, + 2167.62, 3208.06, 2170.32, 3204.04, 2172.53, 3199.78, 2174.21, + 3195.34, 2175.35, 3190.79, 2175.93, 3186.21, 2175.93, 3181.66, + 2175.35, 3177.22, 2174.21, 3172.96, 2172.53, 3168.94, 2170.32, + 3165.23, 2167.62, 3161.89, 2164.49, 3158.97, 2160.95, 3156.51, + 2157.08, 3154.56, 2152.94, 3153.15, 2148.58, 3152.29, 2144.07, 3152.0, + 2139.5, 3152.29, 2134.93, 3153.15, 2130.42, 3154.56, 2126.06, 3156.51, + 2121.92, 3158.97, 2118.05, 3161.89, 2114.51, 3165.23, 2111.38, + 3168.94, 2108.68, 3172.96, 2106.47, 3177.22, 2104.79, 3181.66, + 2103.65, 3186.21, 2103.07, 3190.79, 2103.07, 3195.34, 2103.65, + 3199.78, 2104.79, 3204.04, 2106.47, 3208.06, 2108.68, 3211.77, + 2111.38, 3215.11, 2114.51, 3218.03, 2118.05, 3220.49, 2121.92, + 3222.44, 2126.06, 3223.85, 2130.42, 3224.71, 2134.93 + ] + ], + "area": 4187.0, + "bbox": [3152.0, 2103.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 229, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1597.0, 314.0, 1656.0, 314.0, 1656.0, 379.0, 1597.0, 379.0, 1597.0, + 314.0 + ] + ], + "area": 3835.0, + "bbox": [1597.0, 314.0, 59.0, 65.0], + "iscrowd": 0 + }, + { + "id": 230, + "image_id": 10, + "category_id": 3, + "segmentation": [[2968.5, 1730.0, 2933.0, 1792.0, 3004.0, 1792.0]], + "area": 2209.0, + "bbox": [2933.0, 1730.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 231, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 795.0, 2815.0, 847.0, 2815.0, 847.0, 2865.0, 795.0, 2865.0, 795.0, + 2815.0 + ] + ], + "area": 2600.0, + "bbox": [795.0, 2815.0, 52.0, 50.0], + "iscrowd": 0 + }, + { + "id": 232, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 462.0, 2592.0, 515.0, 2592.0, 515.0, 2690.0, 462.0, 2690.0, 462.0, + 2592.0 + ] + ], + "area": 5194.0, + "bbox": [462.0, 2592.0, 53.0, 98.0], + "iscrowd": 0 + }, + { + "id": 233, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1544.0, 2713.5, 1543.66, 2718.83, 1542.66, 2724.07, 1541.02, 2729.15, + 1538.74, 2733.97, 1535.88, 2738.48, 1532.48, 2742.59, 1528.59, + 2746.25, 1524.27, 2749.38, 1519.6, 2751.96, 1514.63, 2753.92, 1509.46, + 2755.25, 1504.17, 2755.92, 1498.83, 2755.92, 1493.54, 2755.25, + 1488.37, 2753.92, 1483.4, 2751.96, 1478.73, 2749.38, 1474.41, 2746.25, + 1470.52, 2742.59, 1467.12, 2738.48, 1464.26, 2733.97, 1461.98, + 2729.15, 1460.34, 2724.07, 1459.34, 2718.83, 1459.0, 2713.5, 1459.34, + 2708.17, 1460.34, 2702.93, 1461.98, 2697.85, 1464.26, 2693.03, + 1467.12, 2688.52, 1470.52, 2684.41, 1474.41, 2680.75, 1478.73, + 2677.62, 1483.4, 2675.04, 1488.37, 2673.08, 1493.54, 2671.75, 1498.83, + 2671.08, 1504.17, 2671.08, 1509.46, 2671.75, 1514.63, 2673.08, 1519.6, + 2675.04, 1524.27, 2677.62, 1528.59, 2680.75, 1532.48, 2684.41, + 1535.88, 2688.52, 1538.74, 2693.03, 1541.02, 2697.85, 1542.66, + 2702.93, 1543.66, 2708.17 + ] + ], + "area": 5651.0, + "bbox": [1459.0, 2671.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 234, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 818.5, 1910.0, 824.58, 1909.62, 830.56, 1908.48, 836.35, 1906.59, + 841.87, 1904.0, 847.01, 1900.74, 851.7, 1896.85, 855.87, 1892.42, + 859.45, 1887.49, 862.38, 1882.15, 864.63, 1876.49, 866.14, 1870.59, + 866.9, 1864.55, 866.9, 1858.45, 866.14, 1852.41, 864.63, 1846.51, + 862.38, 1840.85, 859.45, 1835.51, 855.87, 1830.58, 851.7, 1826.15, + 847.01, 1822.26, 841.87, 1819.0, 836.35, 1816.41, 830.56, 1814.52, + 824.58, 1813.38, 818.5, 1813.0, 812.42, 1813.38, 806.44, 1814.52, + 800.65, 1816.41, 795.13, 1819.0, 789.99, 1822.26, 785.3, 1826.15, + 781.13, 1830.58, 777.55, 1835.51, 774.62, 1840.85, 772.37, 1846.51, + 770.86, 1852.41, 770.1, 1858.45, 770.1, 1864.55, 770.86, 1870.59, + 772.37, 1876.49, 774.62, 1882.15, 777.55, 1887.49, 781.13, 1892.42, + 785.3, 1896.85, 789.99, 1900.74, 795.13, 1904.0, 800.65, 1906.59, + 806.44, 1908.48, 812.42, 1909.62 + ] + ], + "area": 7380.0, + "bbox": [770.1, 1813.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 235, + "image_id": 10, + "category_id": 3, + "segmentation": [[806.0, 1945.0, 778.0, 1994.0, 834.0, 1994.0]], + "area": 1372.0, + "bbox": [778.0, 1945.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 236, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2584.0, 2651.0, 2677.0, 2651.0, 2677.0, 2746.0, 2584.0, 2746.0, + 2584.0, 2651.0 + ] + ], + "area": 8835.0, + "bbox": [2584.0, 2651.0, 93.0, 95.0], + "iscrowd": 0 + }, + { + "id": 237, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3110.0, 989.0, 3187.0, 989.0, 3187.0, 1039.0, 3110.0, 1039.0, 3110.0, + 989.0 + ] + ], + "area": 3850.0, + "bbox": [3110.0, 989.0, 77.0, 50.0], + "iscrowd": 0 + }, + { + "id": 238, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1691.0, 1251.0, 1764.0, 1251.0, 1764.0, 1322.0, 1691.0, 1322.0, + 1691.0, 1251.0 + ] + ], + "area": 5183.0, + "bbox": [1691.0, 1251.0, 73.0, 71.0], + "iscrowd": 0 + }, + { + "id": 239, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1014.0, 1458.5, 1013.74, 1462.57, 1012.98, 1466.58, 1011.72, 1470.46, + 1009.98, 1474.16, 1007.79, 1477.6, 1005.19, 1480.75, 1002.22, 1483.54, + 998.91, 1485.94, 995.34, 1487.91, 991.54, 1489.41, 987.59, 1490.42, + 983.54, 1490.94, 979.46, 1490.94, 975.41, 1490.42, 971.46, 1489.41, + 967.66, 1487.91, 964.09, 1485.94, 960.78, 1483.54, 957.81, 1480.75, + 955.21, 1477.6, 953.02, 1474.16, 951.28, 1470.46, 950.02, 1466.58, + 949.26, 1462.57, 949.0, 1458.5, 949.26, 1454.43, 950.02, 1450.42, + 951.28, 1446.54, 953.02, 1442.84, 955.21, 1439.4, 957.81, 1436.25, + 960.78, 1433.46, 964.09, 1431.06, 967.66, 1429.09, 971.46, 1427.59, + 975.41, 1426.58, 979.46, 1426.06, 983.54, 1426.06, 987.59, 1426.58, + 991.54, 1427.59, 995.34, 1429.09, 998.91, 1431.06, 1002.22, 1433.46, + 1005.19, 1436.25, 1007.79, 1439.4, 1009.98, 1442.84, 1011.72, 1446.54, + 1012.98, 1450.42, 1013.74, 1454.43 + ] + ], + "area": 3315.0, + "bbox": [949.0, 1426.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 240, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1353.0, 1066.5, 1352.74, 1070.57, 1351.98, 1074.58, 1350.72, 1078.46, + 1348.98, 1082.16, 1346.79, 1085.6, 1344.19, 1088.75, 1341.22, 1091.54, + 1337.91, 1093.94, 1334.34, 1095.91, 1330.54, 1097.41, 1326.59, + 1098.42, 1322.54, 1098.94, 1318.46, 1098.94, 1314.41, 1098.42, + 1310.46, 1097.41, 1306.66, 1095.91, 1303.09, 1093.94, 1299.78, + 1091.54, 1296.81, 1088.75, 1294.21, 1085.6, 1292.02, 1082.16, 1290.28, + 1078.46, 1289.02, 1074.58, 1288.26, 1070.57, 1288.0, 1066.5, 1288.26, + 1062.43, 1289.02, 1058.42, 1290.28, 1054.54, 1292.02, 1050.84, + 1294.21, 1047.4, 1296.81, 1044.25, 1299.78, 1041.46, 1303.09, 1039.06, + 1306.66, 1037.09, 1310.46, 1035.59, 1314.41, 1034.58, 1318.46, + 1034.06, 1322.54, 1034.06, 1326.59, 1034.58, 1330.54, 1035.59, + 1334.34, 1037.09, 1337.91, 1039.06, 1341.22, 1041.46, 1344.19, + 1044.25, 1346.79, 1047.4, 1348.98, 1050.84, 1350.72, 1054.54, 1351.98, + 1058.42, 1352.74, 1062.43 + ] + ], + "area": 3315.0, + "bbox": [1288.0, 1034.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 241, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3262.0, 908.0, 3336.0, 908.0, 3336.0, 996.0, 3262.0, 996.0, 3262.0, + 908.0 + ] + ], + "area": 6512.0, + "bbox": [3262.0, 908.0, 74.0, 88.0], + "iscrowd": 0 + }, + { + "id": 242, + "image_id": 10, + "category_id": 3, + "segmentation": [[1395.0, 957.0, 1353.0, 1030.0, 1437.0, 1030.0]], + "area": 3074.0, + "bbox": [1353.0, 957.0, 84.0, 73.0], + "iscrowd": 0 + }, + { + "id": 243, + "image_id": 10, + "category_id": 3, + "segmentation": [[169.0, 920.0, 133.0, 983.0, 205.0, 983.0]], + "area": 2268.0, + "bbox": [133.0, 920.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 244, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 750.0, 816.5, 749.62, 822.58, 748.48, 828.56, 746.59, 834.35, 744.0, + 839.87, 740.74, 845.01, 736.85, 849.7, 732.42, 853.87, 727.49, 857.45, + 722.15, 860.38, 716.49, 862.63, 710.59, 864.14, 704.55, 864.9, 698.45, + 864.9, 692.41, 864.14, 686.51, 862.63, 680.85, 860.38, 675.51, 857.45, + 670.58, 853.87, 666.15, 849.7, 662.26, 845.01, 659.0, 839.87, 656.41, + 834.35, 654.52, 828.56, 653.38, 822.58, 653.0, 816.5, 653.38, 810.42, + 654.52, 804.44, 656.41, 798.65, 659.0, 793.13, 662.26, 787.99, 666.15, + 783.3, 670.58, 779.13, 675.51, 775.55, 680.85, 772.62, 686.51, 770.37, + 692.41, 768.86, 698.45, 768.1, 704.55, 768.1, 710.59, 768.86, 716.49, + 770.37, 722.15, 772.62, 727.49, 775.55, 732.42, 779.13, 736.85, 783.3, + 740.74, 787.99, 744.0, 793.13, 746.59, 798.65, 748.48, 804.44, 749.62, + 810.42 + ] + ], + "area": 7381.0, + "bbox": [653.0, 768.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 245, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2111.0, 1794.0, 2172.0, 1794.0, 2172.0, 1870.0, 2111.0, 1870.0, + 2111.0, 1794.0 + ] + ], + "area": 4636.0, + "bbox": [2111.0, 1794.0, 61.0, 76.0], + "iscrowd": 0 + }, + { + "id": 246, + "image_id": 10, + "category_id": 3, + "segmentation": [[2503.5, 796.0, 2454.0, 882.0, 2553.0, 882.0]], + "area": 4268.0, + "bbox": [2454.0, 796.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 247, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 950.0, 1137.0, 1021.0, 1137.0, 1021.0, 1209.0, 950.0, 1209.0, 950.0, + 1137.0 + ] + ], + "area": 5112.0, + "bbox": [950.0, 1137.0, 71.0, 72.0], + "iscrowd": 0 + }, + { + "id": 248, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 567.0, 2887.0, 640.0, 2887.0, 640.0, 2962.0, 567.0, 2962.0, 567.0, + 2887.0 + ] + ], + "area": 5475.0, + "bbox": [567.0, 2887.0, 73.0, 75.0], + "iscrowd": 0 + }, + { + "id": 249, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 413.5, 2856.0, 417.95, 2855.72, 422.33, 2854.88, 426.57, 2853.51, + 430.6, 2851.61, 434.37, 2849.22, 437.8, 2846.38, 440.85, 2843.13, + 443.47, 2839.52, 445.62, 2835.62, 447.26, 2831.47, 448.37, 2827.15, + 448.93, 2822.73, 448.93, 2818.27, 448.37, 2813.85, 447.26, 2809.53, + 445.62, 2805.38, 443.47, 2801.48, 440.85, 2797.87, 437.8, 2794.62, + 434.37, 2791.78, 430.6, 2789.39, 426.57, 2787.49, 422.33, 2786.12, + 417.95, 2785.28, 413.5, 2785.0, 409.05, 2785.28, 404.67, 2786.12, + 400.43, 2787.49, 396.4, 2789.39, 392.63, 2791.78, 389.2, 2794.62, + 386.15, 2797.87, 383.53, 2801.48, 381.38, 2805.38, 379.74, 2809.53, + 378.63, 2813.85, 378.07, 2818.27, 378.07, 2822.73, 378.63, 2827.15, + 379.74, 2831.47, 381.38, 2835.62, 383.53, 2839.52, 386.15, 2843.13, + 389.2, 2846.38, 392.63, 2849.22, 396.4, 2851.61, 400.43, 2853.51, + 404.67, 2854.88, 409.05, 2855.72 + ] + ], + "area": 3956.0, + "bbox": [378.07, 2785.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 250, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3292.0, 190.0, 3378.0, 190.0, 3378.0, 246.0, 3292.0, 246.0, 3292.0, + 190.0 + ] + ], + "area": 4816.0, + "bbox": [3292.0, 190.0, 86.0, 56.0], + "iscrowd": 0 + }, + { + "id": 251, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1698.0, 1761.5, 1697.68, 1766.58, 1696.73, 1771.57, 1695.16, 1776.41, + 1692.99, 1781.01, 1690.27, 1785.31, 1687.02, 1789.22, 1683.32, + 1792.71, 1679.2, 1795.7, 1674.74, 1798.15, 1670.02, 1800.02, 1665.09, + 1801.28, 1660.04, 1801.92, 1654.96, 1801.92, 1649.91, 1801.28, + 1644.98, 1800.02, 1640.26, 1798.15, 1635.8, 1795.7, 1631.68, 1792.71, + 1627.98, 1789.22, 1624.73, 1785.31, 1622.01, 1781.01, 1619.84, + 1776.41, 1618.27, 1771.57, 1617.32, 1766.58, 1617.0, 1761.5, 1617.32, + 1756.42, 1618.27, 1751.43, 1619.84, 1746.59, 1622.01, 1741.99, + 1624.73, 1737.69, 1627.98, 1733.78, 1631.68, 1730.29, 1635.8, 1727.3, + 1640.26, 1724.85, 1644.98, 1722.98, 1649.91, 1721.72, 1654.96, + 1721.08, 1660.04, 1721.08, 1665.09, 1721.72, 1670.02, 1722.98, + 1674.74, 1724.85, 1679.2, 1727.3, 1683.32, 1730.29, 1687.02, 1733.78, + 1690.27, 1737.69, 1692.99, 1741.99, 1695.16, 1746.59, 1696.73, + 1751.43, 1697.68, 1756.42 + ] + ], + "area": 5149.0, + "bbox": [1617.0, 1721.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 252, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1444.0, 497.0, 1537.0, 497.0, 1537.0, 584.0, 1444.0, 584.0, 1444.0, + 497.0 + ] + ], + "area": 8091.0, + "bbox": [1444.0, 497.0, 93.0, 87.0], + "iscrowd": 0 + }, + { + "id": 253, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1322.0, 2290.5, 1321.65, 2296.08, 1320.6, 2301.57, 1318.88, 2306.88, + 1316.5, 2311.94, 1313.5, 2316.66, 1309.94, 2320.96, 1305.87, 2324.79, + 1301.34, 2328.07, 1296.45, 2330.76, 1291.25, 2332.82, 1285.84, + 2334.21, 1280.29, 2334.91, 1274.71, 2334.91, 1269.16, 2334.21, + 1263.75, 2332.82, 1258.55, 2330.76, 1253.66, 2328.07, 1249.13, + 2324.79, 1245.06, 2320.96, 1241.5, 2316.66, 1238.5, 2311.94, 1236.12, + 2306.88, 1234.4, 2301.57, 1233.35, 2296.08, 1233.0, 2290.5, 1233.35, + 2284.92, 1234.4, 2279.43, 1236.12, 2274.12, 1238.5, 2269.06, 1241.5, + 2264.34, 1245.06, 2260.04, 1249.13, 2256.21, 1253.66, 2252.93, + 1258.55, 2250.24, 1263.75, 2248.18, 1269.16, 2246.79, 1274.71, + 2246.09, 1280.29, 2246.09, 1285.84, 2246.79, 1291.25, 2248.18, + 1296.45, 2250.24, 1301.34, 2252.93, 1305.87, 2256.21, 1309.94, + 2260.04, 1313.5, 2264.34, 1316.5, 2269.06, 1318.88, 2274.12, 1320.6, + 2279.43, 1321.65, 2284.92 + ] + ], + "area": 6208.0, + "bbox": [1233.0, 2246.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 254, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2511.0, 1091.0, 2588.0, 1091.0, 2588.0, 1168.0, 2511.0, 1168.0, + 2511.0, 1091.0 + ] + ], + "area": 5929.0, + "bbox": [2511.0, 1091.0, 77.0, 77.0], + "iscrowd": 0 + }, + { + "id": 255, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [562.0, 611.0, 657.0, 611.0, 657.0, 687.0, 562.0, 687.0, 562.0, 611.0] + ], + "area": 7220.0, + "bbox": [562.0, 611.0, 95.0, 76.0], + "iscrowd": 0 + }, + { + "id": 256, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2758.0, 3249.0, 2852.0, 3249.0, 2852.0, 3315.0, 2758.0, 3315.0, + 2758.0, 3249.0 + ] + ], + "area": 6204.0, + "bbox": [2758.0, 3249.0, 94.0, 66.0], + "iscrowd": 0 + }, + { + "id": 257, + "image_id": 10, + "category_id": 3, + "segmentation": [[1252.5, 2638.0, 1224.0, 2688.0, 1281.0, 2688.0]], + "area": 1430.0, + "bbox": [1224.0, 2638.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 258, + "image_id": 10, + "category_id": 3, + "segmentation": [[2595.0, 2363.0, 2557.0, 2429.0, 2633.0, 2429.0]], + "area": 2514.0, + "bbox": [2557.0, 2363.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 259, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 382.0, 1661.0, 449.0, 1661.0, 449.0, 1726.0, 382.0, 1726.0, 382.0, + 1661.0 + ] + ], + "area": 4355.0, + "bbox": [382.0, 1661.0, 67.0, 65.0], + "iscrowd": 0 + }, + { + "id": 260, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1501.0, 1705.0, 1578.0, 1705.0, 1578.0, 1768.0, 1501.0, 1768.0, + 1501.0, 1705.0 + ] + ], + "area": 4851.0, + "bbox": [1501.0, 1705.0, 77.0, 63.0], + "iscrowd": 0 + }, + { + "id": 261, + "image_id": 10, + "category_id": 3, + "segmentation": [[3450.5, 2320.0, 3418.0, 2377.0, 3483.0, 2377.0]], + "area": 1857.0, + "bbox": [3418.0, 2320.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 262, + "image_id": 10, + "category_id": 3, + "segmentation": [[1899.0, 1465.0, 1850.0, 1551.0, 1948.0, 1551.0]], + "area": 4224.0, + "bbox": [1850.0, 1465.0, 98.0, 86.0], + "iscrowd": 0 + }, + { + "id": 263, + "image_id": 10, + "category_id": 3, + "segmentation": [[2025.5, 2140.0, 1979.0, 2221.0, 2072.0, 2221.0]], + "area": 3776.0, + "bbox": [1979.0, 2140.0, 93.0, 81.0], + "iscrowd": 0 + }, + { + "id": 264, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2157.5, 1689.0, 2160.95, 1688.78, 2164.34, 1688.14, 2167.62, 1687.07, + 2170.75, 1685.6, 2173.66, 1683.75, 2176.33, 1681.55, 2178.69, 1679.03, + 2180.72, 1676.24, 2182.38, 1673.21, 2183.65, 1670.0, 2184.51, 1666.65, + 2184.95, 1663.23, 2184.95, 1659.77, 2184.51, 1656.35, 2183.65, 1653.0, + 2182.38, 1649.79, 2180.72, 1646.76, 2178.69, 1643.97, 2176.33, + 1641.45, 2173.66, 1639.25, 2170.75, 1637.4, 2167.62, 1635.93, 2164.34, + 1634.86, 2160.95, 1634.22, 2157.5, 1634.0, 2154.05, 1634.22, 2150.66, + 1634.86, 2147.38, 1635.93, 2144.25, 1637.4, 2141.34, 1639.25, 2138.67, + 1641.45, 2136.31, 1643.97, 2134.28, 1646.76, 2132.62, 1649.79, + 2131.35, 1653.0, 2130.49, 1656.35, 2130.05, 1659.77, 2130.05, 1663.23, + 2130.49, 1666.65, 2131.35, 1670.0, 2132.62, 1673.21, 2134.28, 1676.24, + 2136.31, 1679.03, 2138.67, 1681.55, 2141.34, 1683.75, 2144.25, 1685.6, + 2147.38, 1687.07, 2150.66, 1688.14, 2154.05, 1688.78 + ] + ], + "area": 2375.0, + "bbox": [2130.05, 1634.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 265, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1068.0, 798.0, 1139.0, 798.0, 1139.0, 863.0, 1068.0, 863.0, 1068.0, + 798.0 + ] + ], + "area": 4615.0, + "bbox": [1068.0, 798.0, 71.0, 65.0], + "iscrowd": 0 + }, + { + "id": 266, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2173.5, 3035.0, 2178.07, 3034.71, 2182.58, 3033.85, 2186.94, 3032.44, + 2191.08, 3030.49, 2194.95, 3028.03, 2198.49, 3025.11, 2201.62, + 3021.77, 2204.32, 3018.06, 2206.53, 3014.04, 2208.21, 3009.78, + 2209.35, 3005.34, 2209.93, 3000.79, 2209.93, 2996.21, 2209.35, + 2991.66, 2208.21, 2987.22, 2206.53, 2982.96, 2204.32, 2978.94, + 2201.62, 2975.23, 2198.49, 2971.89, 2194.95, 2968.97, 2191.08, + 2966.51, 2186.94, 2964.56, 2182.58, 2963.15, 2178.07, 2962.29, 2173.5, + 2962.0, 2168.93, 2962.29, 2164.42, 2963.15, 2160.06, 2964.56, 2155.92, + 2966.51, 2152.05, 2968.97, 2148.51, 2971.89, 2145.38, 2975.23, + 2142.68, 2978.94, 2140.47, 2982.96, 2138.79, 2987.22, 2137.65, + 2991.66, 2137.07, 2996.21, 2137.07, 3000.79, 2137.65, 3005.34, + 2138.79, 3009.78, 2140.47, 3014.04, 2142.68, 3018.06, 2145.38, + 3021.77, 2148.51, 3025.11, 2152.05, 3028.03, 2155.92, 3030.49, + 2160.06, 3032.44, 2164.42, 3033.85, 2168.93, 3034.71 + ] + ], + "area": 4187.0, + "bbox": [2137.07, 2962.0, 72.86, 73.0], + "iscrowd": 0 + }, + { + "id": 267, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2661.0, 3440.0, 2760.0, 3440.0, 2760.0, 3490.0, 2661.0, 3490.0, + 2661.0, 3440.0 + ] + ], + "area": 4950.0, + "bbox": [2661.0, 3440.0, 99.0, 50.0], + "iscrowd": 0 + }, + { + "id": 268, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1467.5, 2574.0, 1473.58, 2573.62, 1479.56, 2572.48, 1485.35, 2570.59, + 1490.87, 2568.0, 1496.01, 2564.74, 1500.7, 2560.85, 1504.87, 2556.42, + 1508.45, 2551.49, 1511.38, 2546.15, 1513.63, 2540.49, 1515.14, + 2534.59, 1515.9, 2528.55, 1515.9, 2522.45, 1515.14, 2516.41, 1513.63, + 2510.51, 1511.38, 2504.85, 1508.45, 2499.51, 1504.87, 2494.58, 1500.7, + 2490.15, 1496.01, 2486.26, 1490.87, 2483.0, 1485.35, 2480.41, 1479.56, + 2478.52, 1473.58, 2477.38, 1467.5, 2477.0, 1461.42, 2477.38, 1455.44, + 2478.52, 1449.65, 2480.41, 1444.13, 2483.0, 1438.99, 2486.26, 1434.3, + 2490.15, 1430.13, 2494.58, 1426.55, 2499.51, 1423.62, 2504.85, + 1421.37, 2510.51, 1419.86, 2516.41, 1419.1, 2522.45, 1419.1, 2528.55, + 1419.86, 2534.59, 1421.37, 2540.49, 1423.62, 2546.15, 1426.55, + 2551.49, 1430.13, 2556.42, 1434.3, 2560.85, 1438.99, 2564.74, 1444.13, + 2568.0, 1449.65, 2570.59, 1455.44, 2572.48, 1461.42, 2573.62 + ] + ], + "area": 7380.0, + "bbox": [1419.1, 2477.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 269, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 801.0, 2577.0, 898.0, 2577.0, 898.0, 2664.0, 801.0, 2664.0, 801.0, + 2577.0 + ] + ], + "area": 8439.0, + "bbox": [801.0, 2577.0, 97.0, 87.0], + "iscrowd": 0 + }, + { + "id": 270, + "image_id": 10, + "category_id": 3, + "segmentation": [[2260.5, 655.0, 2216.0, 733.0, 2305.0, 733.0]], + "area": 3477.0, + "bbox": [2216.0, 655.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 271, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [978.0, 655.0, 1077.0, 655.0, 1077.0, 748.0, 978.0, 748.0, 978.0, 655.0] + ], + "area": 9207.0, + "bbox": [978.0, 655.0, 99.0, 93.0], + "iscrowd": 0 + }, + { + "id": 272, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2034.5, 2379.0, 2037.95, 2378.78, 2041.34, 2378.14, 2044.62, 2377.07, + 2047.75, 2375.6, 2050.66, 2373.75, 2053.33, 2371.55, 2055.69, 2369.03, + 2057.72, 2366.24, 2059.38, 2363.21, 2060.65, 2360.0, 2061.51, 2356.65, + 2061.95, 2353.23, 2061.95, 2349.77, 2061.51, 2346.35, 2060.65, 2343.0, + 2059.38, 2339.79, 2057.72, 2336.76, 2055.69, 2333.97, 2053.33, + 2331.45, 2050.66, 2329.25, 2047.75, 2327.4, 2044.62, 2325.93, 2041.34, + 2324.86, 2037.95, 2324.22, 2034.5, 2324.0, 2031.05, 2324.22, 2027.66, + 2324.86, 2024.38, 2325.93, 2021.25, 2327.4, 2018.34, 2329.25, 2015.67, + 2331.45, 2013.31, 2333.97, 2011.28, 2336.76, 2009.62, 2339.79, + 2008.35, 2343.0, 2007.49, 2346.35, 2007.05, 2349.77, 2007.05, 2353.23, + 2007.49, 2356.65, 2008.35, 2360.0, 2009.62, 2363.21, 2011.28, 2366.24, + 2013.31, 2369.03, 2015.67, 2371.55, 2018.34, 2373.75, 2021.25, 2375.6, + 2024.38, 2377.07, 2027.66, 2378.14, 2031.05, 2378.78 + ] + ], + "area": 2375.0, + "bbox": [2007.05, 2324.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 273, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3053.0, 3302.5, 3052.7, 3307.33, 3051.79, 3312.07, 3050.3, 3316.67, + 3048.24, 3321.05, 3045.65, 3325.13, 3042.57, 3328.86, 3039.04, + 3332.16, 3035.13, 3335.01, 3030.89, 3337.34, 3026.4, 3339.12, 3021.71, + 3340.32, 3016.92, 3340.92, 3012.08, 3340.92, 3007.29, 3340.32, 3002.6, + 3339.12, 2998.11, 3337.34, 2993.87, 3335.01, 2989.96, 3332.16, + 2986.43, 3328.86, 2983.35, 3325.13, 2980.76, 3321.05, 2978.7, 3316.67, + 2977.21, 3312.07, 2976.3, 3307.33, 2976.0, 3302.5, 2976.3, 3297.67, + 2977.21, 3292.93, 2978.7, 3288.33, 2980.76, 3283.95, 2983.35, 3279.87, + 2986.43, 3276.14, 2989.96, 3272.84, 2993.87, 3269.99, 2998.11, + 3267.66, 3002.6, 3265.88, 3007.29, 3264.68, 3012.08, 3264.08, 3016.92, + 3264.08, 3021.71, 3264.68, 3026.4, 3265.88, 3030.89, 3267.66, 3035.13, + 3269.99, 3039.04, 3272.84, 3042.57, 3276.14, 3045.65, 3279.87, + 3048.24, 3283.95, 3050.3, 3288.33, 3051.79, 3292.93, 3052.7, 3297.67 + ] + ], + "area": 4653.0, + "bbox": [2976.0, 3264.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 274, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 670.0, 3314.0, 725.0, 3314.0, 725.0, 3379.0, 670.0, 3379.0, 670.0, + 3314.0 + ] + ], + "area": 3575.0, + "bbox": [670.0, 3314.0, 55.0, 65.0], + "iscrowd": 0 + }, + { + "id": 275, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1864.0, 922.0, 1958.0, 922.0, 1958.0, 1000.0, 1864.0, 1000.0, 1864.0, + 922.0 + ] + ], + "area": 7332.0, + "bbox": [1864.0, 922.0, 94.0, 78.0], + "iscrowd": 0 + }, + { + "id": 276, + "image_id": 10, + "category_id": 3, + "segmentation": [[3036.0, 1525.0, 2997.0, 1593.0, 3075.0, 1593.0]], + "area": 2660.0, + "bbox": [2997.0, 1525.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 277, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3188.0, 3399.5, 3187.63, 3405.33, 3186.54, 3411.06, 3184.73, 3416.62, + 3182.25, 3421.9, 3179.12, 3426.83, 3175.4, 3431.33, 3171.14, 3435.33, + 3166.42, 3438.76, 3161.3, 3441.57, 3155.87, 3443.72, 3150.21, 3445.18, + 3144.42, 3445.91, 3138.58, 3445.91, 3132.79, 3445.18, 3127.13, + 3443.72, 3121.7, 3441.57, 3116.58, 3438.76, 3111.86, 3435.33, 3107.6, + 3431.33, 3103.88, 3426.83, 3100.75, 3421.9, 3098.27, 3416.62, 3096.46, + 3411.06, 3095.37, 3405.33, 3095.0, 3399.5, 3095.37, 3393.67, 3096.46, + 3387.94, 3098.27, 3382.38, 3100.75, 3377.1, 3103.88, 3372.17, 3107.6, + 3367.67, 3111.86, 3363.67, 3116.58, 3360.24, 3121.7, 3357.43, 3127.13, + 3355.28, 3132.79, 3353.82, 3138.58, 3353.09, 3144.42, 3353.09, + 3150.21, 3353.82, 3155.87, 3355.28, 3161.3, 3357.43, 3166.42, 3360.24, + 3171.14, 3363.67, 3175.4, 3367.67, 3179.12, 3372.17, 3182.25, 3377.1, + 3184.73, 3382.38, 3186.54, 3387.94, 3187.63, 3393.67 + ] + ], + "area": 6782.0, + "bbox": [3095.0, 3353.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 278, + "image_id": 10, + "category_id": 3, + "segmentation": [[1126.0, 200.0, 1083.0, 275.0, 1169.0, 275.0]], + "area": 3234.0, + "bbox": [1083.0, 200.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 279, + "image_id": 10, + "category_id": 3, + "segmentation": [[1149.5, 2629.0, 1121.0, 2679.0, 1178.0, 2679.0]], + "area": 1430.0, + "bbox": [1121.0, 2629.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 280, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1991.0, 1623.0, 2074.0, 1623.0, 2074.0, 1684.0, 1991.0, 1684.0, + 1991.0, 1623.0 + ] + ], + "area": 5063.0, + "bbox": [1991.0, 1623.0, 83.0, 61.0], + "iscrowd": 0 + }, + { + "id": 281, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [60.0, 2029.0, 139.0, 2029.0, 139.0, 2102.0, 60.0, 2102.0, 60.0, 2029.0] + ], + "area": 5767.0, + "bbox": [60.0, 2029.0, 79.0, 73.0], + "iscrowd": 0 + }, + { + "id": 282, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2474.5, 179.0, 2480.2, 178.64, 2485.82, 177.57, 2491.25, 175.8, + 2496.42, 173.37, 2501.24, 170.31, 2505.65, 166.67, 2509.56, 162.5, + 2512.92, 157.88, 2515.67, 152.87, 2517.77, 147.56, 2519.19, 142.03, + 2519.91, 136.36, 2519.91, 130.64, 2519.19, 124.97, 2517.77, 119.44, + 2515.67, 114.13, 2512.92, 109.12, 2509.56, 104.5, 2505.65, 100.33, + 2501.24, 96.69, 2496.42, 93.63, 2491.25, 91.2, 2485.82, 89.43, 2480.2, + 88.36, 2474.5, 88.0, 2468.8, 88.36, 2463.18, 89.43, 2457.75, 91.2, + 2452.58, 93.63, 2447.76, 96.69, 2443.35, 100.33, 2439.44, 104.5, + 2436.08, 109.12, 2433.33, 114.13, 2431.23, 119.44, 2429.81, 124.97, + 2429.09, 130.64, 2429.09, 136.36, 2429.81, 142.03, 2431.23, 147.56, + 2433.33, 152.87, 2436.08, 157.88, 2439.44, 162.5, 2443.35, 166.67, + 2447.76, 170.31, 2452.58, 173.37, 2457.75, 175.8, 2463.18, 177.57, + 2468.8, 178.64 + ] + ], + "area": 6499.0, + "bbox": [2429.09, 88.0, 90.82, 91.0], + "iscrowd": 0 + }, + { + "id": 283, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [472.0, 757.0, 555.0, 757.0, 555.0, 812.0, 472.0, 812.0, 472.0, 757.0] + ], + "area": 4565.0, + "bbox": [472.0, 757.0, 83.0, 55.0], + "iscrowd": 0 + }, + { + "id": 284, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [25.0, 2471.0, 121.0, 2471.0, 121.0, 2521.0, 25.0, 2521.0, 25.0, 2471.0] + ], + "area": 4800.0, + "bbox": [25.0, 2471.0, 96.0, 50.0], + "iscrowd": 0 + }, + { + "id": 285, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1808.0, 1871.0, 1879.0, 1871.0, 1879.0, 1950.0, 1808.0, 1950.0, + 1808.0, 1871.0 + ] + ], + "area": 5609.0, + "bbox": [1808.0, 1871.0, 71.0, 79.0], + "iscrowd": 0 + }, + { + "id": 286, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2630.0, 945.0, 2693.0, 945.0, 2693.0, 1014.0, 2630.0, 1014.0, 2630.0, + 945.0 + ] + ], + "area": 4347.0, + "bbox": [2630.0, 945.0, 63.0, 69.0], + "iscrowd": 0 + } + ] +} diff --git a/data/small_objects/annotations/instances_train.json b/data/small_objects/annotations/instances_train.json new file mode 100644 index 00000000000..37f552f571e --- /dev/null +++ b/data/small_objects/annotations/instances_train.json @@ -0,0 +1,9380 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { "id": 1, "name": "rectangle", "supercategory": "" }, + { "id": 2, "name": "ellipse", "supercategory": "" }, + { "id": 3, "name": "triangle", "supercategory": "" } + ], + "images": [ + { + "id": 1, + "width": 3500, + "height": 3500, + "file_name": "sample_2.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 2, + "width": 3500, + "height": 3500, + "file_name": "sample_3.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 3, + "width": 3500, + "height": 3500, + "file_name": "sample_4.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 4, + "width": 3500, + "height": 3500, + "file_name": "sample_6.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 5, + "width": 3500, + "height": 3500, + "file_name": "sample_7.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 6, + "width": 3500, + "height": 3500, + "file_name": "sample_9.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [ + { + "id": 1, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1786.0, 3145.0, 1885.0, 3145.0, 1885.0, 3239.0, 1786.0, 3239.0, + 1786.0, 3145.0 + ] + ], + "area": 9306.0, + "bbox": [1786.0, 3145.0, 99.0, 94.0], + "iscrowd": 0 + }, + { + "id": 2, + "image_id": 1, + "category_id": 3, + "segmentation": [[2491.0, 1790.0, 2451.0, 1860.0, 2531.0, 1860.0]], + "area": 2800.0, + "bbox": [2451.0, 1790.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 3, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 968.0, 2817.0, 1028.0, 2817.0, 1028.0, 2902.0, 968.0, 2902.0, 968.0, + 2817.0 + ] + ], + "area": 5100.0, + "bbox": [968.0, 2817.0, 60.0, 85.0], + "iscrowd": 0 + }, + { + "id": 4, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 449.0, 2692.5, 448.63, 2698.45, 447.51, 2704.31, 445.66, 2709.99, + 443.12, 2715.38, 439.93, 2720.42, 436.13, 2725.02, 431.78, 2729.1, + 426.95, 2732.61, 421.72, 2735.48, 416.18, 2737.68, 410.4, 2739.16, + 404.48, 2739.91, 398.52, 2739.91, 392.6, 2739.16, 386.82, 2737.68, + 381.28, 2735.48, 376.05, 2732.61, 371.22, 2729.1, 366.87, 2725.02, + 363.07, 2720.42, 359.88, 2715.38, 357.34, 2709.99, 355.49, 2704.31, + 354.37, 2698.45, 354.0, 2692.5, 354.37, 2686.55, 355.49, 2680.69, + 357.34, 2675.01, 359.88, 2669.62, 363.07, 2664.58, 366.87, 2659.98, + 371.22, 2655.9, 376.05, 2652.39, 381.28, 2649.52, 386.82, 2647.32, + 392.6, 2645.84, 398.52, 2645.09, 404.48, 2645.09, 410.4, 2645.84, + 416.18, 2647.32, 421.72, 2649.52, 426.95, 2652.39, 431.78, 2655.9, + 436.13, 2659.98, 439.93, 2664.58, 443.12, 2669.62, 445.66, 2675.01, + 447.51, 2680.69, 448.63, 2686.55 + ] + ], + "area": 7083.0, + "bbox": [354.0, 2645.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 5, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 170.0, 2204.5, 169.69, 2209.45, 168.76, 2214.32, 167.23, 2219.04, + 165.11, 2223.53, 162.46, 2227.72, 159.29, 2231.54, 155.68, 2234.94, + 151.67, 2237.85, 147.32, 2240.24, 142.71, 2242.07, 137.9, 2243.3, + 132.98, 2243.92, 128.02, 2243.92, 123.1, 2243.3, 118.29, 2242.07, + 113.68, 2240.24, 109.33, 2237.85, 105.32, 2234.94, 101.71, 2231.54, + 98.54, 2227.72, 95.89, 2223.53, 93.77, 2219.04, 92.24, 2214.32, 91.31, + 2209.45, 91.0, 2204.5, 91.31, 2199.55, 92.24, 2194.68, 93.77, 2189.96, + 95.89, 2185.47, 98.54, 2181.28, 101.71, 2177.46, 105.32, 2174.06, + 109.33, 2171.15, 113.68, 2168.76, 118.29, 2166.93, 123.1, 2165.7, + 128.02, 2165.08, 132.98, 2165.08, 137.9, 2165.7, 142.71, 2166.93, + 147.32, 2168.76, 151.67, 2171.15, 155.68, 2174.06, 159.29, 2177.46, + 162.46, 2181.28, 165.11, 2185.47, 167.23, 2189.96, 168.76, 2194.68, + 169.69, 2199.55 + ] + ], + "area": 4893.0, + "bbox": [91.0, 2165.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 6, + "image_id": 1, + "category_id": 3, + "segmentation": [[3031.5, 2095.0, 2987.0, 2173.0, 3076.0, 2173.0]], + "area": 3477.0, + "bbox": [2987.0, 2095.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 7, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1003.0, 1239.0, 1078.0, 1239.0, 1078.0, 1314.0, 1003.0, 1314.0, + 1003.0, 1239.0 + ] + ], + "area": 5625.0, + "bbox": [1003.0, 1239.0, 75.0, 75.0], + "iscrowd": 0 + }, + { + "id": 8, + "image_id": 1, + "category_id": 3, + "segmentation": [[777.5, 550.0, 736.0, 623.0, 819.0, 623.0]], + "area": 3040.0, + "bbox": [736.0, 550.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 9, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 484.0, 1120.5, 483.69, 1125.45, 482.76, 1130.32, 481.23, 1135.04, + 479.11, 1139.53, 476.46, 1143.72, 473.29, 1147.54, 469.68, 1150.94, + 465.67, 1153.85, 461.32, 1156.24, 456.71, 1158.07, 451.9, 1159.3, + 446.98, 1159.92, 442.02, 1159.92, 437.1, 1159.3, 432.29, 1158.07, + 427.68, 1156.24, 423.33, 1153.85, 419.32, 1150.94, 415.71, 1147.54, + 412.54, 1143.72, 409.89, 1139.53, 407.77, 1135.04, 406.24, 1130.32, + 405.31, 1125.45, 405.0, 1120.5, 405.31, 1115.55, 406.24, 1110.68, + 407.77, 1105.96, 409.89, 1101.47, 412.54, 1097.28, 415.71, 1093.46, + 419.32, 1090.06, 423.33, 1087.15, 427.68, 1084.76, 432.29, 1082.93, + 437.1, 1081.7, 442.02, 1081.08, 446.98, 1081.08, 451.9, 1081.7, + 456.71, 1082.93, 461.32, 1084.76, 465.67, 1087.15, 469.68, 1090.06, + 473.29, 1093.46, 476.46, 1097.28, 479.11, 1101.47, 481.23, 1105.96, + 482.76, 1110.68, 483.69, 1115.55 + ] + ], + "area": 4893.0, + "bbox": [405.0, 1081.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 10, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 599.5, 638.0, 605.33, 637.63, 611.06, 636.54, 616.62, 634.73, 621.9, + 632.25, 626.83, 629.12, 631.33, 625.4, 635.33, 621.14, 638.76, 616.42, + 641.57, 611.3, 643.72, 605.87, 645.18, 600.21, 645.91, 594.42, 645.91, + 588.58, 645.18, 582.79, 643.72, 577.13, 641.57, 571.7, 638.76, 566.58, + 635.33, 561.86, 631.33, 557.6, 626.83, 553.88, 621.9, 550.75, 616.62, + 548.27, 611.06, 546.46, 605.33, 545.37, 599.5, 545.0, 593.67, 545.37, + 587.94, 546.46, 582.38, 548.27, 577.1, 550.75, 572.17, 553.88, 567.67, + 557.6, 563.67, 561.86, 560.24, 566.58, 557.43, 571.7, 555.28, 577.13, + 553.82, 582.79, 553.09, 588.58, 553.09, 594.42, 553.82, 600.21, + 555.28, 605.87, 557.43, 611.3, 560.24, 616.42, 563.67, 621.14, 567.67, + 625.4, 572.17, 629.12, 577.1, 632.25, 582.38, 634.73, 587.94, 636.54, + 593.67, 637.63 + ] + ], + "area": 6781.0, + "bbox": [553.09, 545.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 11, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1910.0, 285.0, 1971.0, 285.0, 1971.0, 352.0, 1910.0, 352.0, 1910.0, + 285.0 + ] + ], + "area": 4087.0, + "bbox": [1910.0, 285.0, 61.0, 67.0], + "iscrowd": 0 + }, + { + "id": 12, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2526.5, 1338.0, 2532.58, 1337.62, 2538.56, 1336.48, 2544.35, 1334.59, + 2549.87, 1332.0, 2555.01, 1328.74, 2559.7, 1324.85, 2563.87, 1320.42, + 2567.45, 1315.49, 2570.38, 1310.15, 2572.63, 1304.49, 2574.14, + 1298.59, 2574.9, 1292.55, 2574.9, 1286.45, 2574.14, 1280.41, 2572.63, + 1274.51, 2570.38, 1268.85, 2567.45, 1263.51, 2563.87, 1258.58, 2559.7, + 1254.15, 2555.01, 1250.26, 2549.87, 1247.0, 2544.35, 1244.41, 2538.56, + 1242.52, 2532.58, 1241.38, 2526.5, 1241.0, 2520.42, 1241.38, 2514.44, + 1242.52, 2508.65, 1244.41, 2503.13, 1247.0, 2497.99, 1250.26, 2493.3, + 1254.15, 2489.13, 1258.58, 2485.55, 1263.51, 2482.62, 1268.85, + 2480.37, 1274.51, 2478.86, 1280.41, 2478.1, 1286.45, 2478.1, 1292.55, + 2478.86, 1298.59, 2480.37, 1304.49, 2482.62, 1310.15, 2485.55, + 1315.49, 2489.13, 1320.42, 2493.3, 1324.85, 2497.99, 1328.74, 2503.13, + 1332.0, 2508.65, 1334.59, 2514.44, 1336.48, 2520.42, 1337.62 + ] + ], + "area": 7380.0, + "bbox": [2478.1, 1241.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 13, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2643.0, 2793.0, 2716.0, 2793.0, 2716.0, 2856.0, 2643.0, 2856.0, + 2643.0, 2793.0 + ] + ], + "area": 4599.0, + "bbox": [2643.0, 2793.0, 73.0, 63.0], + "iscrowd": 0 + }, + { + "id": 14, + "image_id": 1, + "category_id": 3, + "segmentation": [[873.5, 1347.0, 824.0, 1433.0, 923.0, 1433.0]], + "area": 4268.0, + "bbox": [824.0, 1347.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 15, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2024.0, 2346.5, 2023.8, 2349.7, 2023.2, 2352.84, 2022.21, 2355.89, + 2020.85, 2358.78, 2019.13, 2361.49, 2017.09, 2363.96, 2014.75, + 2366.15, 2012.16, 2368.03, 2009.36, 2369.57, 2006.38, 2370.75, + 2003.28, 2371.55, 2000.1, 2371.95, 1996.9, 2371.95, 1993.72, 2371.55, + 1990.62, 2370.75, 1987.64, 2369.57, 1984.84, 2368.03, 1982.25, + 2366.15, 1979.91, 2363.96, 1977.87, 2361.49, 1976.15, 2358.78, + 1974.79, 2355.89, 1973.8, 2352.84, 1973.2, 2349.7, 1973.0, 2346.5, + 1973.2, 2343.3, 1973.8, 2340.16, 1974.79, 2337.11, 1976.15, 2334.22, + 1977.87, 2331.51, 1979.91, 2329.04, 1982.25, 2326.85, 1984.84, + 2324.97, 1987.64, 2323.43, 1990.62, 2322.25, 1993.72, 2321.45, 1996.9, + 2321.05, 2000.1, 2321.05, 2003.28, 2321.45, 2006.38, 2322.25, 2009.36, + 2323.43, 2012.16, 2324.97, 2014.75, 2326.85, 2017.09, 2329.04, + 2019.13, 2331.51, 2020.85, 2334.22, 2022.21, 2337.11, 2023.2, 2340.16, + 2023.8, 2343.3 + ] + ], + "area": 2037.0, + "bbox": [1973.0, 2321.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 16, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2968.0, 1284.0, 3055.0, 1284.0, 3055.0, 1350.0, 2968.0, 1350.0, + 2968.0, 1284.0 + ] + ], + "area": 5742.0, + "bbox": [2968.0, 1284.0, 87.0, 66.0], + "iscrowd": 0 + }, + { + "id": 17, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 236.0, 2949.0, 303.0, 2949.0, 303.0, 3038.0, 236.0, 3038.0, 236.0, + 2949.0 + ] + ], + "area": 5963.0, + "bbox": [236.0, 2949.0, 67.0, 89.0], + "iscrowd": 0 + }, + { + "id": 18, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 693.0, 1042.0, 784.0, 1042.0, 784.0, 1123.0, 693.0, 1123.0, 693.0, + 1042.0 + ] + ], + "area": 7371.0, + "bbox": [693.0, 1042.0, 91.0, 81.0], + "iscrowd": 0 + }, + { + "id": 19, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 933.0, 2508.5, 932.81, 2511.57, 932.23, 2514.59, 931.28, 2517.52, + 929.97, 2520.3, 928.32, 2522.9, 926.36, 2525.27, 924.12, 2527.38, + 921.63, 2529.19, 918.93, 2530.67, 916.07, 2531.8, 913.09, 2532.57, + 910.04, 2532.95, 906.96, 2532.95, 903.91, 2532.57, 900.93, 2531.8, + 898.07, 2530.67, 895.37, 2529.19, 892.88, 2527.38, 890.64, 2525.27, + 888.68, 2522.9, 887.03, 2520.3, 885.72, 2517.52, 884.77, 2514.59, + 884.19, 2511.57, 884.0, 2508.5, 884.19, 2505.43, 884.77, 2502.41, + 885.72, 2499.48, 887.03, 2496.7, 888.68, 2494.1, 890.64, 2491.73, + 892.88, 2489.62, 895.37, 2487.81, 898.07, 2486.33, 900.93, 2485.2, + 903.91, 2484.43, 906.96, 2484.05, 910.04, 2484.05, 913.09, 2484.43, + 916.07, 2485.2, 918.93, 2486.33, 921.63, 2487.81, 924.12, 2489.62, + 926.36, 2491.73, 928.32, 2494.1, 929.97, 2496.7, 931.28, 2499.48, + 932.23, 2502.41, 932.81, 2505.43 + ] + ], + "area": 1885.0, + "bbox": [884.0, 2484.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 20, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 1619.0, 957.5, 1618.68, 962.58, 1617.73, 967.57, 1616.16, 972.41, + 1613.99, 977.01, 1611.27, 981.31, 1608.02, 985.22, 1604.32, 988.71, + 1600.2, 991.7, 1595.74, 994.15, 1591.02, 996.02, 1586.09, 997.28, + 1581.04, 997.92, 1575.96, 997.92, 1570.91, 997.28, 1565.98, 996.02, + 1561.26, 994.15, 1556.8, 991.7, 1552.68, 988.71, 1548.98, 985.22, + 1545.73, 981.31, 1543.01, 977.01, 1540.84, 972.41, 1539.27, 967.57, + 1538.32, 962.58, 1538.0, 957.5, 1538.32, 952.42, 1539.27, 947.43, + 1540.84, 942.59, 1543.01, 937.99, 1545.73, 933.69, 1548.98, 929.78, + 1552.68, 926.29, 1556.8, 923.3, 1561.26, 920.85, 1565.98, 918.98, + 1570.91, 917.72, 1575.96, 917.08, 1581.04, 917.08, 1586.09, 917.72, + 1591.02, 918.98, 1595.74, 920.85, 1600.2, 923.3, 1604.32, 926.29, + 1608.02, 929.78, 1611.27, 933.69, 1613.99, 937.99, 1616.16, 942.59, + 1617.73, 947.43, 1618.68, 952.42 + ] + ], + "area": 5149.0, + "bbox": [1538.0, 917.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 21, + "image_id": 1, + "category_id": 3, + "segmentation": [[1811.0, 36.0, 1782.0, 87.0, 1840.0, 87.0]], + "area": 1484.0, + "bbox": [1782.0, 36.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 22, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2587.0, 961.0, 2674.0, 961.0, 2674.0, 1052.0, 2587.0, 1052.0, 2587.0, + 961.0 + ] + ], + "area": 7917.0, + "bbox": [2587.0, 961.0, 87.0, 91.0], + "iscrowd": 0 + }, + { + "id": 23, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2067.0, 655.5, 2066.75, 659.45, 2066.01, 663.33, 2064.79, 667.1, + 2063.1, 670.68, 2060.98, 674.02, 2058.46, 677.06, 2055.58, 679.77, + 2052.38, 682.1, 2048.91, 684.0, 2045.23, 685.46, 2041.4, 686.44, + 2037.48, 686.94, 2033.52, 686.94, 2029.6, 686.44, 2025.77, 685.46, + 2022.09, 684.0, 2018.62, 682.1, 2015.42, 679.77, 2012.54, 677.06, + 2010.02, 674.02, 2007.9, 670.68, 2006.21, 667.1, 2004.99, 663.33, + 2004.25, 659.45, 2004.0, 655.5, 2004.25, 651.55, 2004.99, 647.67, + 2006.21, 643.9, 2007.9, 640.32, 2010.02, 636.98, 2012.54, 633.94, + 2015.42, 631.23, 2018.62, 628.9, 2022.09, 627.0, 2025.77, 625.54, + 2029.6, 624.56, 2033.52, 624.06, 2037.48, 624.06, 2041.4, 624.56, + 2045.23, 625.54, 2048.91, 627.0, 2052.38, 628.9, 2055.58, 631.23, + 2058.46, 633.94, 2060.98, 636.98, 2063.1, 640.32, 2064.79, 643.9, + 2066.01, 647.67, 2066.75, 651.55 + ] + ], + "area": 3122.0, + "bbox": [2004.0, 624.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 24, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1305.0, 3249.0, 1396.0, 3249.0, 1396.0, 3340.0, 1305.0, 3340.0, + 1305.0, 3249.0 + ] + ], + "area": 8281.0, + "bbox": [1305.0, 3249.0, 91.0, 91.0], + "iscrowd": 0 + }, + { + "id": 25, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 1612.0, 2984.5, 1611.64, 2990.2, 1610.57, 2995.82, 1608.8, 3001.25, + 1606.37, 3006.42, 1603.31, 3011.24, 1599.67, 3015.65, 1595.5, 3019.56, + 1590.88, 3022.92, 1585.87, 3025.67, 1580.56, 3027.77, 1575.03, + 3029.19, 1569.36, 3029.91, 1563.64, 3029.91, 1557.97, 3029.19, + 1552.44, 3027.77, 1547.13, 3025.67, 1542.12, 3022.92, 1537.5, 3019.56, + 1533.33, 3015.65, 1529.69, 3011.24, 1526.63, 3006.42, 1524.2, 3001.25, + 1522.43, 2995.82, 1521.36, 2990.2, 1521.0, 2984.5, 1521.36, 2978.8, + 1522.43, 2973.18, 1524.2, 2967.75, 1526.63, 2962.58, 1529.69, 2957.76, + 1533.33, 2953.35, 1537.5, 2949.44, 1542.12, 2946.08, 1547.13, 2943.33, + 1552.44, 2941.23, 1557.97, 2939.81, 1563.64, 2939.09, 1569.36, + 2939.09, 1575.03, 2939.81, 1580.56, 2941.23, 1585.87, 2943.33, + 1590.88, 2946.08, 1595.5, 2949.44, 1599.67, 2953.35, 1603.31, 2957.76, + 1606.37, 2962.58, 1608.8, 2967.75, 1610.57, 2973.18, 1611.64, 2978.8 + ] + ], + "area": 6498.0, + "bbox": [1521.0, 2939.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 26, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 717.0, 3227.0, 769.0, 3227.0, 769.0, 3317.0, 717.0, 3317.0, 717.0, + 3227.0 + ] + ], + "area": 4680.0, + "bbox": [717.0, 3227.0, 52.0, 90.0], + "iscrowd": 0 + }, + { + "id": 27, + "image_id": 1, + "category_id": 3, + "segmentation": [[1615.5, 1151.0, 1571.0, 1229.0, 1660.0, 1229.0]], + "area": 3477.0, + "bbox": [1571.0, 1151.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 28, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1186.0, 2360.0, 1275.0, 2360.0, 1275.0, 2443.0, 1186.0, 2443.0, + 1186.0, 2360.0 + ] + ], + "area": 7387.0, + "bbox": [1186.0, 2360.0, 89.0, 83.0], + "iscrowd": 0 + }, + { + "id": 29, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [984.0, 131.0, 1059.0, 131.0, 1059.0, 209.0, 984.0, 209.0, 984.0, 131.0] + ], + "area": 5850.0, + "bbox": [984.0, 131.0, 75.0, 78.0], + "iscrowd": 0 + }, + { + "id": 30, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2135.0, 1268.5, 2134.66, 1273.83, 2133.66, 1279.07, 2132.02, 1284.15, + 2129.74, 1288.97, 2126.88, 1293.48, 2123.48, 1297.59, 2119.59, + 1301.25, 2115.27, 1304.38, 2110.6, 1306.96, 2105.63, 1308.92, 2100.46, + 1310.25, 2095.17, 1310.92, 2089.83, 1310.92, 2084.54, 1310.25, + 2079.37, 1308.92, 2074.4, 1306.96, 2069.73, 1304.38, 2065.41, 1301.25, + 2061.52, 1297.59, 2058.12, 1293.48, 2055.26, 1288.97, 2052.98, + 1284.15, 2051.34, 1279.07, 2050.34, 1273.83, 2050.0, 1268.5, 2050.34, + 1263.17, 2051.34, 1257.93, 2052.98, 1252.85, 2055.26, 1248.03, + 2058.12, 1243.52, 2061.52, 1239.41, 2065.41, 1235.75, 2069.73, + 1232.62, 2074.4, 1230.04, 2079.37, 1228.08, 2084.54, 1226.75, 2089.83, + 1226.08, 2095.17, 1226.08, 2100.46, 1226.75, 2105.63, 1228.08, 2110.6, + 1230.04, 2115.27, 1232.62, 2119.59, 1235.75, 2123.48, 1239.41, + 2126.88, 1243.52, 2129.74, 1248.03, 2132.02, 1252.85, 2133.66, + 1257.93, 2134.66, 1263.17 + ] + ], + "area": 5651.0, + "bbox": [2050.0, 1226.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 31, + "image_id": 1, + "category_id": 3, + "segmentation": [[3413.0, 3197.0, 3367.0, 3277.0, 3459.0, 3277.0]], + "area": 3688.0, + "bbox": [3367.0, 3197.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 32, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [759.0, 97.0, 824.0, 97.0, 824.0, 190.0, 759.0, 190.0, 759.0, 97.0] + ], + "area": 6045.0, + "bbox": [759.0, 97.0, 65.0, 93.0], + "iscrowd": 0 + }, + { + "id": 33, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 457.0, 2415.0, 525.0, 2415.0, 525.0, 2474.0, 457.0, 2474.0, 457.0, + 2415.0 + ] + ], + "area": 4012.0, + "bbox": [457.0, 2415.0, 68.0, 59.0], + "iscrowd": 0 + }, + { + "id": 34, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3305.0, 2322.0, 3384.0, 2322.0, 3384.0, 2389.0, 3305.0, 2389.0, + 3305.0, 2322.0 + ] + ], + "area": 5293.0, + "bbox": [3305.0, 2322.0, 79.0, 67.0], + "iscrowd": 0 + }, + { + "id": 35, + "image_id": 1, + "category_id": 3, + "segmentation": [[3152.5, 2899.0, 3111.0, 2972.0, 3194.0, 2972.0]], + "area": 3040.0, + "bbox": [3111.0, 2899.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 36, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2739.0, 2645.0, 2790.0, 2645.0, 2790.0, 2726.0, 2739.0, 2726.0, + 2739.0, 2645.0 + ] + ], + "area": 4131.0, + "bbox": [2739.0, 2645.0, 51.0, 81.0], + "iscrowd": 0 + }, + { + "id": 37, + "image_id": 1, + "category_id": 3, + "segmentation": [[842.0, 2576.0, 799.0, 2651.0, 885.0, 2651.0]], + "area": 3234.0, + "bbox": [799.0, 2576.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 38, + "image_id": 1, + "category_id": 3, + "segmentation": [[1969.0, 3253.0, 1940.0, 3304.0, 1998.0, 3304.0]], + "area": 1484.0, + "bbox": [1940.0, 3253.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 39, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2230.0, 3178.0, 2314.0, 3178.0, 2314.0, 3237.0, 2230.0, 3237.0, + 2230.0, 3178.0 + ] + ], + "area": 4956.0, + "bbox": [2230.0, 3178.0, 84.0, 59.0], + "iscrowd": 0 + }, + { + "id": 40, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2280.0, 2410.0, 2347.0, 2410.0, 2347.0, 2507.0, 2280.0, 2507.0, + 2280.0, 2410.0 + ] + ], + "area": 6499.0, + "bbox": [2280.0, 2410.0, 67.0, 97.0], + "iscrowd": 0 + }, + { + "id": 41, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2116.0, 2074.5, 2115.64, 2080.2, 2114.57, 2085.82, 2112.8, 2091.25, + 2110.37, 2096.42, 2107.31, 2101.24, 2103.67, 2105.65, 2099.5, 2109.56, + 2094.88, 2112.92, 2089.87, 2115.67, 2084.56, 2117.77, 2079.03, + 2119.19, 2073.36, 2119.91, 2067.64, 2119.91, 2061.97, 2119.19, + 2056.44, 2117.77, 2051.13, 2115.67, 2046.12, 2112.92, 2041.5, 2109.56, + 2037.33, 2105.65, 2033.69, 2101.24, 2030.63, 2096.42, 2028.2, 2091.25, + 2026.43, 2085.82, 2025.36, 2080.2, 2025.0, 2074.5, 2025.36, 2068.8, + 2026.43, 2063.18, 2028.2, 2057.75, 2030.63, 2052.58, 2033.69, 2047.76, + 2037.33, 2043.35, 2041.5, 2039.44, 2046.12, 2036.08, 2051.13, 2033.33, + 2056.44, 2031.23, 2061.97, 2029.81, 2067.64, 2029.09, 2073.36, + 2029.09, 2079.03, 2029.81, 2084.56, 2031.23, 2089.87, 2033.33, + 2094.88, 2036.08, 2099.5, 2039.44, 2103.67, 2043.35, 2107.31, 2047.76, + 2110.37, 2052.58, 2112.8, 2057.75, 2114.57, 2063.18, 2115.64, 2068.8 + ] + ], + "area": 6498.0, + "bbox": [2025.0, 2029.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 42, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1468.0, 1851.0, 1544.0, 1851.0, 1544.0, 1907.0, 1468.0, 1907.0, + 1468.0, 1851.0 + ] + ], + "area": 4256.0, + "bbox": [1468.0, 1851.0, 76.0, 56.0], + "iscrowd": 0 + }, + { + "id": 43, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1450.0, 2606.0, 1527.0, 2606.0, 1527.0, 2699.0, 1450.0, 2699.0, + 1450.0, 2606.0 + ] + ], + "area": 7161.0, + "bbox": [1450.0, 2606.0, 77.0, 93.0], + "iscrowd": 0 + }, + { + "id": 44, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 333.0, 2134.0, 422.0, 2134.0, 422.0, 2218.0, 333.0, 2218.0, 333.0, + 2134.0 + ] + ], + "area": 7476.0, + "bbox": [333.0, 2134.0, 89.0, 84.0], + "iscrowd": 0 + }, + { + "id": 45, + "image_id": 1, + "category_id": 3, + "segmentation": [[2301.0, 4.0, 2276.0, 48.0, 2326.0, 48.0]], + "area": 1105.0, + "bbox": [2276.0, 4.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 46, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 103.0, 1695.0, 190.0, 1695.0, 190.0, 1764.0, 103.0, 1764.0, 103.0, + 1695.0 + ] + ], + "area": 6003.0, + "bbox": [103.0, 1695.0, 87.0, 69.0], + "iscrowd": 0 + }, + { + "id": 47, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1546.0, 2164.0, 1600.0, 2164.0, 1600.0, 2240.0, 1546.0, 2240.0, + 1546.0, 2164.0 + ] + ], + "area": 4104.0, + "bbox": [1546.0, 2164.0, 54.0, 76.0], + "iscrowd": 0 + }, + { + "id": 48, + "image_id": 1, + "category_id": 3, + "segmentation": [[2275.0, 2921.0, 2250.0, 2965.0, 2300.0, 2965.0]], + "area": 1105.0, + "bbox": [2250.0, 2921.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 49, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1667.0, 823.0, 1736.0, 823.0, 1736.0, 901.0, 1667.0, 901.0, 1667.0, + 823.0 + ] + ], + "area": 5382.0, + "bbox": [1667.0, 823.0, 69.0, 78.0], + "iscrowd": 0 + }, + { + "id": 50, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3281.0, 666.0, 3378.0, 666.0, 3378.0, 727.0, 3281.0, 727.0, 3281.0, + 666.0 + ] + ], + "area": 5917.0, + "bbox": [3281.0, 666.0, 97.0, 61.0], + "iscrowd": 0 + }, + { + "id": 51, + "image_id": 1, + "category_id": 3, + "segmentation": [[2481.5, 984.0, 2456.0, 1029.0, 2507.0, 1029.0]], + "area": 1154.0, + "bbox": [2456.0, 984.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 52, + "image_id": 1, + "category_id": 3, + "segmentation": [[867.0, 1920.0, 833.0, 1980.0, 901.0, 1980.0]], + "area": 2048.0, + "bbox": [833.0, 1920.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 53, + "image_id": 1, + "category_id": 3, + "segmentation": [[1079.5, 750.0, 1042.0, 816.0, 1117.0, 816.0]], + "area": 2485.0, + "bbox": [1042.0, 750.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 54, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 3431.5, 677.0, 3435.82, 676.73, 3440.08, 675.92, 3444.2, 674.58, + 3448.12, 672.73, 3451.78, 670.41, 3455.12, 667.65, 3458.08, 664.49, + 3460.63, 660.99, 3462.72, 657.19, 3464.31, 653.16, 3465.39, 648.96, + 3465.93, 644.67, 3465.93, 640.33, 3465.39, 636.04, 3464.31, 631.84, + 3462.72, 627.81, 3460.63, 624.01, 3458.08, 620.51, 3455.12, 617.35, + 3451.78, 614.59, 3448.12, 612.27, 3444.2, 610.42, 3440.08, 609.08, + 3435.82, 608.27, 3431.5, 608.0, 3427.18, 608.27, 3422.92, 609.08, + 3418.8, 610.42, 3414.88, 612.27, 3411.22, 614.59, 3407.88, 617.35, + 3404.92, 620.51, 3402.37, 624.01, 3400.28, 627.81, 3398.69, 631.84, + 3397.61, 636.04, 3397.07, 640.33, 3397.07, 644.67, 3397.61, 648.96, + 3398.69, 653.16, 3400.28, 657.19, 3402.37, 660.99, 3404.92, 664.49, + 3407.88, 667.65, 3411.22, 670.41, 3414.88, 672.73, 3418.8, 674.58, + 3422.92, 675.92, 3427.18, 676.73 + ] + ], + "area": 3743.0, + "bbox": [3397.07, 608.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 55, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2368.0, 2157.0, 2425.0, 2157.0, 2425.0, 2227.0, 2368.0, 2227.0, + 2368.0, 2157.0 + ] + ], + "area": 3990.0, + "bbox": [2368.0, 2157.0, 57.0, 70.0], + "iscrowd": 0 + }, + { + "id": 56, + "image_id": 1, + "category_id": 3, + "segmentation": [[2047.0, 1564.0, 2017.0, 1617.0, 2077.0, 1617.0]], + "area": 1596.0, + "bbox": [2017.0, 1564.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 57, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 626.0, 1251.0, 693.0, 1251.0, 693.0, 1314.0, 626.0, 1314.0, 626.0, + 1251.0 + ] + ], + "area": 4221.0, + "bbox": [626.0, 1251.0, 67.0, 63.0], + "iscrowd": 0 + }, + { + "id": 58, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2879.0, 472.0, 2942.0, 472.0, 2942.0, 551.0, 2879.0, 551.0, 2879.0, + 472.0 + ] + ], + "area": 4977.0, + "bbox": [2879.0, 472.0, 63.0, 79.0], + "iscrowd": 0 + }, + { + "id": 59, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3347.0, 2715.0, 3434.0, 2715.0, 3434.0, 2794.0, 3347.0, 2794.0, + 3347.0, 2715.0 + ] + ], + "area": 6873.0, + "bbox": [3347.0, 2715.0, 87.0, 79.0], + "iscrowd": 0 + }, + { + "id": 60, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1737.0, 3035.0, 1810.0, 3035.0, 1810.0, 3122.0, 1737.0, 3122.0, + 1737.0, 3035.0 + ] + ], + "area": 6351.0, + "bbox": [1737.0, 3035.0, 73.0, 87.0], + "iscrowd": 0 + }, + { + "id": 61, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3162.0, 621.0, 3259.0, 621.0, 3259.0, 680.0, 3162.0, 680.0, 3162.0, + 621.0 + ] + ], + "area": 5723.0, + "bbox": [3162.0, 621.0, 97.0, 59.0], + "iscrowd": 0 + }, + { + "id": 62, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 516.0, 3306.0, 571.0, 3306.0, 571.0, 3356.0, 516.0, 3356.0, 516.0, + 3306.0 + ] + ], + "area": 2750.0, + "bbox": [516.0, 3306.0, 55.0, 50.0], + "iscrowd": 0 + }, + { + "id": 63, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 204.5, 2181.0, 208.82, 2180.73, 213.08, 2179.92, 217.2, 2178.58, + 221.12, 2176.73, 224.78, 2174.41, 228.12, 2171.65, 231.08, 2168.49, + 233.63, 2164.99, 235.72, 2161.19, 237.31, 2157.16, 238.39, 2152.96, + 238.93, 2148.67, 238.93, 2144.33, 238.39, 2140.04, 237.31, 2135.84, + 235.72, 2131.81, 233.63, 2128.01, 231.08, 2124.51, 228.12, 2121.35, + 224.78, 2118.59, 221.12, 2116.27, 217.2, 2114.42, 213.08, 2113.08, + 208.82, 2112.27, 204.5, 2112.0, 200.18, 2112.27, 195.92, 2113.08, + 191.8, 2114.42, 187.88, 2116.27, 184.22, 2118.59, 180.88, 2121.35, + 177.92, 2124.51, 175.37, 2128.01, 173.28, 2131.81, 171.69, 2135.84, + 170.61, 2140.04, 170.07, 2144.33, 170.07, 2148.67, 170.61, 2152.96, + 171.69, 2157.16, 173.28, 2161.19, 175.37, 2164.99, 177.92, 2168.49, + 180.88, 2171.65, 184.22, 2174.41, 187.88, 2176.73, 191.8, 2178.58, + 195.92, 2179.92, 200.18, 2180.73 + ] + ], + "area": 3743.0, + "bbox": [170.07, 2112.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 64, + "image_id": 1, + "category_id": 3, + "segmentation": [[3387.0, 750.0, 3351.0, 813.0, 3423.0, 813.0]], + "area": 2268.0, + "bbox": [3351.0, 750.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 65, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [128.0, 797.0, 197.0, 797.0, 197.0, 848.0, 128.0, 848.0, 128.0, 797.0] + ], + "area": 3519.0, + "bbox": [128.0, 797.0, 69.0, 51.0], + "iscrowd": 0 + }, + { + "id": 66, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 1210.0, 639.5, 1209.63, 645.33, 1208.54, 651.06, 1206.73, 656.62, + 1204.25, 661.9, 1201.12, 666.83, 1197.4, 671.33, 1193.14, 675.33, + 1188.42, 678.76, 1183.3, 681.57, 1177.87, 683.72, 1172.21, 685.18, + 1166.42, 685.91, 1160.58, 685.91, 1154.79, 685.18, 1149.13, 683.72, + 1143.7, 681.57, 1138.58, 678.76, 1133.86, 675.33, 1129.6, 671.33, + 1125.88, 666.83, 1122.75, 661.9, 1120.27, 656.62, 1118.46, 651.06, + 1117.37, 645.33, 1117.0, 639.5, 1117.37, 633.67, 1118.46, 627.94, + 1120.27, 622.38, 1122.75, 617.1, 1125.88, 612.17, 1129.6, 607.67, + 1133.86, 603.67, 1138.58, 600.24, 1143.7, 597.43, 1149.13, 595.28, + 1154.79, 593.82, 1160.58, 593.09, 1166.42, 593.09, 1172.21, 593.82, + 1177.87, 595.28, 1183.3, 597.43, 1188.42, 600.24, 1193.14, 603.67, + 1197.4, 607.67, 1201.12, 612.17, 1204.25, 617.1, 1206.73, 622.38, + 1208.54, 627.94, 1209.63, 633.67 + ] + ], + "area": 6782.0, + "bbox": [1117.0, 593.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 67, + "image_id": 1, + "category_id": 3, + "segmentation": [[2673.5, 2483.0, 2633.0, 2554.0, 2714.0, 2554.0]], + "area": 2881.0, + "bbox": [2633.0, 2483.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 68, + "image_id": 1, + "category_id": 3, + "segmentation": [[678.0, 1589.0, 639.0, 1657.0, 717.0, 1657.0]], + "area": 2660.0, + "bbox": [639.0, 1589.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 69, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 165.5, 3195.0, 171.08, 3194.65, 176.57, 3193.6, 181.88, 3191.88, + 186.94, 3189.5, 191.66, 3186.5, 195.96, 3182.94, 199.79, 3178.87, + 203.07, 3174.34, 205.76, 3169.45, 207.82, 3164.25, 209.21, 3158.84, + 209.91, 3153.29, 209.91, 3147.71, 209.21, 3142.16, 207.82, 3136.75, + 205.76, 3131.55, 203.07, 3126.66, 199.79, 3122.13, 195.96, 3118.06, + 191.66, 3114.5, 186.94, 3111.5, 181.88, 3109.12, 176.57, 3107.4, + 171.08, 3106.35, 165.5, 3106.0, 159.92, 3106.35, 154.43, 3107.4, + 149.12, 3109.12, 144.06, 3111.5, 139.34, 3114.5, 135.04, 3118.06, + 131.21, 3122.13, 127.93, 3126.66, 125.24, 3131.55, 123.18, 3136.75, + 121.79, 3142.16, 121.09, 3147.71, 121.09, 3153.29, 121.79, 3158.84, + 123.18, 3164.25, 125.24, 3169.45, 127.93, 3174.34, 131.21, 3178.87, + 135.04, 3182.94, 139.34, 3186.5, 144.06, 3189.5, 149.12, 3191.88, + 154.43, 3193.6, 159.92, 3194.65 + ] + ], + "area": 6209.0, + "bbox": [121.09, 3106.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 70, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2589.5, 1461.0, 2593.2, 1460.77, 2596.84, 1460.07, 2600.36, 1458.93, + 2603.71, 1457.35, 2606.84, 1455.37, 2609.69, 1453.0, 2612.23, 1450.3, + 2614.41, 1447.31, 2616.19, 1444.06, 2617.56, 1440.62, 2618.48, + 1437.03, 2618.94, 1433.35, 2618.94, 1429.65, 2618.48, 1425.97, + 2617.56, 1422.38, 2616.19, 1418.94, 2614.41, 1415.69, 2612.23, 1412.7, + 2609.69, 1410.0, 2606.84, 1407.63, 2603.71, 1405.65, 2600.36, 1404.07, + 2596.84, 1402.93, 2593.2, 1402.23, 2589.5, 1402.0, 2585.8, 1402.23, + 2582.16, 1402.93, 2578.64, 1404.07, 2575.29, 1405.65, 2572.16, + 1407.63, 2569.31, 1410.0, 2566.77, 1412.7, 2564.59, 1415.69, 2562.81, + 1418.94, 2561.44, 1422.38, 2560.52, 1425.97, 2560.06, 1429.65, + 2560.06, 1433.35, 2560.52, 1437.03, 2561.44, 1440.62, 2562.81, + 1444.06, 2564.59, 1447.31, 2566.77, 1450.3, 2569.31, 1453.0, 2572.16, + 1455.37, 2575.29, 1457.35, 2578.64, 1458.93, 2582.16, 1460.07, 2585.8, + 1460.77 + ] + ], + "area": 2732.0, + "bbox": [2560.06, 1402.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 71, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2205.0, 2878.5, 2204.73, 2882.82, 2203.92, 2887.08, 2202.58, 2891.2, + 2200.73, 2895.12, 2198.41, 2898.78, 2195.65, 2902.12, 2192.49, + 2905.08, 2188.99, 2907.63, 2185.19, 2909.72, 2181.16, 2911.31, + 2176.96, 2912.39, 2172.67, 2912.93, 2168.33, 2912.93, 2164.04, + 2912.39, 2159.84, 2911.31, 2155.81, 2909.72, 2152.01, 2907.63, + 2148.51, 2905.08, 2145.35, 2902.12, 2142.59, 2898.78, 2140.27, + 2895.12, 2138.42, 2891.2, 2137.08, 2887.08, 2136.27, 2882.82, 2136.0, + 2878.5, 2136.27, 2874.18, 2137.08, 2869.92, 2138.42, 2865.8, 2140.27, + 2861.88, 2142.59, 2858.22, 2145.35, 2854.88, 2148.51, 2851.92, + 2152.01, 2849.37, 2155.81, 2847.28, 2159.84, 2845.69, 2164.04, + 2844.61, 2168.33, 2844.07, 2172.67, 2844.07, 2176.96, 2844.61, + 2181.16, 2845.69, 2185.19, 2847.28, 2188.99, 2849.37, 2192.49, + 2851.92, 2195.65, 2854.88, 2198.41, 2858.22, 2200.73, 2861.88, + 2202.58, 2865.8, 2203.92, 2869.92, 2204.73, 2874.18 + ] + ], + "area": 3743.0, + "bbox": [2136.0, 2844.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 72, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 985.0, 1388.5, 984.7, 1393.33, 983.79, 1398.07, 982.3, 1402.67, + 980.24, 1407.05, 977.65, 1411.13, 974.57, 1414.86, 971.04, 1418.16, + 967.13, 1421.01, 962.89, 1423.34, 958.4, 1425.12, 953.71, 1426.32, + 948.92, 1426.92, 944.08, 1426.92, 939.29, 1426.32, 934.6, 1425.12, + 930.11, 1423.34, 925.87, 1421.01, 921.96, 1418.16, 918.43, 1414.86, + 915.35, 1411.13, 912.76, 1407.05, 910.7, 1402.67, 909.21, 1398.07, + 908.3, 1393.33, 908.0, 1388.5, 908.3, 1383.67, 909.21, 1378.93, 910.7, + 1374.33, 912.76, 1369.95, 915.35, 1365.87, 918.43, 1362.14, 921.96, + 1358.84, 925.87, 1355.99, 930.11, 1353.66, 934.6, 1351.88, 939.29, + 1350.68, 944.08, 1350.08, 948.92, 1350.08, 953.71, 1350.68, 958.4, + 1351.88, 962.89, 1353.66, 967.13, 1355.99, 971.04, 1358.84, 974.57, + 1362.14, 977.65, 1365.87, 980.24, 1369.95, 982.3, 1374.33, 983.79, + 1378.93, 984.7, 1383.67 + ] + ], + "area": 4653.0, + "bbox": [908.0, 1350.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 73, + "image_id": 1, + "category_id": 3, + "segmentation": [[2160.0, 704.0, 2128.0, 760.0, 2192.0, 760.0]], + "area": 1792.0, + "bbox": [2128.0, 704.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 74, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2922.0, 1040.0, 2986.0, 1040.0, 2986.0, 1100.0, 2922.0, 1100.0, + 2922.0, 1040.0 + ] + ], + "area": 3840.0, + "bbox": [2922.0, 1040.0, 64.0, 60.0], + "iscrowd": 0 + }, + { + "id": 75, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 287.0, 3293.0, 365.0, 3293.0, 365.0, 3363.0, 287.0, 3363.0, 287.0, + 3293.0 + ] + ], + "area": 5460.0, + "bbox": [287.0, 3293.0, 78.0, 70.0], + "iscrowd": 0 + }, + { + "id": 76, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1460.0, 2852.0, 1531.0, 2852.0, 1531.0, 2931.0, 1460.0, 2931.0, + 1460.0, 2852.0 + ] + ], + "area": 5609.0, + "bbox": [1460.0, 2852.0, 71.0, 79.0], + "iscrowd": 0 + }, + { + "id": 77, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2648.5, 1586.0, 2651.57, 1585.81, 2654.59, 1585.23, 2657.52, 1584.28, + 2660.3, 1582.97, 2662.9, 1581.32, 2665.27, 1579.36, 2667.38, 1577.12, + 2669.19, 1574.63, 2670.67, 1571.93, 2671.8, 1569.07, 2672.57, 1566.09, + 2672.95, 1563.04, 2672.95, 1559.96, 2672.57, 1556.91, 2671.8, 1553.93, + 2670.67, 1551.07, 2669.19, 1548.37, 2667.38, 1545.88, 2665.27, + 1543.64, 2662.9, 1541.68, 2660.3, 1540.03, 2657.52, 1538.72, 2654.59, + 1537.77, 2651.57, 1537.19, 2648.5, 1537.0, 2645.43, 1537.19, 2642.41, + 1537.77, 2639.48, 1538.72, 2636.7, 1540.03, 2634.1, 1541.68, 2631.73, + 1543.64, 2629.62, 1545.88, 2627.81, 1548.37, 2626.33, 1551.07, 2625.2, + 1553.93, 2624.43, 1556.91, 2624.05, 1559.96, 2624.05, 1563.04, + 2624.43, 1566.09, 2625.2, 1569.07, 2626.33, 1571.93, 2627.81, 1574.63, + 2629.62, 1577.12, 2631.73, 1579.36, 2634.1, 1581.32, 2636.7, 1582.97, + 2639.48, 1584.28, 2642.41, 1585.23, 2645.43, 1585.81 + ] + ], + "area": 1885.0, + "bbox": [2624.05, 1537.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 78, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1314.0, 1027.0, 1401.0, 1027.0, 1401.0, 1120.0, 1314.0, 1120.0, + 1314.0, 1027.0 + ] + ], + "area": 8091.0, + "bbox": [1314.0, 1027.0, 87.0, 93.0], + "iscrowd": 0 + }, + { + "id": 79, + "image_id": 1, + "category_id": 3, + "segmentation": [[586.0, 1102.0, 551.0, 1163.0, 621.0, 1163.0]], + "area": 2142.0, + "bbox": [551.0, 1102.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 80, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 720.0, 2445.0, 774.0, 2445.0, 774.0, 2518.0, 720.0, 2518.0, 720.0, + 2445.0 + ] + ], + "area": 3942.0, + "bbox": [720.0, 2445.0, 54.0, 73.0], + "iscrowd": 0 + }, + { + "id": 81, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3012.0, 1394.0, 3078.0, 1394.0, 3078.0, 1493.0, 3012.0, 1493.0, + 3012.0, 1394.0 + ] + ], + "area": 6534.0, + "bbox": [3012.0, 1394.0, 66.0, 99.0], + "iscrowd": 0 + }, + { + "id": 82, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2218.0, 2280.0, 2294.0, 2280.0, 2294.0, 2342.0, 2218.0, 2342.0, + 2218.0, 2280.0 + ] + ], + "area": 4712.0, + "bbox": [2218.0, 2280.0, 76.0, 62.0], + "iscrowd": 0 + }, + { + "id": 83, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1355.0, 683.5, 1354.75, 687.45, 1354.01, 691.33, 1352.79, 695.1, + 1351.1, 698.68, 1348.98, 702.02, 1346.46, 705.06, 1343.58, 707.77, + 1340.38, 710.1, 1336.91, 712.0, 1333.23, 713.46, 1329.4, 714.44, + 1325.48, 714.94, 1321.52, 714.94, 1317.6, 714.44, 1313.77, 713.46, + 1310.09, 712.0, 1306.62, 710.1, 1303.42, 707.77, 1300.54, 705.06, + 1298.02, 702.02, 1295.9, 698.68, 1294.21, 695.1, 1292.99, 691.33, + 1292.25, 687.45, 1292.0, 683.5, 1292.25, 679.55, 1292.99, 675.67, + 1294.21, 671.9, 1295.9, 668.32, 1298.02, 664.98, 1300.54, 661.94, + 1303.42, 659.23, 1306.62, 656.9, 1310.09, 655.0, 1313.77, 653.54, + 1317.6, 652.56, 1321.52, 652.06, 1325.48, 652.06, 1329.4, 652.56, + 1333.23, 653.54, 1336.91, 655.0, 1340.38, 656.9, 1343.58, 659.23, + 1346.46, 661.94, 1348.98, 664.98, 1351.1, 668.32, 1352.79, 671.9, + 1354.01, 675.67, 1354.75, 679.55 + ] + ], + "area": 3122.0, + "bbox": [1292.0, 652.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 84, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [3171.0, 18.0, 3272.0, 18.0, 3272.0, 83.0, 3171.0, 83.0, 3171.0, 18.0] + ], + "area": 6565.0, + "bbox": [3171.0, 18.0, 101.0, 65.0], + "iscrowd": 0 + }, + { + "id": 85, + "image_id": 2, + "category_id": 3, + "segmentation": [[2493.0, 2561.0, 2453.0, 2631.0, 2533.0, 2631.0]], + "area": 2800.0, + "bbox": [2453.0, 2561.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 86, + "image_id": 2, + "category_id": 3, + "segmentation": [[1347.0, 2083.0, 1316.0, 2137.0, 1378.0, 2137.0]], + "area": 1680.0, + "bbox": [1316.0, 2083.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 87, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 724.5, 2737.0, 729.7, 2736.67, 734.82, 2735.7, 739.78, 2734.09, + 744.49, 2731.87, 748.89, 2729.07, 752.91, 2725.75, 756.48, 2721.95, + 759.54, 2717.74, 762.05, 2713.17, 763.97, 2708.32, 765.26, 2703.28, + 765.92, 2698.11, 765.92, 2692.89, 765.26, 2687.72, 763.97, 2682.68, + 762.05, 2677.83, 759.54, 2673.26, 756.48, 2669.05, 752.91, 2665.25, + 748.89, 2661.93, 744.49, 2659.13, 739.78, 2656.91, 734.82, 2655.3, + 729.7, 2654.33, 724.5, 2654.0, 719.3, 2654.33, 714.18, 2655.3, 709.22, + 2656.91, 704.51, 2659.13, 700.11, 2661.93, 696.09, 2665.25, 692.52, + 2669.05, 689.46, 2673.26, 686.95, 2677.83, 685.03, 2682.68, 683.74, + 2687.72, 683.08, 2692.89, 683.08, 2698.11, 683.74, 2703.28, 685.03, + 2708.32, 686.95, 2713.17, 689.46, 2717.74, 692.52, 2721.95, 696.09, + 2725.75, 700.11, 2729.07, 704.51, 2731.87, 709.22, 2734.09, 714.18, + 2735.7, 719.3, 2736.67 + ] + ], + "area": 5392.0, + "bbox": [683.08, 2654.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 88, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2074.0, 1303.5, 2073.66, 1308.83, 2072.66, 1314.07, 2071.02, 1319.15, + 2068.74, 1323.97, 2065.88, 1328.48, 2062.48, 1332.59, 2058.59, + 1336.25, 2054.27, 1339.38, 2049.6, 1341.96, 2044.63, 1343.92, 2039.46, + 1345.25, 2034.17, 1345.92, 2028.83, 1345.92, 2023.54, 1345.25, + 2018.37, 1343.92, 2013.4, 1341.96, 2008.73, 1339.38, 2004.41, 1336.25, + 2000.52, 1332.59, 1997.12, 1328.48, 1994.26, 1323.97, 1991.98, + 1319.15, 1990.34, 1314.07, 1989.34, 1308.83, 1989.0, 1303.5, 1989.34, + 1298.17, 1990.34, 1292.93, 1991.98, 1287.85, 1994.26, 1283.03, + 1997.12, 1278.52, 2000.52, 1274.41, 2004.41, 1270.75, 2008.73, + 1267.62, 2013.4, 1265.04, 2018.37, 1263.08, 2023.54, 1261.75, 2028.83, + 1261.08, 2034.17, 1261.08, 2039.46, 1261.75, 2044.63, 1263.08, 2049.6, + 1265.04, 2054.27, 1267.62, 2058.59, 1270.75, 2062.48, 1274.41, + 2065.88, 1278.52, 2068.74, 1283.03, 2071.02, 1287.85, 2072.66, + 1292.93, 2073.66, 1298.17 + ] + ], + "area": 5651.0, + "bbox": [1989.0, 1261.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 89, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 557.0, 1268.5, 556.68, 1273.58, 555.73, 1278.57, 554.16, 1283.41, + 551.99, 1288.01, 549.27, 1292.31, 546.02, 1296.22, 542.32, 1299.71, + 538.2, 1302.7, 533.74, 1305.15, 529.02, 1307.02, 524.09, 1308.28, + 519.04, 1308.92, 513.96, 1308.92, 508.91, 1308.28, 503.98, 1307.02, + 499.26, 1305.15, 494.8, 1302.7, 490.68, 1299.71, 486.98, 1296.22, + 483.73, 1292.31, 481.01, 1288.01, 478.84, 1283.41, 477.27, 1278.57, + 476.32, 1273.58, 476.0, 1268.5, 476.32, 1263.42, 477.27, 1258.43, + 478.84, 1253.59, 481.01, 1248.99, 483.73, 1244.69, 486.98, 1240.78, + 490.68, 1237.29, 494.8, 1234.3, 499.26, 1231.85, 503.98, 1229.98, + 508.91, 1228.72, 513.96, 1228.08, 519.04, 1228.08, 524.09, 1228.72, + 529.02, 1229.98, 533.74, 1231.85, 538.2, 1234.3, 542.32, 1237.29, + 546.02, 1240.78, 549.27, 1244.69, 551.99, 1248.99, 554.16, 1253.59, + 555.73, 1258.43, 556.68, 1263.42 + ] + ], + "area": 5149.0, + "bbox": [476.0, 1228.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 90, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1562.5, 3305.0, 1566.7, 3304.74, 1570.83, 3303.95, 1574.83, 3302.65, + 1578.64, 3300.86, 1582.19, 3298.6, 1585.43, 3295.92, 1588.31, 3292.85, + 1590.78, 3289.45, 1592.81, 3285.76, 1594.36, 3281.85, 1595.41, + 3277.78, 1595.93, 3273.6, 1595.93, 3269.4, 1595.41, 3265.22, 1594.36, + 3261.15, 1592.81, 3257.24, 1590.78, 3253.55, 1588.31, 3250.15, + 1585.43, 3247.08, 1582.19, 3244.4, 1578.64, 3242.14, 1574.83, 3240.35, + 1570.83, 3239.05, 1566.7, 3238.26, 1562.5, 3238.0, 1558.3, 3238.26, + 1554.17, 3239.05, 1550.17, 3240.35, 1546.36, 3242.14, 1542.81, 3244.4, + 1539.57, 3247.08, 1536.69, 3250.15, 1534.22, 3253.55, 1532.19, + 3257.24, 1530.64, 3261.15, 1529.59, 3265.22, 1529.07, 3269.4, 1529.07, + 3273.6, 1529.59, 3277.78, 1530.64, 3281.85, 1532.19, 3285.76, 1534.22, + 3289.45, 1536.69, 3292.85, 1539.57, 3295.92, 1542.81, 3298.6, 1546.36, + 3300.86, 1550.17, 3302.65, 1554.17, 3303.95, 1558.3, 3304.74 + ] + ], + "area": 3520.0, + "bbox": [1529.07, 3238.0, 66.86, 67.0], + "iscrowd": 0 + }, + { + "id": 91, + "image_id": 2, + "category_id": 3, + "segmentation": [[2177.5, 3058.0, 2136.0, 3131.0, 2219.0, 3131.0]], + "area": 3040.0, + "bbox": [2136.0, 3058.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 92, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2504.0, 187.0, 2583.0, 187.0, 2583.0, 250.0, 2504.0, 250.0, 2504.0, + 187.0 + ] + ], + "area": 4977.0, + "bbox": [2504.0, 187.0, 79.0, 63.0], + "iscrowd": 0 + }, + { + "id": 93, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2202.5, 1624.0, 2207.83, 1623.66, 2213.07, 1622.66, 2218.15, 1621.02, + 2222.97, 1618.74, 2227.48, 1615.88, 2231.59, 1612.48, 2235.25, + 1608.59, 2238.38, 1604.27, 2240.96, 1599.6, 2242.92, 1594.63, 2244.25, + 1589.46, 2244.92, 1584.17, 2244.92, 1578.83, 2244.25, 1573.54, + 2242.92, 1568.37, 2240.96, 1563.4, 2238.38, 1558.73, 2235.25, 1554.41, + 2231.59, 1550.52, 2227.48, 1547.12, 2222.97, 1544.26, 2218.15, + 1541.98, 2213.07, 1540.34, 2207.83, 1539.34, 2202.5, 1539.0, 2197.17, + 1539.34, 2191.93, 1540.34, 2186.85, 1541.98, 2182.03, 1544.26, + 2177.52, 1547.12, 2173.41, 1550.52, 2169.75, 1554.41, 2166.62, + 1558.73, 2164.04, 1563.4, 2162.08, 1568.37, 2160.75, 1573.54, 2160.08, + 1578.83, 2160.08, 1584.17, 2160.75, 1589.46, 2162.08, 1594.63, + 2164.04, 1599.6, 2166.62, 1604.27, 2169.75, 1608.59, 2173.41, 1612.48, + 2177.52, 1615.88, 2182.03, 1618.74, 2186.85, 1621.02, 2191.93, + 1622.66, 2197.17, 1623.66 + ] + ], + "area": 5651.0, + "bbox": [2160.08, 1539.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 94, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3310.0, 2061.0, 3397.0, 2061.0, 3397.0, 2152.0, 3310.0, 2152.0, + 3310.0, 2061.0 + ] + ], + "area": 7917.0, + "bbox": [3310.0, 2061.0, 87.0, 91.0], + "iscrowd": 0 + }, + { + "id": 95, + "image_id": 2, + "category_id": 3, + "segmentation": [[3275.5, 831.0, 3244.0, 886.0, 3307.0, 886.0]], + "area": 1739.0, + "bbox": [3244.0, 831.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 96, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1458.0, 1406.0, 1542.0, 1406.0, 1542.0, 1505.0, 1458.0, 1505.0, + 1458.0, 1406.0 + ] + ], + "area": 8316.0, + "bbox": [1458.0, 1406.0, 84.0, 99.0], + "iscrowd": 0 + }, + { + "id": 97, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2691.0, 1125.0, 2768.0, 1125.0, 2768.0, 1194.0, 2691.0, 1194.0, + 2691.0, 1125.0 + ] + ], + "area": 5313.0, + "bbox": [2691.0, 1125.0, 77.0, 69.0], + "iscrowd": 0 + }, + { + "id": 98, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2571.0, 551.0, 2644.0, 551.0, 2644.0, 637.0, 2571.0, 637.0, 2571.0, + 551.0 + ] + ], + "area": 6278.0, + "bbox": [2571.0, 551.0, 73.0, 86.0], + "iscrowd": 0 + }, + { + "id": 99, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3011.0, 3427.0, 3073.0, 3427.0, 3073.0, 3494.0, 3011.0, 3494.0, + 3011.0, 3427.0 + ] + ], + "area": 4154.0, + "bbox": [3011.0, 3427.0, 62.0, 67.0], + "iscrowd": 0 + }, + { + "id": 100, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 572.0, 1910.0, 664.0, 1910.0, 664.0, 1966.0, 572.0, 1966.0, 572.0, + 1910.0 + ] + ], + "area": 5152.0, + "bbox": [572.0, 1910.0, 92.0, 56.0], + "iscrowd": 0 + }, + { + "id": 101, + "image_id": 2, + "category_id": 3, + "segmentation": [[1206.5, 1514.0, 1181.0, 1559.0, 1232.0, 1559.0]], + "area": 1154.0, + "bbox": [1181.0, 1514.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 102, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2713.0, 2144.5, 2712.71, 2149.07, 2711.85, 2153.58, 2710.44, 2157.94, + 2708.49, 2162.08, 2706.03, 2165.95, 2703.11, 2169.49, 2699.77, + 2172.62, 2696.06, 2175.32, 2692.04, 2177.53, 2687.78, 2179.21, + 2683.34, 2180.35, 2678.79, 2180.93, 2674.21, 2180.93, 2669.66, + 2180.35, 2665.22, 2179.21, 2660.96, 2177.53, 2656.94, 2175.32, + 2653.23, 2172.62, 2649.89, 2169.49, 2646.97, 2165.95, 2644.51, + 2162.08, 2642.56, 2157.94, 2641.15, 2153.58, 2640.29, 2149.07, 2640.0, + 2144.5, 2640.29, 2139.93, 2641.15, 2135.42, 2642.56, 2131.06, 2644.51, + 2126.92, 2646.97, 2123.05, 2649.89, 2119.51, 2653.23, 2116.38, + 2656.94, 2113.68, 2660.96, 2111.47, 2665.22, 2109.79, 2669.66, + 2108.65, 2674.21, 2108.07, 2678.79, 2108.07, 2683.34, 2108.65, + 2687.78, 2109.79, 2692.04, 2111.47, 2696.06, 2113.68, 2699.77, + 2116.38, 2703.11, 2119.51, 2706.03, 2123.05, 2708.49, 2126.92, + 2710.44, 2131.06, 2711.85, 2135.42, 2712.71, 2139.93 + ] + ], + "area": 4187.0, + "bbox": [2640.0, 2108.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 103, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3307.0, 3242.0, 3402.0, 3242.0, 3402.0, 3313.0, 3307.0, 3313.0, + 3307.0, 3242.0 + ] + ], + "area": 6745.0, + "bbox": [3307.0, 3242.0, 95.0, 71.0], + "iscrowd": 0 + }, + { + "id": 104, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2041.0, 2619.0, 2096.0, 2619.0, 2096.0, 2716.0, 2041.0, 2716.0, + 2041.0, 2619.0 + ] + ], + "area": 5335.0, + "bbox": [2041.0, 2619.0, 55.0, 97.0], + "iscrowd": 0 + }, + { + "id": 105, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2247.0, 2189.0, 2311.0, 2189.0, 2311.0, 2273.0, 2247.0, 2273.0, + 2247.0, 2189.0 + ] + ], + "area": 5376.0, + "bbox": [2247.0, 2189.0, 64.0, 84.0], + "iscrowd": 0 + }, + { + "id": 106, + "image_id": 2, + "category_id": 3, + "segmentation": [[359.0, 971.0, 332.0, 1018.0, 386.0, 1018.0]], + "area": 1274.0, + "bbox": [332.0, 971.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 107, + "image_id": 2, + "category_id": 3, + "segmentation": [[1775.5, 1401.0, 1743.0, 1458.0, 1808.0, 1458.0]], + "area": 1857.0, + "bbox": [1743.0, 1401.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 108, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [294.0, 375.0, 353.0, 375.0, 353.0, 438.0, 294.0, 438.0, 294.0, 375.0] + ], + "area": 3717.0, + "bbox": [294.0, 375.0, 59.0, 63.0], + "iscrowd": 0 + }, + { + "id": 109, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3405.0, 1796.0, 3477.0, 1796.0, 3477.0, 1884.0, 3405.0, 1884.0, + 3405.0, 1796.0 + ] + ], + "area": 6336.0, + "bbox": [3405.0, 1796.0, 72.0, 88.0], + "iscrowd": 0 + }, + { + "id": 110, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2960.0, 3116.0, 3041.0, 3116.0, 3041.0, 3211.0, 2960.0, 3211.0, + 2960.0, 3116.0 + ] + ], + "area": 7695.0, + "bbox": [2960.0, 3116.0, 81.0, 95.0], + "iscrowd": 0 + }, + { + "id": 111, + "image_id": 2, + "category_id": 3, + "segmentation": [[3315.0, 2486.0, 3278.0, 2551.0, 3352.0, 2551.0]], + "area": 2412.0, + "bbox": [3278.0, 2486.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 112, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [62.0, 3175.0, 145.0, 3175.0, 145.0, 3271.0, 62.0, 3271.0, 62.0, 3175.0] + ], + "area": 7968.0, + "bbox": [62.0, 3175.0, 83.0, 96.0], + "iscrowd": 0 + }, + { + "id": 113, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2286.0, 1972.0, 2344.0, 1972.0, 2344.0, 2032.0, 2286.0, 2032.0, + 2286.0, 1972.0 + ] + ], + "area": 3480.0, + "bbox": [2286.0, 1972.0, 58.0, 60.0], + "iscrowd": 0 + }, + { + "id": 114, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1187.0, 1263.0, 1264.0, 1263.0, 1264.0, 1332.0, 1187.0, 1332.0, + 1187.0, 1263.0 + ] + ], + "area": 5313.0, + "bbox": [1187.0, 1263.0, 77.0, 69.0], + "iscrowd": 0 + }, + { + "id": 115, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1440.0, 1770.0, 1513.0, 1770.0, 1513.0, 1855.0, 1440.0, 1855.0, + 1440.0, 1770.0 + ] + ], + "area": 6205.0, + "bbox": [1440.0, 1770.0, 73.0, 85.0], + "iscrowd": 0 + }, + { + "id": 116, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2146.0, 695.0, 2209.0, 695.0, 2209.0, 778.0, 2146.0, 778.0, 2146.0, + 695.0 + ] + ], + "area": 5229.0, + "bbox": [2146.0, 695.0, 63.0, 83.0], + "iscrowd": 0 + }, + { + "id": 117, + "image_id": 2, + "category_id": 3, + "segmentation": [[2433.0, 1507.0, 2390.0, 1582.0, 2476.0, 1582.0]], + "area": 3234.0, + "bbox": [2390.0, 1507.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 118, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [3.0, 452.0, 53.0, 452.0, 53.0, 545.0, 3.0, 545.0, 3.0, 452.0] + ], + "area": 4650.0, + "bbox": [3.0, 452.0, 50.0, 93.0], + "iscrowd": 0 + }, + { + "id": 119, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2732.0, 3227.0, 2823.0, 3227.0, 2823.0, 3305.0, 2732.0, 3305.0, + 2732.0, 3227.0 + ] + ], + "area": 7098.0, + "bbox": [2732.0, 3227.0, 91.0, 78.0], + "iscrowd": 0 + }, + { + "id": 120, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2795.0, 1595.0, 2848.0, 1595.0, 2848.0, 1670.0, 2795.0, 1670.0, + 2795.0, 1595.0 + ] + ], + "area": 3975.0, + "bbox": [2795.0, 1595.0, 53.0, 75.0], + "iscrowd": 0 + }, + { + "id": 121, + "image_id": 2, + "category_id": 3, + "segmentation": [[1791.0, 1816.0, 1751.0, 1886.0, 1831.0, 1886.0]], + "area": 2800.0, + "bbox": [1751.0, 1816.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 122, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1980.0, 35.5, 1979.78, 38.95, 1979.14, 42.34, 1978.07, 45.62, 1976.6, + 48.75, 1974.75, 51.66, 1972.55, 54.33, 1970.03, 56.69, 1967.24, 58.72, + 1964.21, 60.38, 1961.0, 61.65, 1957.65, 62.51, 1954.23, 62.95, + 1950.77, 62.95, 1947.35, 62.51, 1944.0, 61.65, 1940.79, 60.38, + 1937.76, 58.72, 1934.97, 56.69, 1932.45, 54.33, 1930.25, 51.66, + 1928.4, 48.75, 1926.93, 45.62, 1925.86, 42.34, 1925.22, 38.95, 1925.0, + 35.5, 1925.22, 32.05, 1925.86, 28.66, 1926.93, 25.38, 1928.4, 22.25, + 1930.25, 19.34, 1932.45, 16.67, 1934.97, 14.31, 1937.76, 12.28, + 1940.79, 10.62, 1944.0, 9.35, 1947.35, 8.49, 1950.77, 8.05, 1954.23, + 8.05, 1957.65, 8.49, 1961.0, 9.35, 1964.21, 10.62, 1967.24, 12.28, + 1970.03, 14.31, 1972.55, 16.67, 1974.75, 19.34, 1976.6, 22.25, + 1978.07, 25.38, 1979.14, 28.66, 1979.78, 32.05 + ] + ], + "area": 2375.0, + "bbox": [1925.0, 8.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 123, + "image_id": 2, + "category_id": 3, + "segmentation": [[955.5, 1724.0, 919.0, 1788.0, 992.0, 1788.0]], + "area": 2341.0, + "bbox": [919.0, 1724.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 124, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1834.0, 3138.0, 1922.0, 3138.0, 1922.0, 3213.0, 1834.0, 3213.0, + 1834.0, 3138.0 + ] + ], + "area": 6600.0, + "bbox": [1834.0, 3138.0, 88.0, 75.0], + "iscrowd": 0 + }, + { + "id": 125, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [49.0, 1305.0, 120.0, 1305.0, 120.0, 1360.0, 49.0, 1360.0, 49.0, 1305.0] + ], + "area": 3905.0, + "bbox": [49.0, 1305.0, 71.0, 55.0], + "iscrowd": 0 + }, + { + "id": 126, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 577.5, 2617.0, 581.82, 2616.73, 586.08, 2615.92, 590.2, 2614.58, + 594.12, 2612.73, 597.78, 2610.41, 601.12, 2607.65, 604.08, 2604.49, + 606.63, 2600.99, 608.72, 2597.19, 610.31, 2593.16, 611.39, 2588.96, + 611.93, 2584.67, 611.93, 2580.33, 611.39, 2576.04, 610.31, 2571.84, + 608.72, 2567.81, 606.63, 2564.01, 604.08, 2560.51, 601.12, 2557.35, + 597.78, 2554.59, 594.12, 2552.27, 590.2, 2550.42, 586.08, 2549.08, + 581.82, 2548.27, 577.5, 2548.0, 573.18, 2548.27, 568.92, 2549.08, + 564.8, 2550.42, 560.88, 2552.27, 557.22, 2554.59, 553.88, 2557.35, + 550.92, 2560.51, 548.37, 2564.01, 546.28, 2567.81, 544.69, 2571.84, + 543.61, 2576.04, 543.07, 2580.33, 543.07, 2584.67, 543.61, 2588.96, + 544.69, 2593.16, 546.28, 2597.19, 548.37, 2600.99, 550.92, 2604.49, + 553.88, 2607.65, 557.22, 2610.41, 560.88, 2612.73, 564.8, 2614.58, + 568.92, 2615.92, 573.18, 2616.73 + ] + ], + "area": 3743.0, + "bbox": [543.07, 2548.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 127, + "image_id": 2, + "category_id": 3, + "segmentation": [[1891.0, 1055.0, 1861.0, 1108.0, 1921.0, 1108.0]], + "area": 1596.0, + "bbox": [1861.0, 1055.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 128, + "image_id": 2, + "category_id": 3, + "segmentation": [[3306.5, 2130.0, 3264.0, 2204.0, 3349.0, 2204.0]], + "area": 3154.0, + "bbox": [3264.0, 2130.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 129, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 958.5, 1340.0, 963.2, 1339.7, 967.83, 1338.82, 972.3, 1337.37, 976.57, + 1335.36, 980.54, 1332.84, 984.17, 1329.84, 987.39, 1326.4, 990.16, + 1322.59, 992.43, 1318.47, 994.16, 1314.09, 995.34, 1309.53, 995.93, + 1304.85, 995.93, 1300.15, 995.34, 1295.47, 994.16, 1290.91, 992.43, + 1286.53, 990.16, 1282.41, 987.39, 1278.6, 984.17, 1275.16, 980.54, + 1272.16, 976.57, 1269.64, 972.3, 1267.63, 967.83, 1266.18, 963.2, + 1265.3, 958.5, 1265.0, 953.8, 1265.3, 949.17, 1266.18, 944.7, 1267.63, + 940.43, 1269.64, 936.46, 1272.16, 932.83, 1275.16, 929.61, 1278.6, + 926.84, 1282.41, 924.57, 1286.53, 922.84, 1290.91, 921.66, 1295.47, + 921.07, 1300.15, 921.07, 1304.85, 921.66, 1309.53, 922.84, 1314.09, + 924.57, 1318.47, 926.84, 1322.59, 929.61, 1326.4, 932.83, 1329.84, + 936.46, 1332.84, 940.43, 1335.36, 944.7, 1337.37, 949.17, 1338.82, + 953.8, 1339.7 + ] + ], + "area": 4409.0, + "bbox": [921.07, 1265.0, 74.86, 75.0], + "iscrowd": 0 + }, + { + "id": 130, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 441.0, 1943.0, 505.0, 1943.0, 505.0, 2010.0, 441.0, 2010.0, 441.0, + 1943.0 + ] + ], + "area": 4288.0, + "bbox": [441.0, 1943.0, 64.0, 67.0], + "iscrowd": 0 + }, + { + "id": 131, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 852.0, 1137.0, 938.0, 1137.0, 938.0, 1204.0, 852.0, 1204.0, 852.0, + 1137.0 + ] + ], + "area": 5762.0, + "bbox": [852.0, 1137.0, 86.0, 67.0], + "iscrowd": 0 + }, + { + "id": 132, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1183.0, 3044.0, 1247.0, 3044.0, 1247.0, 3132.0, 1183.0, 3132.0, + 1183.0, 3044.0 + ] + ], + "area": 5632.0, + "bbox": [1183.0, 3044.0, 64.0, 88.0], + "iscrowd": 0 + }, + { + "id": 133, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1117.5, 572.0, 1121.45, 571.75, 1125.33, 571.01, 1129.1, 569.79, + 1132.68, 568.1, 1136.02, 565.98, 1139.06, 563.46, 1141.77, 560.58, + 1144.1, 557.38, 1146.0, 553.91, 1147.46, 550.23, 1148.44, 546.4, + 1148.94, 542.48, 1148.94, 538.52, 1148.44, 534.6, 1147.46, 530.77, + 1146.0, 527.09, 1144.1, 523.62, 1141.77, 520.42, 1139.06, 517.54, + 1136.02, 515.02, 1132.68, 512.9, 1129.1, 511.21, 1125.33, 509.99, + 1121.45, 509.25, 1117.5, 509.0, 1113.55, 509.25, 1109.67, 509.99, + 1105.9, 511.21, 1102.32, 512.9, 1098.98, 515.02, 1095.94, 517.54, + 1093.23, 520.42, 1090.9, 523.62, 1089.0, 527.09, 1087.54, 530.77, + 1086.56, 534.6, 1086.06, 538.52, 1086.06, 542.48, 1086.56, 546.4, + 1087.54, 550.23, 1089.0, 553.91, 1090.9, 557.38, 1093.23, 560.58, + 1095.94, 563.46, 1098.98, 565.98, 1102.32, 568.1, 1105.9, 569.79, + 1109.67, 571.01, 1113.55, 571.75 + ] + ], + "area": 3121.0, + "bbox": [1086.06, 509.0, 62.88, 63.0], + "iscrowd": 0 + }, + { + "id": 134, + "image_id": 2, + "category_id": 3, + "segmentation": [[655.5, 2450.0, 620.0, 2512.0, 691.0, 2512.0]], + "area": 2209.0, + "bbox": [620.0, 2450.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 135, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 833.0, 3322.0, 884.0, 3322.0, 884.0, 3391.0, 833.0, 3391.0, 833.0, + 3322.0 + ] + ], + "area": 3519.0, + "bbox": [833.0, 3322.0, 51.0, 69.0], + "iscrowd": 0 + }, + { + "id": 136, + "image_id": 2, + "category_id": 3, + "segmentation": [[503.5, 599.0, 460.0, 675.0, 547.0, 675.0]], + "area": 3315.0, + "bbox": [460.0, 599.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 137, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2743.0, 3313.0, 2798.0, 3313.0, 2798.0, 3368.0, 2743.0, 3368.0, + 2743.0, 3313.0 + ] + ], + "area": 3025.0, + "bbox": [2743.0, 3313.0, 55.0, 55.0], + "iscrowd": 0 + }, + { + "id": 138, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2666.0, 3026.0, 2725.0, 3026.0, 2725.0, 3101.0, 2666.0, 3101.0, + 2666.0, 3026.0 + ] + ], + "area": 4425.0, + "bbox": [2666.0, 3026.0, 59.0, 75.0], + "iscrowd": 0 + }, + { + "id": 139, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1682.0, 2628.0, 1771.0, 2628.0, 1771.0, 2703.0, 1682.0, 2703.0, + 1682.0, 2628.0 + ] + ], + "area": 6675.0, + "bbox": [1682.0, 2628.0, 89.0, 75.0], + "iscrowd": 0 + }, + { + "id": 140, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2847.0, 2227.0, 2939.0, 2227.0, 2939.0, 2316.0, 2847.0, 2316.0, + 2847.0, 2227.0 + ] + ], + "area": 8188.0, + "bbox": [2847.0, 2227.0, 92.0, 89.0], + "iscrowd": 0 + }, + { + "id": 141, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 985.0, 758.5, 984.81, 761.57, 984.23, 764.59, 983.28, 767.52, 981.97, + 770.3, 980.32, 772.9, 978.36, 775.27, 976.12, 777.38, 973.63, 779.19, + 970.93, 780.67, 968.07, 781.8, 965.09, 782.57, 962.04, 782.95, 958.96, + 782.95, 955.91, 782.57, 952.93, 781.8, 950.07, 780.67, 947.37, 779.19, + 944.88, 777.38, 942.64, 775.27, 940.68, 772.9, 939.03, 770.3, 937.72, + 767.52, 936.77, 764.59, 936.19, 761.57, 936.0, 758.5, 936.19, 755.43, + 936.77, 752.41, 937.72, 749.48, 939.03, 746.7, 940.68, 744.1, 942.64, + 741.73, 944.88, 739.62, 947.37, 737.81, 950.07, 736.33, 952.93, 735.2, + 955.91, 734.43, 958.96, 734.05, 962.04, 734.05, 965.09, 734.43, + 968.07, 735.2, 970.93, 736.33, 973.63, 737.81, 976.12, 739.62, 978.36, + 741.73, 980.32, 744.1, 981.97, 746.7, 983.28, 749.48, 984.23, 752.41, + 984.81, 755.43 + ] + ], + "area": 1885.0, + "bbox": [936.0, 734.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 142, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 533.0, 982.5, 532.74, 986.7, 531.95, 990.83, 530.65, 994.83, 528.86, + 998.64, 526.6, 1002.19, 523.92, 1005.43, 520.85, 1008.31, 517.45, + 1010.78, 513.76, 1012.81, 509.85, 1014.36, 505.78, 1015.41, 501.6, + 1015.93, 497.4, 1015.93, 493.22, 1015.41, 489.15, 1014.36, 485.24, + 1012.81, 481.55, 1010.78, 478.15, 1008.31, 475.08, 1005.43, 472.4, + 1002.19, 470.14, 998.64, 468.35, 994.83, 467.05, 990.83, 466.26, + 986.7, 466.0, 982.5, 466.26, 978.3, 467.05, 974.17, 468.35, 970.17, + 470.14, 966.36, 472.4, 962.81, 475.08, 959.57, 478.15, 956.69, 481.55, + 954.22, 485.24, 952.19, 489.15, 950.64, 493.22, 949.59, 497.4, 949.07, + 501.6, 949.07, 505.78, 949.59, 509.85, 950.64, 513.76, 952.19, 517.45, + 954.22, 520.85, 956.69, 523.92, 959.57, 526.6, 962.81, 528.86, 966.36, + 530.65, 970.17, 531.95, 974.17, 532.74, 978.3 + ] + ], + "area": 3519.0, + "bbox": [466.0, 949.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 143, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 146.0, 1787.0, 218.0, 1787.0, 218.0, 1879.0, 146.0, 1879.0, 146.0, + 1787.0 + ] + ], + "area": 6624.0, + "bbox": [146.0, 1787.0, 72.0, 92.0], + "iscrowd": 0 + }, + { + "id": 144, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2230.0, 3221.0, 2305.0, 3221.0, 2305.0, 3302.0, 2230.0, 3302.0, + 2230.0, 3221.0 + ] + ], + "area": 6075.0, + "bbox": [2230.0, 3221.0, 75.0, 81.0], + "iscrowd": 0 + }, + { + "id": 145, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2793.0, 2758.0, 2863.0, 2758.0, 2863.0, 2839.0, 2793.0, 2839.0, + 2793.0, 2758.0 + ] + ], + "area": 5670.0, + "bbox": [2793.0, 2758.0, 70.0, 81.0], + "iscrowd": 0 + }, + { + "id": 146, + "image_id": 2, + "category_id": 3, + "segmentation": [[2629.0, 848.0, 2588.0, 920.0, 2670.0, 920.0]], + "area": 2960.0, + "bbox": [2588.0, 848.0, 82.0, 72.0], + "iscrowd": 0 + }, + { + "id": 147, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1184.0, 2995.5, 1183.77, 2999.2, 1183.07, 3002.84, 1181.93, 3006.36, + 1180.35, 3009.71, 1178.37, 3012.84, 1176.0, 3015.69, 1173.3, 3018.23, + 1170.31, 3020.41, 1167.06, 3022.19, 1163.62, 3023.56, 1160.03, + 3024.48, 1156.35, 3024.94, 1152.65, 3024.94, 1148.97, 3024.48, + 1145.38, 3023.56, 1141.94, 3022.19, 1138.69, 3020.41, 1135.7, 3018.23, + 1133.0, 3015.69, 1130.63, 3012.84, 1128.65, 3009.71, 1127.07, 3006.36, + 1125.93, 3002.84, 1125.23, 2999.2, 1125.0, 2995.5, 1125.23, 2991.8, + 1125.93, 2988.16, 1127.07, 2984.64, 1128.65, 2981.29, 1130.63, + 2978.16, 1133.0, 2975.31, 1135.7, 2972.77, 1138.69, 2970.59, 1141.94, + 2968.81, 1145.38, 2967.44, 1148.97, 2966.52, 1152.65, 2966.06, + 1156.35, 2966.06, 1160.03, 2966.52, 1163.62, 2967.44, 1167.06, + 2968.81, 1170.31, 2970.59, 1173.3, 2972.77, 1176.0, 2975.31, 1178.37, + 2978.16, 1180.35, 2981.29, 1181.93, 2984.64, 1183.07, 2988.16, + 1183.77, 2991.8 + ] + ], + "area": 2729.0, + "bbox": [1125.0, 2966.06, 59.0, 58.88], + "iscrowd": 0 + }, + { + "id": 148, + "image_id": 2, + "category_id": 3, + "segmentation": [[3181.5, 1356.0, 3139.0, 1430.0, 3224.0, 1430.0]], + "area": 3154.0, + "bbox": [3139.0, 1356.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 149, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 43.5, 198.0, 46.7, 197.8, 49.84, 197.2, 52.89, 196.21, 55.78, 194.85, + 58.49, 193.13, 60.96, 191.09, 63.15, 188.75, 65.03, 186.16, 66.57, + 183.36, 67.75, 180.38, 68.55, 177.28, 68.95, 174.1, 68.95, 170.9, + 68.55, 167.72, 67.75, 164.62, 66.57, 161.64, 65.03, 158.84, 63.15, + 156.25, 60.96, 153.91, 58.49, 151.87, 55.78, 150.15, 52.89, 148.79, + 49.84, 147.8, 46.7, 147.2, 43.5, 147.0, 40.3, 147.2, 37.16, 147.8, + 34.11, 148.79, 31.22, 150.15, 28.51, 151.87, 26.04, 153.91, 23.85, + 156.25, 21.97, 158.84, 20.43, 161.64, 19.25, 164.62, 18.45, 167.72, + 18.05, 170.9, 18.05, 174.1, 18.45, 177.28, 19.25, 180.38, 20.43, + 183.36, 21.97, 186.16, 23.85, 188.75, 26.04, 191.09, 28.51, 193.13, + 31.22, 194.85, 34.11, 196.21, 37.16, 197.2, 40.3, 197.8 + ] + ], + "area": 2036.0, + "bbox": [18.05, 147.0, 50.9, 51.0], + "iscrowd": 0 + }, + { + "id": 150, + "image_id": 2, + "category_id": 3, + "segmentation": [[2548.5, 867.0, 2504.0, 945.0, 2593.0, 945.0]], + "area": 3477.0, + "bbox": [2504.0, 867.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 151, + "image_id": 2, + "category_id": 3, + "segmentation": [[2685.0, 2885.0, 2645.0, 2955.0, 2725.0, 2955.0]], + "area": 2800.0, + "bbox": [2645.0, 2885.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 152, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3285.5, 3493.0, 3290.95, 3492.66, 3296.32, 3491.63, 3301.51, 3489.95, + 3306.46, 3487.62, 3311.07, 3484.69, 3315.28, 3481.21, 3319.02, + 3477.23, 3322.23, 3472.81, 3324.86, 3468.02, 3326.87, 3462.94, + 3328.23, 3457.65, 3328.91, 3452.23, 3328.91, 3446.77, 3328.23, + 3441.35, 3326.87, 3436.06, 3324.86, 3430.98, 3322.23, 3426.19, + 3319.02, 3421.77, 3315.28, 3417.79, 3311.07, 3414.31, 3306.46, + 3411.38, 3301.51, 3409.05, 3296.32, 3407.37, 3290.95, 3406.34, 3285.5, + 3406.0, 3280.05, 3406.34, 3274.68, 3407.37, 3269.49, 3409.05, 3264.54, + 3411.38, 3259.93, 3414.31, 3255.72, 3417.79, 3251.98, 3421.77, + 3248.77, 3426.19, 3246.14, 3430.98, 3244.13, 3436.06, 3242.77, + 3441.35, 3242.09, 3446.77, 3242.09, 3452.23, 3242.77, 3457.65, + 3244.13, 3462.94, 3246.14, 3468.02, 3248.77, 3472.81, 3251.98, + 3477.23, 3255.72, 3481.21, 3259.93, 3484.69, 3264.54, 3487.62, + 3269.49, 3489.95, 3274.68, 3491.63, 3280.05, 3492.66 + ] + ], + "area": 5930.0, + "bbox": [3242.09, 3406.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 153, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1740.0, 1964.0, 1818.0, 1964.0, 1818.0, 2059.0, 1740.0, 2059.0, + 1740.0, 1964.0 + ] + ], + "area": 7410.0, + "bbox": [1740.0, 1964.0, 78.0, 95.0], + "iscrowd": 0 + }, + { + "id": 154, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3405.0, 1974.5, 3404.71, 1979.07, 3403.85, 1983.58, 3402.44, 1987.94, + 3400.49, 1992.08, 3398.03, 1995.95, 3395.11, 1999.49, 3391.77, + 2002.62, 3388.06, 2005.32, 3384.04, 2007.53, 3379.78, 2009.21, + 3375.34, 2010.35, 3370.79, 2010.93, 3366.21, 2010.93, 3361.66, + 2010.35, 3357.22, 2009.21, 3352.96, 2007.53, 3348.94, 2005.32, + 3345.23, 2002.62, 3341.89, 1999.49, 3338.97, 1995.95, 3336.51, + 1992.08, 3334.56, 1987.94, 3333.15, 1983.58, 3332.29, 1979.07, 3332.0, + 1974.5, 3332.29, 1969.93, 3333.15, 1965.42, 3334.56, 1961.06, 3336.51, + 1956.92, 3338.97, 1953.05, 3341.89, 1949.51, 3345.23, 1946.38, + 3348.94, 1943.68, 3352.96, 1941.47, 3357.22, 1939.79, 3361.66, + 1938.65, 3366.21, 1938.07, 3370.79, 1938.07, 3375.34, 1938.65, + 3379.78, 1939.79, 3384.04, 1941.47, 3388.06, 1943.68, 3391.77, + 1946.38, 3395.11, 1949.51, 3398.03, 1953.05, 3400.49, 1956.92, + 3402.44, 1961.06, 3403.85, 1965.42, 3404.71, 1969.93 + ] + ], + "area": 4187.0, + "bbox": [3332.0, 1938.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 155, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1575.0, 1858.0, 1639.0, 1858.0, 1639.0, 1922.0, 1575.0, 1922.0, + 1575.0, 1858.0 + ] + ], + "area": 4096.0, + "bbox": [1575.0, 1858.0, 64.0, 64.0], + "iscrowd": 0 + }, + { + "id": 156, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1083.5, 943.0, 1086.95, 942.78, 1090.34, 942.14, 1093.62, 941.07, + 1096.75, 939.6, 1099.66, 937.75, 1102.33, 935.55, 1104.69, 933.03, + 1106.72, 930.24, 1108.38, 927.21, 1109.65, 924.0, 1110.51, 920.65, + 1110.95, 917.23, 1110.95, 913.77, 1110.51, 910.35, 1109.65, 907.0, + 1108.38, 903.79, 1106.72, 900.76, 1104.69, 897.97, 1102.33, 895.45, + 1099.66, 893.25, 1096.75, 891.4, 1093.62, 889.93, 1090.34, 888.86, + 1086.95, 888.22, 1083.5, 888.0, 1080.05, 888.22, 1076.66, 888.86, + 1073.38, 889.93, 1070.25, 891.4, 1067.34, 893.25, 1064.67, 895.45, + 1062.31, 897.97, 1060.28, 900.76, 1058.62, 903.79, 1057.35, 907.0, + 1056.49, 910.35, 1056.05, 913.77, 1056.05, 917.23, 1056.49, 920.65, + 1057.35, 924.0, 1058.62, 927.21, 1060.28, 930.24, 1062.31, 933.03, + 1064.67, 935.55, 1067.34, 937.75, 1070.25, 939.6, 1073.38, 941.07, + 1076.66, 942.14, 1080.05, 942.78 + ] + ], + "area": 2375.0, + "bbox": [1056.05, 888.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 157, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3226.5, 1558.0, 3231.2, 1557.7, 3235.83, 1556.82, 3240.3, 1555.37, + 3244.57, 1553.36, 3248.54, 1550.84, 3252.17, 1547.84, 3255.39, 1544.4, + 3258.16, 1540.59, 3260.43, 1536.47, 3262.16, 1532.09, 3263.34, + 1527.53, 3263.93, 1522.85, 3263.93, 1518.15, 3263.34, 1513.47, + 3262.16, 1508.91, 3260.43, 1504.53, 3258.16, 1500.41, 3255.39, 1496.6, + 3252.17, 1493.16, 3248.54, 1490.16, 3244.57, 1487.64, 3240.3, 1485.63, + 3235.83, 1484.18, 3231.2, 1483.3, 3226.5, 1483.0, 3221.8, 1483.3, + 3217.17, 1484.18, 3212.7, 1485.63, 3208.43, 1487.64, 3204.46, 1490.16, + 3200.83, 1493.16, 3197.61, 1496.6, 3194.84, 1500.41, 3192.57, 1504.53, + 3190.84, 1508.91, 3189.66, 1513.47, 3189.07, 1518.15, 3189.07, + 1522.85, 3189.66, 1527.53, 3190.84, 1532.09, 3192.57, 1536.47, + 3194.84, 1540.59, 3197.61, 1544.4, 3200.83, 1547.84, 3204.46, 1550.84, + 3208.43, 1553.36, 3212.7, 1555.37, 3217.17, 1556.82, 3221.8, 1557.7 + ] + ], + "area": 4409.0, + "bbox": [3189.07, 1483.0, 74.86, 75.0], + "iscrowd": 0 + }, + { + "id": 158, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1140.0, 2228.0, 1238.0, 2228.0, 1238.0, 2301.0, 1140.0, 2301.0, + 1140.0, 2228.0 + ] + ], + "area": 7154.0, + "bbox": [1140.0, 2228.0, 98.0, 73.0], + "iscrowd": 0 + }, + { + "id": 159, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2829.0, 156.0, 2922.0, 156.0, 2922.0, 216.0, 2829.0, 216.0, 2829.0, + 156.0 + ] + ], + "area": 5580.0, + "bbox": [2829.0, 156.0, 93.0, 60.0], + "iscrowd": 0 + }, + { + "id": 160, + "image_id": 2, + "category_id": 3, + "segmentation": [[2763.0, 1525.0, 2721.0, 1598.0, 2805.0, 1598.0]], + "area": 3074.0, + "bbox": [2721.0, 1525.0, 84.0, 73.0], + "iscrowd": 0 + }, + { + "id": 161, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2411.0, 696.0, 2489.0, 696.0, 2489.0, 746.0, 2411.0, 746.0, 2411.0, + 696.0 + ] + ], + "area": 3900.0, + "bbox": [2411.0, 696.0, 78.0, 50.0], + "iscrowd": 0 + }, + { + "id": 162, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2787.0, 3024.0, 2858.0, 3024.0, 2858.0, 3107.0, 2787.0, 3107.0, + 2787.0, 3024.0 + ] + ], + "area": 5893.0, + "bbox": [2787.0, 3024.0, 71.0, 83.0], + "iscrowd": 0 + }, + { + "id": 163, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1157.0, 216.0, 1243.0, 216.0, 1243.0, 297.0, 1157.0, 297.0, 1157.0, + 216.0 + ] + ], + "area": 6966.0, + "bbox": [1157.0, 216.0, 86.0, 81.0], + "iscrowd": 0 + }, + { + "id": 164, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1671.0, 2275.5, 1670.7, 2280.33, 1669.79, 2285.07, 1668.3, 2289.67, + 1666.24, 2294.05, 1663.65, 2298.13, 1660.57, 2301.86, 1657.04, + 2305.16, 1653.13, 2308.01, 1648.89, 2310.34, 1644.4, 2312.12, 1639.71, + 2313.32, 1634.92, 2313.92, 1630.08, 2313.92, 1625.29, 2313.32, 1620.6, + 2312.12, 1616.11, 2310.34, 1611.87, 2308.01, 1607.96, 2305.16, + 1604.43, 2301.86, 1601.35, 2298.13, 1598.76, 2294.05, 1596.7, 2289.67, + 1595.21, 2285.07, 1594.3, 2280.33, 1594.0, 2275.5, 1594.3, 2270.67, + 1595.21, 2265.93, 1596.7, 2261.33, 1598.76, 2256.95, 1601.35, 2252.87, + 1604.43, 2249.14, 1607.96, 2245.84, 1611.87, 2242.99, 1616.11, + 2240.66, 1620.6, 2238.88, 1625.29, 2237.68, 1630.08, 2237.08, 1634.92, + 2237.08, 1639.71, 2237.68, 1644.4, 2238.88, 1648.89, 2240.66, 1653.13, + 2242.99, 1657.04, 2245.84, 1660.57, 2249.14, 1663.65, 2252.87, + 1666.24, 2256.95, 1668.3, 2261.33, 1669.79, 2265.93, 1670.7, 2270.67 + ] + ], + "area": 4653.0, + "bbox": [1594.0, 2237.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 165, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 223.0, 1625.0, 279.0, 1625.0, 279.0, 1709.0, 223.0, 1709.0, 223.0, + 1625.0 + ] + ], + "area": 4704.0, + "bbox": [223.0, 1625.0, 56.0, 84.0], + "iscrowd": 0 + }, + { + "id": 166, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [943.0, 326.0, 1005.0, 326.0, 1005.0, 405.0, 943.0, 405.0, 943.0, 326.0] + ], + "area": 4898.0, + "bbox": [943.0, 326.0, 62.0, 79.0], + "iscrowd": 0 + }, + { + "id": 167, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1736.0, 3045.0, 1810.0, 3045.0, 1810.0, 3128.0, 1736.0, 3128.0, + 1736.0, 3045.0 + ] + ], + "area": 6142.0, + "bbox": [1736.0, 3045.0, 74.0, 83.0], + "iscrowd": 0 + }, + { + "id": 168, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [743.0, 355.0, 832.0, 355.0, 832.0, 444.0, 743.0, 444.0, 743.0, 355.0] + ], + "area": 7921.0, + "bbox": [743.0, 355.0, 89.0, 89.0], + "iscrowd": 0 + }, + { + "id": 169, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [545.0, 702.0, 640.0, 702.0, 640.0, 797.0, 545.0, 797.0, 545.0, 702.0] + ], + "area": 9025.0, + "bbox": [545.0, 702.0, 95.0, 95.0], + "iscrowd": 0 + }, + { + "id": 170, + "image_id": 2, + "category_id": 3, + "segmentation": [[1029.5, 2292.0, 1002.0, 2340.0, 1057.0, 2340.0]], + "area": 1326.0, + "bbox": [1002.0, 2292.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 171, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1793.0, 1708.5, 1792.75, 1712.45, 1792.01, 1716.33, 1790.79, 1720.1, + 1789.1, 1723.68, 1786.98, 1727.02, 1784.46, 1730.06, 1781.58, 1732.77, + 1778.38, 1735.1, 1774.91, 1737.0, 1771.23, 1738.46, 1767.4, 1739.44, + 1763.48, 1739.94, 1759.52, 1739.94, 1755.6, 1739.44, 1751.77, 1738.46, + 1748.09, 1737.0, 1744.62, 1735.1, 1741.42, 1732.77, 1738.54, 1730.06, + 1736.02, 1727.02, 1733.9, 1723.68, 1732.21, 1720.1, 1730.99, 1716.33, + 1730.25, 1712.45, 1730.0, 1708.5, 1730.25, 1704.55, 1730.99, 1700.67, + 1732.21, 1696.9, 1733.9, 1693.32, 1736.02, 1689.98, 1738.54, 1686.94, + 1741.42, 1684.23, 1744.62, 1681.9, 1748.09, 1680.0, 1751.77, 1678.54, + 1755.6, 1677.56, 1759.52, 1677.06, 1763.48, 1677.06, 1767.4, 1677.56, + 1771.23, 1678.54, 1774.91, 1680.0, 1778.38, 1681.9, 1781.58, 1684.23, + 1784.46, 1686.94, 1786.98, 1689.98, 1789.1, 1693.32, 1790.79, 1696.9, + 1792.01, 1700.67, 1792.75, 1704.55 + ] + ], + "area": 3122.0, + "bbox": [1730.0, 1677.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 172, + "image_id": 2, + "category_id": 3, + "segmentation": [[886.0, 242.0, 848.0, 308.0, 924.0, 308.0]], + "area": 2514.0, + "bbox": [848.0, 242.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 173, + "image_id": 2, + "category_id": 3, + "segmentation": [[1696.5, 3110.0, 1670.0, 3157.0, 1723.0, 3157.0]], + "area": 1251.0, + "bbox": [1670.0, 3110.0, 53.0, 47.0], + "iscrowd": 0 + }, + { + "id": 174, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3043.0, 930.0, 3096.0, 930.0, 3096.0, 987.0, 3043.0, 987.0, 3043.0, + 930.0 + ] + ], + "area": 3021.0, + "bbox": [3043.0, 930.0, 53.0, 57.0], + "iscrowd": 0 + }, + { + "id": 175, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 606.0, 2660.0, 665.0, 2660.0, 665.0, 2717.0, 606.0, 2717.0, 606.0, + 2660.0 + ] + ], + "area": 3363.0, + "bbox": [606.0, 2660.0, 59.0, 57.0], + "iscrowd": 0 + }, + { + "id": 176, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 573.5, 365.0, 578.58, 364.68, 583.57, 363.73, 588.41, 362.16, 593.01, + 359.99, 597.31, 357.27, 601.22, 354.02, 604.71, 350.32, 607.7, 346.2, + 610.15, 341.74, 612.02, 337.02, 613.28, 332.09, 613.92, 327.04, + 613.92, 321.96, 613.28, 316.91, 612.02, 311.98, 610.15, 307.26, 607.7, + 302.8, 604.71, 298.68, 601.22, 294.98, 597.31, 291.73, 593.01, 289.01, + 588.41, 286.84, 583.57, 285.27, 578.58, 284.32, 573.5, 284.0, 568.42, + 284.32, 563.43, 285.27, 558.59, 286.84, 553.99, 289.01, 549.69, + 291.73, 545.78, 294.98, 542.29, 298.68, 539.3, 302.8, 536.85, 307.26, + 534.98, 311.98, 533.72, 316.91, 533.08, 321.96, 533.08, 327.04, + 533.72, 332.09, 534.98, 337.02, 536.85, 341.74, 539.3, 346.2, 542.29, + 350.32, 545.78, 354.02, 549.69, 357.27, 553.99, 359.99, 558.59, + 362.16, 563.43, 363.73, 568.42, 364.68 + ] + ], + "area": 5150.0, + "bbox": [533.08, 284.0, 80.84, 81.0], + "iscrowd": 0 + }, + { + "id": 177, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1951.0, 301.0, 2032.0, 301.0, 2032.0, 384.0, 1951.0, 384.0, 1951.0, + 301.0 + ] + ], + "area": 6723.0, + "bbox": [1951.0, 301.0, 81.0, 83.0], + "iscrowd": 0 + }, + { + "id": 178, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [39.0, 1931.0, 111.0, 1931.0, 111.0, 2029.0, 39.0, 2029.0, 39.0, 1931.0] + ], + "area": 7056.0, + "bbox": [39.0, 1931.0, 72.0, 98.0], + "iscrowd": 0 + }, + { + "id": 179, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1281.0, 1648.0, 1356.0, 1648.0, 1356.0, 1703.0, 1281.0, 1703.0, + 1281.0, 1648.0 + ] + ], + "area": 4125.0, + "bbox": [1281.0, 1648.0, 75.0, 55.0], + "iscrowd": 0 + }, + { + "id": 180, + "image_id": 2, + "category_id": 3, + "segmentation": [[684.5, 488.0, 657.0, 536.0, 712.0, 536.0]], + "area": 1326.0, + "bbox": [657.0, 488.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 181, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 632.0, 2807.0, 689.0, 2807.0, 689.0, 2886.0, 632.0, 2886.0, 632.0, + 2807.0 + ] + ], + "area": 4503.0, + "bbox": [632.0, 2807.0, 57.0, 79.0], + "iscrowd": 0 + }, + { + "id": 182, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2418.0, 2053.0, 2517.0, 2053.0, 2517.0, 2120.0, 2418.0, 2120.0, + 2418.0, 2053.0 + ] + ], + "area": 6633.0, + "bbox": [2418.0, 2053.0, 99.0, 67.0], + "iscrowd": 0 + }, + { + "id": 183, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 945.0, 1926.0, 1004.0, 1926.0, 1004.0, 1986.0, 945.0, 1986.0, 945.0, + 1926.0 + ] + ], + "area": 3540.0, + "bbox": [945.0, 1926.0, 59.0, 60.0], + "iscrowd": 0 + }, + { + "id": 184, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1637.0, 717.0, 1701.0, 717.0, 1701.0, 804.0, 1637.0, 804.0, 1637.0, + 717.0 + ] + ], + "area": 5568.0, + "bbox": [1637.0, 717.0, 64.0, 87.0], + "iscrowd": 0 + }, + { + "id": 185, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3309.0, 455.0, 3393.0, 455.0, 3393.0, 513.0, 3309.0, 513.0, 3309.0, + 455.0 + ] + ], + "area": 4872.0, + "bbox": [3309.0, 455.0, 84.0, 58.0], + "iscrowd": 0 + }, + { + "id": 186, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1398.0, 884.5, 1397.74, 888.57, 1396.98, 892.58, 1395.72, 896.46, + 1393.98, 900.16, 1391.79, 903.6, 1389.19, 906.75, 1386.22, 909.54, + 1382.91, 911.94, 1379.34, 913.91, 1375.54, 915.41, 1371.59, 916.42, + 1367.54, 916.94, 1363.46, 916.94, 1359.41, 916.42, 1355.46, 915.41, + 1351.66, 913.91, 1348.09, 911.94, 1344.78, 909.54, 1341.81, 906.75, + 1339.21, 903.6, 1337.02, 900.16, 1335.28, 896.46, 1334.02, 892.58, + 1333.26, 888.57, 1333.0, 884.5, 1333.26, 880.43, 1334.02, 876.42, + 1335.28, 872.54, 1337.02, 868.84, 1339.21, 865.4, 1341.81, 862.25, + 1344.78, 859.46, 1348.09, 857.06, 1351.66, 855.09, 1355.46, 853.59, + 1359.41, 852.58, 1363.46, 852.06, 1367.54, 852.06, 1371.59, 852.58, + 1375.54, 853.59, 1379.34, 855.09, 1382.91, 857.06, 1386.22, 859.46, + 1389.19, 862.25, 1391.79, 865.4, 1393.98, 868.84, 1395.72, 872.54, + 1396.98, 876.42, 1397.74, 880.43 + ] + ], + "area": 3315.0, + "bbox": [1333.0, 852.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 187, + "image_id": 2, + "category_id": 3, + "segmentation": [[1603.5, 1675.0, 1576.0, 1723.0, 1631.0, 1723.0]], + "area": 1326.0, + "bbox": [1576.0, 1675.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 188, + "image_id": 2, + "category_id": 3, + "segmentation": [[3341.0, 604.0, 3308.0, 662.0, 3374.0, 662.0]], + "area": 1920.0, + "bbox": [3308.0, 604.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 189, + "image_id": 2, + "category_id": 3, + "segmentation": [[369.0, 320.0, 338.0, 374.0, 400.0, 374.0]], + "area": 1680.0, + "bbox": [338.0, 320.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 190, + "image_id": 2, + "category_id": 3, + "segmentation": [[576.0, 2746.0, 528.0, 2830.0, 624.0, 2830.0]], + "area": 4032.0, + "bbox": [528.0, 2746.0, 96.0, 84.0], + "iscrowd": 0 + }, + { + "id": 191, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2947.5, 2840.0, 2951.32, 2839.76, 2955.09, 2839.04, 2958.73, 2837.86, + 2962.19, 2836.23, 2965.43, 2834.18, 2968.38, 2831.73, 2971.0, 2828.94, + 2973.25, 2825.84, 2975.1, 2822.49, 2976.51, 2818.93, 2977.46, 2815.22, + 2977.94, 2811.42, 2977.94, 2807.58, 2977.46, 2803.78, 2976.51, + 2800.07, 2975.1, 2796.51, 2973.25, 2793.16, 2971.0, 2790.06, 2968.38, + 2787.27, 2965.43, 2784.82, 2962.19, 2782.77, 2958.73, 2781.14, + 2955.09, 2779.96, 2951.32, 2779.24, 2947.5, 2779.0, 2943.68, 2779.24, + 2939.91, 2779.96, 2936.27, 2781.14, 2932.81, 2782.77, 2929.57, + 2784.82, 2926.62, 2787.27, 2924.0, 2790.06, 2921.75, 2793.16, 2919.9, + 2796.51, 2918.49, 2800.07, 2917.54, 2803.78, 2917.06, 2807.58, + 2917.06, 2811.42, 2917.54, 2815.22, 2918.49, 2818.93, 2919.9, 2822.49, + 2921.75, 2825.84, 2924.0, 2828.94, 2926.62, 2831.73, 2929.57, 2834.18, + 2932.81, 2836.23, 2936.27, 2837.86, 2939.91, 2839.04, 2943.68, 2839.76 + ] + ], + "area": 2916.0, + "bbox": [2917.06, 2779.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 192, + "image_id": 2, + "category_id": 3, + "segmentation": [[1110.5, 1913.0, 1076.0, 1973.0, 1145.0, 1973.0]], + "area": 2078.0, + "bbox": [1076.0, 1913.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 193, + "image_id": 2, + "category_id": 3, + "segmentation": [[2311.5, 2756.0, 2266.0, 2835.0, 2357.0, 2835.0]], + "area": 3604.0, + "bbox": [2266.0, 2756.0, 91.0, 79.0], + "iscrowd": 0 + }, + { + "id": 194, + "image_id": 2, + "category_id": 3, + "segmentation": [[2864.0, 2360.0, 2825.0, 2428.0, 2903.0, 2428.0]], + "area": 2660.0, + "bbox": [2825.0, 2360.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 195, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 543.0, 1576.0, 628.0, 1576.0, 628.0, 1665.0, 543.0, 1665.0, 543.0, + 1576.0 + ] + ], + "area": 7565.0, + "bbox": [543.0, 1576.0, 85.0, 89.0], + "iscrowd": 0 + }, + { + "id": 196, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 262.0, 1143.0, 355.0, 1143.0, 355.0, 1207.0, 262.0, 1207.0, 262.0, + 1143.0 + ] + ], + "area": 5952.0, + "bbox": [262.0, 1143.0, 93.0, 64.0], + "iscrowd": 0 + }, + { + "id": 197, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1119.0, 3252.5, 1118.63, 3258.45, 1117.51, 3264.31, 1115.66, 3269.99, + 1113.12, 3275.38, 1109.93, 3280.42, 1106.13, 3285.02, 1101.78, 3289.1, + 1096.95, 3292.61, 1091.72, 3295.48, 1086.18, 3297.68, 1080.4, 3299.16, + 1074.48, 3299.91, 1068.52, 3299.91, 1062.6, 3299.16, 1056.82, 3297.68, + 1051.28, 3295.48, 1046.05, 3292.61, 1041.22, 3289.1, 1036.87, 3285.02, + 1033.07, 3280.42, 1029.88, 3275.38, 1027.34, 3269.99, 1025.49, + 3264.31, 1024.37, 3258.45, 1024.0, 3252.5, 1024.37, 3246.55, 1025.49, + 3240.69, 1027.34, 3235.01, 1029.88, 3229.62, 1033.07, 3224.58, + 1036.87, 3219.98, 1041.22, 3215.9, 1046.05, 3212.39, 1051.28, 3209.52, + 1056.82, 3207.32, 1062.6, 3205.84, 1068.52, 3205.09, 1074.48, 3205.09, + 1080.4, 3205.84, 1086.18, 3207.32, 1091.72, 3209.52, 1096.95, 3212.39, + 1101.78, 3215.9, 1106.13, 3219.98, 1109.93, 3224.58, 1113.12, 3229.62, + 1115.66, 3235.01, 1117.51, 3240.69, 1118.63, 3246.55 + ] + ], + "area": 7083.0, + "bbox": [1024.0, 3205.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 198, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2534.0, 1874.5, 2533.73, 1878.82, 2532.92, 1883.08, 2531.58, 1887.2, + 2529.73, 1891.12, 2527.41, 1894.78, 2524.65, 1898.12, 2521.49, + 1901.08, 2517.99, 1903.63, 2514.19, 1905.72, 2510.16, 1907.31, + 2505.96, 1908.39, 2501.67, 1908.93, 2497.33, 1908.93, 2493.04, + 1908.39, 2488.84, 1907.31, 2484.81, 1905.72, 2481.01, 1903.63, + 2477.51, 1901.08, 2474.35, 1898.12, 2471.59, 1894.78, 2469.27, + 1891.12, 2467.42, 1887.2, 2466.08, 1883.08, 2465.27, 1878.82, 2465.0, + 1874.5, 2465.27, 1870.18, 2466.08, 1865.92, 2467.42, 1861.8, 2469.27, + 1857.88, 2471.59, 1854.22, 2474.35, 1850.88, 2477.51, 1847.92, + 2481.01, 1845.37, 2484.81, 1843.28, 2488.84, 1841.69, 2493.04, + 1840.61, 2497.33, 1840.07, 2501.67, 1840.07, 2505.96, 1840.61, + 2510.16, 1841.69, 2514.19, 1843.28, 2517.99, 1845.37, 2521.49, + 1847.92, 2524.65, 1850.88, 2527.41, 1854.22, 2529.73, 1857.88, + 2531.58, 1861.8, 2532.92, 1865.92, 2533.73, 1870.18 + ] + ], + "area": 3743.0, + "bbox": [2465.0, 1840.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 199, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 111.0, 2173.0, 202.0, 2173.0, 202.0, 2242.0, 111.0, 2242.0, 111.0, + 2173.0 + ] + ], + "area": 6279.0, + "bbox": [111.0, 2173.0, 91.0, 69.0], + "iscrowd": 0 + }, + { + "id": 200, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2545.0, 1541.0, 2609.0, 1541.0, 2609.0, 1609.0, 2545.0, 1609.0, + 2545.0, 1541.0 + ] + ], + "area": 4352.0, + "bbox": [2545.0, 1541.0, 64.0, 68.0], + "iscrowd": 0 + }, + { + "id": 201, + "image_id": 2, + "category_id": 3, + "segmentation": [[511.5, 1085.0, 478.0, 1144.0, 545.0, 1144.0]], + "area": 1985.0, + "bbox": [478.0, 1085.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 202, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 686.0, 2165.5, 685.69, 2170.45, 684.76, 2175.32, 683.23, 2180.04, + 681.11, 2184.53, 678.46, 2188.72, 675.29, 2192.54, 671.68, 2195.94, + 667.67, 2198.85, 663.32, 2201.24, 658.71, 2203.07, 653.9, 2204.3, + 648.98, 2204.92, 644.02, 2204.92, 639.1, 2204.3, 634.29, 2203.07, + 629.68, 2201.24, 625.33, 2198.85, 621.32, 2195.94, 617.71, 2192.54, + 614.54, 2188.72, 611.89, 2184.53, 609.77, 2180.04, 608.24, 2175.32, + 607.31, 2170.45, 607.0, 2165.5, 607.31, 2160.55, 608.24, 2155.68, + 609.77, 2150.96, 611.89, 2146.47, 614.54, 2142.28, 617.71, 2138.46, + 621.32, 2135.06, 625.33, 2132.15, 629.68, 2129.76, 634.29, 2127.93, + 639.1, 2126.7, 644.02, 2126.08, 648.98, 2126.08, 653.9, 2126.7, + 658.71, 2127.93, 663.32, 2129.76, 667.67, 2132.15, 671.68, 2135.06, + 675.29, 2138.46, 678.46, 2142.28, 681.11, 2146.47, 683.23, 2150.96, + 684.76, 2155.68, 685.69, 2160.55 + ] + ], + "area": 4893.0, + "bbox": [607.0, 2126.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 203, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 440.5, 2175.0, 445.83, 2174.66, 451.07, 2173.66, 456.15, 2172.02, + 460.97, 2169.74, 465.48, 2166.88, 469.59, 2163.48, 473.25, 2159.59, + 476.38, 2155.27, 478.96, 2150.6, 480.92, 2145.63, 482.25, 2140.46, + 482.92, 2135.17, 482.92, 2129.83, 482.25, 2124.54, 480.92, 2119.37, + 478.96, 2114.4, 476.38, 2109.73, 473.25, 2105.41, 469.59, 2101.52, + 465.48, 2098.12, 460.97, 2095.26, 456.15, 2092.98, 451.07, 2091.34, + 445.83, 2090.34, 440.5, 2090.0, 435.17, 2090.34, 429.93, 2091.34, + 424.85, 2092.98, 420.03, 2095.26, 415.52, 2098.12, 411.41, 2101.52, + 407.75, 2105.41, 404.62, 2109.73, 402.04, 2114.4, 400.08, 2119.37, + 398.75, 2124.54, 398.08, 2129.83, 398.08, 2135.17, 398.75, 2140.46, + 400.08, 2145.63, 402.04, 2150.6, 404.62, 2155.27, 407.75, 2159.59, + 411.41, 2163.48, 415.52, 2166.88, 420.03, 2169.74, 424.85, 2172.02, + 429.93, 2173.66, 435.17, 2174.66 + ] + ], + "area": 5651.0, + "bbox": [398.08, 2090.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 204, + "image_id": 2, + "category_id": 3, + "segmentation": [[2045.5, 28.0, 2008.0, 94.0, 2083.0, 94.0]], + "area": 2485.0, + "bbox": [2008.0, 28.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 205, + "image_id": 2, + "category_id": 3, + "segmentation": [[2287.5, 1807.0, 2245.0, 1881.0, 2330.0, 1881.0]], + "area": 3154.0, + "bbox": [2245.0, 1807.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 206, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2545.0, 818.5, 2544.78, 821.95, 2544.14, 825.34, 2543.07, 828.62, + 2541.6, 831.75, 2539.75, 834.66, 2537.55, 837.33, 2535.03, 839.69, + 2532.24, 841.72, 2529.21, 843.38, 2526.0, 844.65, 2522.65, 845.51, + 2519.23, 845.95, 2515.77, 845.95, 2512.35, 845.51, 2509.0, 844.65, + 2505.79, 843.38, 2502.76, 841.72, 2499.97, 839.69, 2497.45, 837.33, + 2495.25, 834.66, 2493.4, 831.75, 2491.93, 828.62, 2490.86, 825.34, + 2490.22, 821.95, 2490.0, 818.5, 2490.22, 815.05, 2490.86, 811.66, + 2491.93, 808.38, 2493.4, 805.25, 2495.25, 802.34, 2497.45, 799.67, + 2499.97, 797.31, 2502.76, 795.28, 2505.79, 793.62, 2509.0, 792.35, + 2512.35, 791.49, 2515.77, 791.05, 2519.23, 791.05, 2522.65, 791.49, + 2526.0, 792.35, 2529.21, 793.62, 2532.24, 795.28, 2535.03, 797.31, + 2537.55, 799.67, 2539.75, 802.34, 2541.6, 805.25, 2543.07, 808.38, + 2544.14, 811.66, 2544.78, 815.05 + ] + ], + "area": 2375.0, + "bbox": [2490.0, 791.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 207, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2152.0, 956.5, 2151.63, 962.33, 2150.54, 968.06, 2148.73, 973.62, + 2146.25, 978.9, 2143.12, 983.83, 2139.4, 988.33, 2135.14, 992.33, + 2130.42, 995.76, 2125.3, 998.57, 2119.87, 1000.72, 2114.21, 1002.18, + 2108.42, 1002.91, 2102.58, 1002.91, 2096.79, 1002.18, 2091.13, + 1000.72, 2085.7, 998.57, 2080.58, 995.76, 2075.86, 992.33, 2071.6, + 988.33, 2067.88, 983.83, 2064.75, 978.9, 2062.27, 973.62, 2060.46, + 968.06, 2059.37, 962.33, 2059.0, 956.5, 2059.37, 950.67, 2060.46, + 944.94, 2062.27, 939.38, 2064.75, 934.1, 2067.88, 929.17, 2071.6, + 924.67, 2075.86, 920.67, 2080.58, 917.24, 2085.7, 914.43, 2091.13, + 912.28, 2096.79, 910.82, 2102.58, 910.09, 2108.42, 910.09, 2114.21, + 910.82, 2119.87, 912.28, 2125.3, 914.43, 2130.42, 917.24, 2135.14, + 920.67, 2139.4, 924.67, 2143.12, 929.17, 2146.25, 934.1, 2148.73, + 939.38, 2150.54, 944.94, 2151.63, 950.67 + ] + ], + "area": 6782.0, + "bbox": [2059.0, 910.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 208, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1648.0, 596.0, 1707.0, 596.0, 1707.0, 651.0, 1648.0, 651.0, 1648.0, + 596.0 + ] + ], + "area": 3245.0, + "bbox": [1648.0, 596.0, 59.0, 55.0], + "iscrowd": 0 + }, + { + "id": 209, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3167.0, 786.0, 3234.0, 786.0, 3234.0, 865.0, 3167.0, 865.0, 3167.0, + 786.0 + ] + ], + "area": 5293.0, + "bbox": [3167.0, 786.0, 67.0, 79.0], + "iscrowd": 0 + }, + { + "id": 210, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 205.0, 1049.0, 278.0, 1049.0, 278.0, 1106.0, 205.0, 1106.0, 205.0, + 1049.0 + ] + ], + "area": 4161.0, + "bbox": [205.0, 1049.0, 73.0, 57.0], + "iscrowd": 0 + }, + { + "id": 211, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2048.0, 3354.0, 2129.0, 3354.0, 2129.0, 3429.0, 2048.0, 3429.0, + 2048.0, 3354.0 + ] + ], + "area": 6075.0, + "bbox": [2048.0, 3354.0, 81.0, 75.0], + "iscrowd": 0 + }, + { + "id": 212, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3242.0, 3424.5, 3241.72, 3428.95, 3240.88, 3433.33, 3239.51, 3437.57, + 3237.61, 3441.6, 3235.22, 3445.37, 3232.38, 3448.8, 3229.13, 3451.85, + 3225.52, 3454.47, 3221.62, 3456.62, 3217.47, 3458.26, 3213.15, + 3459.37, 3208.73, 3459.93, 3204.27, 3459.93, 3199.85, 3459.37, + 3195.53, 3458.26, 3191.38, 3456.62, 3187.48, 3454.47, 3183.87, + 3451.85, 3180.62, 3448.8, 3177.78, 3445.37, 3175.39, 3441.6, 3173.49, + 3437.57, 3172.12, 3433.33, 3171.28, 3428.95, 3171.0, 3424.5, 3171.28, + 3420.05, 3172.12, 3415.67, 3173.49, 3411.43, 3175.39, 3407.4, 3177.78, + 3403.63, 3180.62, 3400.2, 3183.87, 3397.15, 3187.48, 3394.53, 3191.38, + 3392.38, 3195.53, 3390.74, 3199.85, 3389.63, 3204.27, 3389.07, + 3208.73, 3389.07, 3213.15, 3389.63, 3217.47, 3390.74, 3221.62, + 3392.38, 3225.52, 3394.53, 3229.13, 3397.15, 3232.38, 3400.2, 3235.22, + 3403.63, 3237.61, 3407.4, 3239.51, 3411.43, 3240.88, 3415.67, 3241.72, + 3420.05 + ] + ], + "area": 3957.0, + "bbox": [3171.0, 3389.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 213, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3335.0, 930.0, 3430.0, 930.0, 3430.0, 1017.0, 3335.0, 1017.0, 3335.0, + 930.0 + ] + ], + "area": 8265.0, + "bbox": [3335.0, 930.0, 95.0, 87.0], + "iscrowd": 0 + }, + { + "id": 214, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 396.0, 3192.0, 461.0, 3192.0, 461.0, 3257.0, 396.0, 3257.0, 396.0, + 3192.0 + ] + ], + "area": 4225.0, + "bbox": [396.0, 3192.0, 65.0, 65.0], + "iscrowd": 0 + }, + { + "id": 215, + "image_id": 2, + "category_id": 3, + "segmentation": [[1532.5, 1594.0, 1493.0, 1663.0, 1572.0, 1663.0]], + "area": 2734.0, + "bbox": [1493.0, 1594.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 216, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3198.0, 2363.0, 3252.0, 2363.0, 3252.0, 2461.0, 3198.0, 2461.0, + 3198.0, 2363.0 + ] + ], + "area": 5292.0, + "bbox": [3198.0, 2363.0, 54.0, 98.0], + "iscrowd": 0 + }, + { + "id": 217, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1022.5, 135.0, 1028.33, 134.63, 1034.06, 133.54, 1039.62, 131.73, + 1044.9, 129.25, 1049.83, 126.12, 1054.33, 122.4, 1058.33, 118.14, + 1061.76, 113.42, 1064.57, 108.3, 1066.72, 102.87, 1068.18, 97.21, + 1068.91, 91.42, 1068.91, 85.58, 1068.18, 79.79, 1066.72, 74.13, + 1064.57, 68.7, 1061.76, 63.58, 1058.33, 58.86, 1054.33, 54.6, 1049.83, + 50.88, 1044.9, 47.75, 1039.62, 45.27, 1034.06, 43.46, 1028.33, 42.37, + 1022.5, 42.0, 1016.67, 42.37, 1010.94, 43.46, 1005.38, 45.27, 1000.1, + 47.75, 995.17, 50.88, 990.67, 54.6, 986.67, 58.86, 983.24, 63.58, + 980.43, 68.7, 978.28, 74.13, 976.82, 79.79, 976.09, 85.58, 976.09, + 91.42, 976.82, 97.21, 978.28, 102.87, 980.43, 108.3, 983.24, 113.42, + 986.67, 118.14, 990.67, 122.4, 995.17, 126.12, 1000.1, 129.25, + 1005.38, 131.73, 1010.94, 133.54, 1016.67, 134.63 + ] + ], + "area": 6781.0, + "bbox": [976.09, 42.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 218, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2051.0, 1791.0, 2130.0, 1791.0, 2130.0, 1858.0, 2051.0, 1858.0, + 2051.0, 1791.0 + ] + ], + "area": 5293.0, + "bbox": [2051.0, 1791.0, 79.0, 67.0], + "iscrowd": 0 + }, + { + "id": 219, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2477.0, 2155.0, 2562.0, 2155.0, 2562.0, 2228.0, 2477.0, 2228.0, + 2477.0, 2155.0 + ] + ], + "area": 6205.0, + "bbox": [2477.0, 2155.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 220, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2537.0, 357.0, 2588.0, 357.0, 2588.0, 424.0, 2537.0, 424.0, 2537.0, + 357.0 + ] + ], + "area": 3417.0, + "bbox": [2537.0, 357.0, 51.0, 67.0], + "iscrowd": 0 + }, + { + "id": 221, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3017.0, 1028.0, 3082.0, 1028.0, 3082.0, 1117.0, 3017.0, 1117.0, + 3017.0, 1028.0 + ] + ], + "area": 5785.0, + "bbox": [3017.0, 1028.0, 65.0, 89.0], + "iscrowd": 0 + }, + { + "id": 222, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3225.0, 446.0, 3304.0, 446.0, 3304.0, 525.0, 3225.0, 525.0, 3225.0, + 446.0 + ] + ], + "area": 6241.0, + "bbox": [3225.0, 446.0, 79.0, 79.0], + "iscrowd": 0 + }, + { + "id": 223, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3182.0, 1237.0, 3255.0, 1237.0, 3255.0, 1330.0, 3182.0, 1330.0, + 3182.0, 1237.0 + ] + ], + "area": 6789.0, + "bbox": [3182.0, 1237.0, 73.0, 93.0], + "iscrowd": 0 + }, + { + "id": 224, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3264.0, 2264.0, 3347.0, 2264.0, 3347.0, 2339.0, 3264.0, 2339.0, + 3264.0, 2264.0 + ] + ], + "area": 6225.0, + "bbox": [3264.0, 2264.0, 83.0, 75.0], + "iscrowd": 0 + }, + { + "id": 225, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2541.5, 2147.0, 2544.82, 2146.79, 2548.09, 2146.17, 2551.26, 2145.14, + 2554.27, 2143.72, 2557.08, 2141.94, 2559.64, 2139.82, 2561.92, + 2137.39, 2563.87, 2134.7, 2565.48, 2131.78, 2566.7, 2128.69, 2567.53, + 2125.47, 2567.95, 2122.16, 2567.95, 2118.84, 2567.53, 2115.53, 2566.7, + 2112.31, 2565.48, 2109.22, 2563.87, 2106.3, 2561.92, 2103.61, 2559.64, + 2101.18, 2557.08, 2099.06, 2554.27, 2097.28, 2551.26, 2095.86, + 2548.09, 2094.83, 2544.82, 2094.21, 2541.5, 2094.0, 2538.18, 2094.21, + 2534.91, 2094.83, 2531.74, 2095.86, 2528.73, 2097.28, 2525.92, + 2099.06, 2523.36, 2101.18, 2521.08, 2103.61, 2519.13, 2106.3, 2517.52, + 2109.22, 2516.3, 2112.31, 2515.47, 2115.53, 2515.05, 2118.84, 2515.05, + 2122.16, 2515.47, 2125.47, 2516.3, 2128.69, 2517.52, 2131.78, 2519.13, + 2134.7, 2521.08, 2137.39, 2523.36, 2139.82, 2525.92, 2141.94, 2528.73, + 2143.72, 2531.74, 2145.14, 2534.91, 2146.17, 2538.18, 2146.79 + ] + ], + "area": 2205.0, + "bbox": [2515.05, 2094.0, 52.9, 53.0], + "iscrowd": 0 + }, + { + "id": 226, + "image_id": 2, + "category_id": 3, + "segmentation": [[1416.5, 1788.0, 1374.0, 1862.0, 1459.0, 1862.0]], + "area": 3154.0, + "bbox": [1374.0, 1788.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 227, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1984.0, 2464.0, 2039.0, 2464.0, 2039.0, 2557.0, 1984.0, 2557.0, + 1984.0, 2464.0 + ] + ], + "area": 5115.0, + "bbox": [1984.0, 2464.0, 55.0, 93.0], + "iscrowd": 0 + }, + { + "id": 228, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3361.0, 2612.0, 3443.0, 2612.0, 3443.0, 2705.0, 3361.0, 2705.0, + 3361.0, 2612.0 + ] + ], + "area": 7626.0, + "bbox": [3361.0, 2612.0, 82.0, 93.0], + "iscrowd": 0 + }, + { + "id": 229, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2168.0, 482.0, 2254.0, 482.0, 2254.0, 549.0, 2168.0, 549.0, 2168.0, + 482.0 + ] + ], + "area": 5762.0, + "bbox": [2168.0, 482.0, 86.0, 67.0], + "iscrowd": 0 + }, + { + "id": 230, + "image_id": 2, + "category_id": 3, + "segmentation": [[2141.0, 1872.0, 2111.0, 1925.0, 2171.0, 1925.0]], + "area": 1596.0, + "bbox": [2111.0, 1872.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 231, + "image_id": 2, + "category_id": 3, + "segmentation": [[2382.5, 2995.0, 2347.0, 3057.0, 2418.0, 3057.0]], + "area": 2209.0, + "bbox": [2347.0, 2995.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 232, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 353.0, 2685.0, 435.0, 2685.0, 435.0, 2766.0, 353.0, 2766.0, 353.0, + 2685.0 + ] + ], + "area": 6642.0, + "bbox": [353.0, 2685.0, 82.0, 81.0], + "iscrowd": 0 + }, + { + "id": 233, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3022.0, 807.0, 3080.0, 807.0, 3080.0, 896.0, 3022.0, 896.0, 3022.0, + 807.0 + ] + ], + "area": 5162.0, + "bbox": [3022.0, 807.0, 58.0, 89.0], + "iscrowd": 0 + }, + { + "id": 234, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3229.0, 2736.0, 3312.0, 2736.0, 3312.0, 2817.0, 3229.0, 2817.0, + 3229.0, 2736.0 + ] + ], + "area": 6723.0, + "bbox": [3229.0, 2736.0, 83.0, 81.0], + "iscrowd": 0 + }, + { + "id": 235, + "image_id": 2, + "category_id": 3, + "segmentation": [[3011.5, 1331.0, 2979.0, 1388.0, 3044.0, 1388.0]], + "area": 1857.0, + "bbox": [2979.0, 1331.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 236, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1273.0, 2571.0, 1340.0, 2571.0, 1340.0, 2658.0, 1273.0, 2658.0, + 1273.0, 2571.0 + ] + ], + "area": 5829.0, + "bbox": [1273.0, 2571.0, 67.0, 87.0], + "iscrowd": 0 + }, + { + "id": 237, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1103.0, 1092.0, 1184.0, 1092.0, 1184.0, 1181.0, 1103.0, 1181.0, + 1103.0, 1092.0 + ] + ], + "area": 7209.0, + "bbox": [1103.0, 1092.0, 81.0, 89.0], + "iscrowd": 0 + }, + { + "id": 238, + "image_id": 2, + "category_id": 3, + "segmentation": [[559.5, 865.0, 526.0, 924.0, 593.0, 924.0]], + "area": 1985.0, + "bbox": [526.0, 865.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 239, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3083.0, 3206.0, 3172.0, 3206.0, 3172.0, 3256.0, 3083.0, 3256.0, + 3083.0, 3206.0 + ] + ], + "area": 4450.0, + "bbox": [3083.0, 3206.0, 89.0, 50.0], + "iscrowd": 0 + }, + { + "id": 240, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2978.5, 1607.0, 2982.32, 1606.76, 2986.09, 1606.04, 2989.73, 1604.86, + 2993.19, 1603.23, 2996.43, 1601.18, 2999.38, 1598.73, 3002.0, 1595.94, + 3004.25, 1592.84, 3006.1, 1589.49, 3007.51, 1585.93, 3008.46, 1582.22, + 3008.94, 1578.42, 3008.94, 1574.58, 3008.46, 1570.78, 3007.51, + 1567.07, 3006.1, 1563.51, 3004.25, 1560.16, 3002.0, 1557.06, 2999.38, + 1554.27, 2996.43, 1551.82, 2993.19, 1549.77, 2989.73, 1548.14, + 2986.09, 1546.96, 2982.32, 1546.24, 2978.5, 1546.0, 2974.68, 1546.24, + 2970.91, 1546.96, 2967.27, 1548.14, 2963.81, 1549.77, 2960.57, + 1551.82, 2957.62, 1554.27, 2955.0, 1557.06, 2952.75, 1560.16, 2950.9, + 1563.51, 2949.49, 1567.07, 2948.54, 1570.78, 2948.06, 1574.58, + 2948.06, 1578.42, 2948.54, 1582.22, 2949.49, 1585.93, 2950.9, 1589.49, + 2952.75, 1592.84, 2955.0, 1595.94, 2957.62, 1598.73, 2960.57, 1601.18, + 2963.81, 1603.23, 2967.27, 1604.86, 2970.91, 1606.04, 2974.68, 1606.76 + ] + ], + "area": 2916.0, + "bbox": [2948.06, 1546.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 241, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 693.5, 1533.0, 699.58, 1532.62, 705.56, 1531.48, 711.35, 1529.59, + 716.87, 1527.0, 722.01, 1523.74, 726.7, 1519.85, 730.87, 1515.42, + 734.45, 1510.49, 737.38, 1505.15, 739.63, 1499.49, 741.14, 1493.59, + 741.9, 1487.55, 741.9, 1481.45, 741.14, 1475.41, 739.63, 1469.51, + 737.38, 1463.85, 734.45, 1458.51, 730.87, 1453.58, 726.7, 1449.15, + 722.01, 1445.26, 716.87, 1442.0, 711.35, 1439.41, 705.56, 1437.52, + 699.58, 1436.38, 693.5, 1436.0, 687.42, 1436.38, 681.44, 1437.52, + 675.65, 1439.41, 670.13, 1442.0, 664.99, 1445.26, 660.3, 1449.15, + 656.13, 1453.58, 652.55, 1458.51, 649.62, 1463.85, 647.37, 1469.51, + 645.86, 1475.41, 645.1, 1481.45, 645.1, 1487.55, 645.86, 1493.59, + 647.37, 1499.49, 649.62, 1505.15, 652.55, 1510.49, 656.13, 1515.42, + 660.3, 1519.85, 664.99, 1523.74, 670.13, 1527.0, 675.65, 1529.59, + 681.44, 1531.48, 687.42, 1532.62 + ] + ], + "area": 7380.0, + "bbox": [645.1, 1436.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 242, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2574.0, 2909.0, 2642.0, 2909.0, 2642.0, 2973.0, 2574.0, 2973.0, + 2574.0, 2909.0 + ] + ], + "area": 4352.0, + "bbox": [2574.0, 2909.0, 68.0, 64.0], + "iscrowd": 0 + }, + { + "id": 243, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2828.0, 1895.0, 2885.0, 1895.0, 2885.0, 1958.0, 2828.0, 1958.0, + 2828.0, 1895.0 + ] + ], + "area": 3591.0, + "bbox": [2828.0, 1895.0, 57.0, 63.0], + "iscrowd": 0 + }, + { + "id": 244, + "image_id": 2, + "category_id": 3, + "segmentation": [[1070.0, 2489.0, 1036.0, 2549.0, 1104.0, 2549.0]], + "area": 2048.0, + "bbox": [1036.0, 2489.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 245, + "image_id": 2, + "category_id": 3, + "segmentation": [[368.5, 1030.0, 328.0, 1101.0, 409.0, 1101.0]], + "area": 2881.0, + "bbox": [328.0, 1030.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 246, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1204.0, 812.5, 1203.63, 818.33, 1202.54, 824.06, 1200.73, 829.62, + 1198.25, 834.9, 1195.12, 839.83, 1191.4, 844.33, 1187.14, 848.33, + 1182.42, 851.76, 1177.3, 854.57, 1171.87, 856.72, 1166.21, 858.18, + 1160.42, 858.91, 1154.58, 858.91, 1148.79, 858.18, 1143.13, 856.72, + 1137.7, 854.57, 1132.58, 851.76, 1127.86, 848.33, 1123.6, 844.33, + 1119.88, 839.83, 1116.75, 834.9, 1114.27, 829.62, 1112.46, 824.06, + 1111.37, 818.33, 1111.0, 812.5, 1111.37, 806.67, 1112.46, 800.94, + 1114.27, 795.38, 1116.75, 790.1, 1119.88, 785.17, 1123.6, 780.67, + 1127.86, 776.67, 1132.58, 773.24, 1137.7, 770.43, 1143.13, 768.28, + 1148.79, 766.82, 1154.58, 766.09, 1160.42, 766.09, 1166.21, 766.82, + 1171.87, 768.28, 1177.3, 770.43, 1182.42, 773.24, 1187.14, 776.67, + 1191.4, 780.67, 1195.12, 785.17, 1198.25, 790.1, 1200.73, 795.38, + 1202.54, 800.94, 1203.63, 806.67 + ] + ], + "area": 6782.0, + "bbox": [1111.0, 766.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 247, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 2497.0, 1858.0, 2586.0, 1858.0, 2586.0, 1923.0, 2497.0, 1923.0, + 2497.0, 1858.0 + ] + ], + "area": 5785.0, + "bbox": [2497.0, 1858.0, 89.0, 65.0], + "iscrowd": 0 + }, + { + "id": 248, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 1882.0, 2814.0, 1953.0, 2814.0, 1953.0, 2903.0, 1882.0, 2903.0, + 1882.0, 2814.0 + ] + ], + "area": 6319.0, + "bbox": [1882.0, 2814.0, 71.0, 89.0], + "iscrowd": 0 + }, + { + "id": 249, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 2744.0, 1094.0, 2841.0, 1094.0, 2841.0, 1147.0, 2744.0, 1147.0, + 2744.0, 1094.0 + ] + ], + "area": 5141.0, + "bbox": [2744.0, 1094.0, 97.0, 53.0], + "iscrowd": 0 + }, + { + "id": 250, + "image_id": 3, + "category_id": 3, + "segmentation": [[2941.0, 1451.0, 2910.0, 1505.0, 2972.0, 1505.0]], + "area": 1680.0, + "bbox": [2910.0, 1451.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 251, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 3231.0, 1630.0, 3307.0, 1630.0, 3307.0, 1721.0, 3231.0, 1721.0, + 3231.0, 1630.0 + ] + ], + "area": 6916.0, + "bbox": [3231.0, 1630.0, 76.0, 91.0], + "iscrowd": 0 + }, + { + "id": 252, + "image_id": 3, + "category_id": 3, + "segmentation": [[3444.0, 2105.0, 3407.0, 2170.0, 3481.0, 2170.0]], + "area": 2412.0, + "bbox": [3407.0, 2105.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 253, + "image_id": 3, + "category_id": 3, + "segmentation": [[219.5, 2755.0, 188.0, 2810.0, 251.0, 2810.0]], + "area": 1739.0, + "bbox": [188.0, 2755.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 254, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 3062.0, 1796.0, 3123.0, 1796.0, 3123.0, 1851.0, 3062.0, 1851.0, + 3062.0, 1796.0 + ] + ], + "area": 3355.0, + "bbox": [3062.0, 1796.0, 61.0, 55.0], + "iscrowd": 0 + }, + { + "id": 255, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 2433.0, 1383.0, 2499.0, 1383.0, 2499.0, 1454.0, 2433.0, 1454.0, + 2433.0, 1383.0 + ] + ], + "area": 4686.0, + "bbox": [2433.0, 1383.0, 66.0, 71.0], + "iscrowd": 0 + }, + { + "id": 256, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 1290.0, 3359.0, 1383.0, 3359.0, 1383.0, 3438.0, 1290.0, 3438.0, + 1290.0, 3359.0 + ] + ], + "area": 7347.0, + "bbox": [1290.0, 3359.0, 93.0, 79.0], + "iscrowd": 0 + }, + { + "id": 257, + "image_id": 4, + "category_id": 3, + "segmentation": [[1035.0, 3288.0, 1004.0, 3342.0, 1066.0, 3342.0]], + "area": 1680.0, + "bbox": [1004.0, 3288.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 258, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 759.0, 2638.5, 758.76, 2642.32, 758.04, 2646.09, 756.86, 2649.73, + 755.23, 2653.19, 753.18, 2656.43, 750.73, 2659.38, 747.94, 2662.0, + 744.84, 2664.25, 741.49, 2666.1, 737.93, 2667.51, 734.22, 2668.46, + 730.42, 2668.94, 726.58, 2668.94, 722.78, 2668.46, 719.07, 2667.51, + 715.51, 2666.1, 712.16, 2664.25, 709.06, 2662.0, 706.27, 2659.38, + 703.82, 2656.43, 701.77, 2653.19, 700.14, 2649.73, 698.96, 2646.09, + 698.24, 2642.32, 698.0, 2638.5, 698.24, 2634.68, 698.96, 2630.91, + 700.14, 2627.27, 701.77, 2623.81, 703.82, 2620.57, 706.27, 2617.62, + 709.06, 2615.0, 712.16, 2612.75, 715.51, 2610.9, 719.07, 2609.49, + 722.78, 2608.54, 726.58, 2608.06, 730.42, 2608.06, 734.22, 2608.54, + 737.93, 2609.49, 741.49, 2610.9, 744.84, 2612.75, 747.94, 2615.0, + 750.73, 2617.62, 753.18, 2620.57, 755.23, 2623.81, 756.86, 2627.27, + 758.04, 2630.91, 758.76, 2634.68 + ] + ], + "area": 2915.0, + "bbox": [698.0, 2608.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 259, + "image_id": 4, + "category_id": 3, + "segmentation": [[1317.0, 2457.0, 1278.0, 2525.0, 1356.0, 2525.0]], + "area": 2660.0, + "bbox": [1278.0, 2457.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 260, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 3397.0, 476.5, 3396.63, 482.33, 3395.54, 488.06, 3393.73, 493.62, + 3391.25, 498.9, 3388.12, 503.83, 3384.4, 508.33, 3380.14, 512.33, + 3375.42, 515.76, 3370.3, 518.57, 3364.87, 520.72, 3359.21, 522.18, + 3353.42, 522.91, 3347.58, 522.91, 3341.79, 522.18, 3336.13, 520.72, + 3330.7, 518.57, 3325.58, 515.76, 3320.86, 512.33, 3316.6, 508.33, + 3312.88, 503.83, 3309.75, 498.9, 3307.27, 493.62, 3305.46, 488.06, + 3304.37, 482.33, 3304.0, 476.5, 3304.37, 470.67, 3305.46, 464.94, + 3307.27, 459.38, 3309.75, 454.1, 3312.88, 449.17, 3316.6, 444.67, + 3320.86, 440.67, 3325.58, 437.24, 3330.7, 434.43, 3336.13, 432.28, + 3341.79, 430.82, 3347.58, 430.09, 3353.42, 430.09, 3359.21, 430.82, + 3364.87, 432.28, 3370.3, 434.43, 3375.42, 437.24, 3380.14, 440.67, + 3384.4, 444.67, 3388.12, 449.17, 3391.25, 454.1, 3393.73, 459.38, + 3395.54, 464.94, 3396.63, 470.67 + ] + ], + "area": 6782.0, + "bbox": [3304.0, 430.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 261, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 452.0, 1431.5, 451.78, 1434.95, 451.14, 1438.34, 450.07, 1441.62, + 448.6, 1444.75, 446.75, 1447.66, 444.55, 1450.33, 442.03, 1452.69, + 439.24, 1454.72, 436.21, 1456.38, 433.0, 1457.65, 429.65, 1458.51, + 426.23, 1458.95, 422.77, 1458.95, 419.35, 1458.51, 416.0, 1457.65, + 412.79, 1456.38, 409.76, 1454.72, 406.97, 1452.69, 404.45, 1450.33, + 402.25, 1447.66, 400.4, 1444.75, 398.93, 1441.62, 397.86, 1438.34, + 397.22, 1434.95, 397.0, 1431.5, 397.22, 1428.05, 397.86, 1424.66, + 398.93, 1421.38, 400.4, 1418.25, 402.25, 1415.34, 404.45, 1412.67, + 406.97, 1410.31, 409.76, 1408.28, 412.79, 1406.62, 416.0, 1405.35, + 419.35, 1404.49, 422.77, 1404.05, 426.23, 1404.05, 429.65, 1404.49, + 433.0, 1405.35, 436.21, 1406.62, 439.24, 1408.28, 442.03, 1410.31, + 444.55, 1412.67, 446.75, 1415.34, 448.6, 1418.25, 450.07, 1421.38, + 451.14, 1424.66, 451.78, 1428.05 + ] + ], + "area": 2375.0, + "bbox": [397.0, 1404.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 262, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1957.0, 595.0, 2028.0, 595.0, 2028.0, 682.0, 1957.0, 682.0, 1957.0, + 595.0 + ] + ], + "area": 6177.0, + "bbox": [1957.0, 595.0, 71.0, 87.0], + "iscrowd": 0 + }, + { + "id": 263, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2530.0, 2468.0, 2587.0, 2468.0, 2587.0, 2535.0, 2530.0, 2535.0, + 2530.0, 2468.0 + ] + ], + "area": 3819.0, + "bbox": [2530.0, 2468.0, 57.0, 67.0], + "iscrowd": 0 + }, + { + "id": 264, + "image_id": 4, + "category_id": 3, + "segmentation": [[1788.0, 350.0, 1747.0, 422.0, 1829.0, 422.0]], + "area": 2960.0, + "bbox": [1747.0, 350.0, 82.0, 72.0], + "iscrowd": 0 + }, + { + "id": 265, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 3437.0, 2325.5, 3436.72, 2329.95, 3435.88, 2334.33, 3434.51, 2338.57, + 3432.61, 2342.6, 3430.22, 2346.37, 3427.38, 2349.8, 3424.13, 2352.85, + 3420.52, 2355.47, 3416.62, 2357.62, 3412.47, 2359.26, 3408.15, + 2360.37, 3403.73, 2360.93, 3399.27, 2360.93, 3394.85, 2360.37, + 3390.53, 2359.26, 3386.38, 2357.62, 3382.48, 2355.47, 3378.87, + 2352.85, 3375.62, 2349.8, 3372.78, 2346.37, 3370.39, 2342.6, 3368.49, + 2338.57, 3367.12, 2334.33, 3366.28, 2329.95, 3366.0, 2325.5, 3366.28, + 2321.05, 3367.12, 2316.67, 3368.49, 2312.43, 3370.39, 2308.4, 3372.78, + 2304.63, 3375.62, 2301.2, 3378.87, 2298.15, 3382.48, 2295.53, 3386.38, + 2293.38, 3390.53, 2291.74, 3394.85, 2290.63, 3399.27, 2290.07, + 3403.73, 2290.07, 3408.15, 2290.63, 3412.47, 2291.74, 3416.62, + 2293.38, 3420.52, 2295.53, 3424.13, 2298.15, 3427.38, 2301.2, 3430.22, + 2304.63, 3432.61, 2308.4, 3434.51, 2312.43, 3435.88, 2316.67, 3436.72, + 2321.05 + ] + ], + "area": 3957.0, + "bbox": [3366.0, 2290.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 266, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2101.0, 2592.0, 2186.0, 2592.0, 2186.0, 2653.0, 2101.0, 2653.0, + 2101.0, 2592.0 + ] + ], + "area": 5185.0, + "bbox": [2101.0, 2592.0, 85.0, 61.0], + "iscrowd": 0 + }, + { + "id": 267, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2112.0, 1330.5, 2111.73, 1334.82, 2110.92, 1339.08, 2109.58, 1343.2, + 2107.73, 1347.12, 2105.41, 1350.78, 2102.65, 1354.12, 2099.49, + 1357.08, 2095.99, 1359.63, 2092.19, 1361.72, 2088.16, 1363.31, + 2083.96, 1364.39, 2079.67, 1364.93, 2075.33, 1364.93, 2071.04, + 1364.39, 2066.84, 1363.31, 2062.81, 1361.72, 2059.01, 1359.63, + 2055.51, 1357.08, 2052.35, 1354.12, 2049.59, 1350.78, 2047.27, + 1347.12, 2045.42, 1343.2, 2044.08, 1339.08, 2043.27, 1334.82, 2043.0, + 1330.5, 2043.27, 1326.18, 2044.08, 1321.92, 2045.42, 1317.8, 2047.27, + 1313.88, 2049.59, 1310.22, 2052.35, 1306.88, 2055.51, 1303.92, + 2059.01, 1301.37, 2062.81, 1299.28, 2066.84, 1297.69, 2071.04, + 1296.61, 2075.33, 1296.07, 2079.67, 1296.07, 2083.96, 1296.61, + 2088.16, 1297.69, 2092.19, 1299.28, 2095.99, 1301.37, 2099.49, + 1303.92, 2102.65, 1306.88, 2105.41, 1310.22, 2107.73, 1313.88, + 2109.58, 1317.8, 2110.92, 1321.92, 2111.73, 1326.18 + ] + ], + "area": 3743.0, + "bbox": [2043.0, 1296.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 268, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1231.0, 3044.5, 1230.76, 3048.32, 1230.04, 3052.09, 1228.86, 3055.73, + 1227.23, 3059.19, 1225.18, 3062.43, 1222.73, 3065.38, 1219.94, 3068.0, + 1216.84, 3070.25, 1213.49, 3072.1, 1209.93, 3073.51, 1206.22, 3074.46, + 1202.42, 3074.94, 1198.58, 3074.94, 1194.78, 3074.46, 1191.07, + 3073.51, 1187.51, 3072.1, 1184.16, 3070.25, 1181.06, 3068.0, 1178.27, + 3065.38, 1175.82, 3062.43, 1173.77, 3059.19, 1172.14, 3055.73, + 1170.96, 3052.09, 1170.24, 3048.32, 1170.0, 3044.5, 1170.24, 3040.68, + 1170.96, 3036.91, 1172.14, 3033.27, 1173.77, 3029.81, 1175.82, + 3026.57, 1178.27, 3023.62, 1181.06, 3021.0, 1184.16, 3018.75, 1187.51, + 3016.9, 1191.07, 3015.49, 1194.78, 3014.54, 1198.58, 3014.06, 1202.42, + 3014.06, 1206.22, 3014.54, 1209.93, 3015.49, 1213.49, 3016.9, 1216.84, + 3018.75, 1219.94, 3021.0, 1222.73, 3023.62, 1225.18, 3026.57, 1227.23, + 3029.81, 1228.86, 3033.27, 1230.04, 3036.91, 1230.76, 3040.68 + ] + ], + "area": 2915.0, + "bbox": [1170.0, 3014.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 269, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3235.0, 3245.0, 3314.0, 3245.0, 3314.0, 3300.0, 3235.0, 3300.0, + 3235.0, 3245.0 + ] + ], + "area": 4345.0, + "bbox": [3235.0, 3245.0, 79.0, 55.0], + "iscrowd": 0 + }, + { + "id": 270, + "image_id": 4, + "category_id": 3, + "segmentation": [[2922.0, 107.0, 2878.0, 184.0, 2966.0, 184.0]], + "area": 3388.0, + "bbox": [2878.0, 107.0, 88.0, 77.0], + "iscrowd": 0 + }, + { + "id": 271, + "image_id": 4, + "category_id": 3, + "segmentation": [[1467.5, 858.0, 1440.0, 906.0, 1495.0, 906.0]], + "area": 1326.0, + "bbox": [1440.0, 858.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 272, + "image_id": 4, + "category_id": 3, + "segmentation": [[3442.5, 2431.0, 3409.0, 2490.0, 3476.0, 2490.0]], + "area": 1985.0, + "bbox": [3409.0, 2431.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 273, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3172.0, 578.0, 3255.0, 578.0, 3255.0, 661.0, 3172.0, 661.0, 3172.0, + 578.0 + ] + ], + "area": 6889.0, + "bbox": [3172.0, 578.0, 83.0, 83.0], + "iscrowd": 0 + }, + { + "id": 274, + "image_id": 4, + "category_id": 3, + "segmentation": [[2967.0, 851.0, 2927.0, 921.0, 3007.0, 921.0]], + "area": 2800.0, + "bbox": [2927.0, 851.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 275, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [820.0, 432.0, 879.0, 432.0, 879.0, 482.0, 820.0, 482.0, 820.0, 432.0] + ], + "area": 2950.0, + "bbox": [820.0, 432.0, 59.0, 50.0], + "iscrowd": 0 + }, + { + "id": 276, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1160.0, 1643.0, 1254.0, 1643.0, 1254.0, 1726.0, 1160.0, 1726.0, + 1160.0, 1643.0 + ] + ], + "area": 7802.0, + "bbox": [1160.0, 1643.0, 94.0, 83.0], + "iscrowd": 0 + }, + { + "id": 277, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 3115.5, 1276.0, 3121.2, 1275.64, 3126.82, 1274.57, 3132.25, 1272.8, + 3137.42, 1270.37, 3142.24, 1267.31, 3146.65, 1263.67, 3150.56, 1259.5, + 3153.92, 1254.88, 3156.67, 1249.87, 3158.77, 1244.56, 3160.19, + 1239.03, 3160.91, 1233.36, 3160.91, 1227.64, 3160.19, 1221.97, + 3158.77, 1216.44, 3156.67, 1211.13, 3153.92, 1206.12, 3150.56, 1201.5, + 3146.65, 1197.33, 3142.24, 1193.69, 3137.42, 1190.63, 3132.25, 1188.2, + 3126.82, 1186.43, 3121.2, 1185.36, 3115.5, 1185.0, 3109.8, 1185.36, + 3104.18, 1186.43, 3098.75, 1188.2, 3093.58, 1190.63, 3088.76, 1193.69, + 3084.35, 1197.33, 3080.44, 1201.5, 3077.08, 1206.12, 3074.33, 1211.13, + 3072.23, 1216.44, 3070.81, 1221.97, 3070.09, 1227.64, 3070.09, + 1233.36, 3070.81, 1239.03, 3072.23, 1244.56, 3074.33, 1249.87, + 3077.08, 1254.88, 3080.44, 1259.5, 3084.35, 1263.67, 3088.76, 1267.31, + 3093.58, 1270.37, 3098.75, 1272.8, 3104.18, 1274.57, 3109.8, 1275.64 + ] + ], + "area": 6499.0, + "bbox": [3070.09, 1185.0, 90.82, 91.0], + "iscrowd": 0 + }, + { + "id": 278, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1006.0, 1611.0, 1085.0, 1611.0, 1085.0, 1670.0, 1006.0, 1670.0, + 1006.0, 1611.0 + ] + ], + "area": 4661.0, + "bbox": [1006.0, 1611.0, 79.0, 59.0], + "iscrowd": 0 + }, + { + "id": 279, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1492.0, 2334.0, 1588.0, 2334.0, 1588.0, 2416.0, 1492.0, 2416.0, + 1492.0, 2334.0 + ] + ], + "area": 7872.0, + "bbox": [1492.0, 2334.0, 96.0, 82.0], + "iscrowd": 0 + }, + { + "id": 280, + "image_id": 4, + "category_id": 3, + "segmentation": [[166.5, 3011.0, 132.0, 3071.0, 201.0, 3071.0]], + "area": 2078.0, + "bbox": [132.0, 3011.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 281, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2195.0, 2512.0, 2258.0, 2512.0, 2258.0, 2572.0, 2195.0, 2572.0, + 2195.0, 2512.0 + ] + ], + "area": 3780.0, + "bbox": [2195.0, 2512.0, 63.0, 60.0], + "iscrowd": 0 + }, + { + "id": 282, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2937.0, 875.5, 2936.8, 878.7, 2936.2, 881.84, 2935.21, 884.89, + 2933.85, 887.78, 2932.13, 890.49, 2930.09, 892.96, 2927.75, 895.15, + 2925.16, 897.03, 2922.36, 898.57, 2919.38, 899.75, 2916.28, 900.55, + 2913.1, 900.95, 2909.9, 900.95, 2906.72, 900.55, 2903.62, 899.75, + 2900.64, 898.57, 2897.84, 897.03, 2895.25, 895.15, 2892.91, 892.96, + 2890.87, 890.49, 2889.15, 887.78, 2887.79, 884.89, 2886.8, 881.84, + 2886.2, 878.7, 2886.0, 875.5, 2886.2, 872.3, 2886.8, 869.16, 2887.79, + 866.11, 2889.15, 863.22, 2890.87, 860.51, 2892.91, 858.04, 2895.25, + 855.85, 2897.84, 853.97, 2900.64, 852.43, 2903.62, 851.25, 2906.72, + 850.45, 2909.9, 850.05, 2913.1, 850.05, 2916.28, 850.45, 2919.38, + 851.25, 2922.36, 852.43, 2925.16, 853.97, 2927.75, 855.85, 2930.09, + 858.04, 2932.13, 860.51, 2933.85, 863.22, 2935.21, 866.11, 2936.2, + 869.16, 2936.8, 872.3 + ] + ], + "area": 2037.0, + "bbox": [2886.0, 850.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 283, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 821.0, 2612.0, 915.0, 2612.0, 915.0, 2676.0, 821.0, 2676.0, 821.0, + 2612.0 + ] + ], + "area": 6016.0, + "bbox": [821.0, 2612.0, 94.0, 64.0], + "iscrowd": 0 + }, + { + "id": 284, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [225.0, 385.0, 296.0, 385.0, 296.0, 470.0, 225.0, 470.0, 225.0, 385.0] + ], + "area": 6035.0, + "bbox": [225.0, 385.0, 71.0, 85.0], + "iscrowd": 0 + }, + { + "id": 285, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2122.0, 3101.0, 2215.0, 3101.0, 2215.0, 3197.0, 2122.0, 3197.0, + 2122.0, 3101.0 + ] + ], + "area": 8928.0, + "bbox": [2122.0, 3101.0, 93.0, 96.0], + "iscrowd": 0 + }, + { + "id": 286, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 274.0, 2751.0, 367.0, 2751.0, 367.0, 2824.0, 274.0, 2824.0, 274.0, + 2751.0 + ] + ], + "area": 6789.0, + "bbox": [274.0, 2751.0, 93.0, 73.0], + "iscrowd": 0 + }, + { + "id": 287, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 491.5, 1211.0, 495.95, 1210.72, 500.33, 1209.88, 504.57, 1208.51, + 508.6, 1206.61, 512.37, 1204.22, 515.8, 1201.38, 518.85, 1198.13, + 521.47, 1194.52, 523.62, 1190.62, 525.26, 1186.47, 526.37, 1182.15, + 526.93, 1177.73, 526.93, 1173.27, 526.37, 1168.85, 525.26, 1164.53, + 523.62, 1160.38, 521.47, 1156.48, 518.85, 1152.87, 515.8, 1149.62, + 512.37, 1146.78, 508.6, 1144.39, 504.57, 1142.49, 500.33, 1141.12, + 495.95, 1140.28, 491.5, 1140.0, 487.05, 1140.28, 482.67, 1141.12, + 478.43, 1142.49, 474.4, 1144.39, 470.63, 1146.78, 467.2, 1149.62, + 464.15, 1152.87, 461.53, 1156.48, 459.38, 1160.38, 457.74, 1164.53, + 456.63, 1168.85, 456.07, 1173.27, 456.07, 1177.73, 456.63, 1182.15, + 457.74, 1186.47, 459.38, 1190.62, 461.53, 1194.52, 464.15, 1198.13, + 467.2, 1201.38, 470.63, 1204.22, 474.4, 1206.61, 478.43, 1208.51, + 482.67, 1209.88, 487.05, 1210.72 + ] + ], + "area": 3956.0, + "bbox": [456.07, 1140.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 288, + "image_id": 4, + "category_id": 3, + "segmentation": [[1571.0, 0.0, 1546.0, 12.0, 1596.0, 12.0]], + "area": 302.0, + "bbox": [1546.0, 0.0, 50.0, 12.0], + "iscrowd": 0 + }, + { + "id": 289, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1031.0, 1215.5, 1030.66, 1220.95, 1029.63, 1226.32, 1027.95, 1231.51, + 1025.62, 1236.46, 1022.69, 1241.07, 1019.21, 1245.28, 1015.23, + 1249.02, 1010.81, 1252.23, 1006.02, 1254.86, 1000.94, 1256.87, 995.65, + 1258.23, 990.23, 1258.91, 984.77, 1258.91, 979.35, 1258.23, 974.06, + 1256.87, 968.98, 1254.86, 964.19, 1252.23, 959.77, 1249.02, 955.79, + 1245.28, 952.31, 1241.07, 949.38, 1236.46, 947.05, 1231.51, 945.37, + 1226.32, 944.34, 1220.95, 944.0, 1215.5, 944.34, 1210.05, 945.37, + 1204.68, 947.05, 1199.49, 949.38, 1194.54, 952.31, 1189.93, 955.79, + 1185.72, 959.77, 1181.98, 964.19, 1178.77, 968.98, 1176.14, 974.06, + 1174.13, 979.35, 1172.77, 984.77, 1172.09, 990.23, 1172.09, 995.65, + 1172.77, 1000.94, 1174.13, 1006.02, 1176.14, 1010.81, 1178.77, + 1015.23, 1181.98, 1019.21, 1185.72, 1022.69, 1189.93, 1025.62, + 1194.54, 1027.95, 1199.49, 1029.63, 1204.68, 1030.66, 1210.05 + ] + ], + "area": 5927.0, + "bbox": [944.0, 1172.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 290, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1946.0, 1898.0, 2018.0, 1898.0, 2018.0, 1961.0, 1946.0, 1961.0, + 1946.0, 1898.0 + ] + ], + "area": 4536.0, + "bbox": [1946.0, 1898.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 291, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [433.0, 816.0, 525.0, 816.0, 525.0, 897.0, 433.0, 897.0, 433.0, 816.0] + ], + "area": 7452.0, + "bbox": [433.0, 816.0, 92.0, 81.0], + "iscrowd": 0 + }, + { + "id": 292, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2449.0, 3377.0, 2528.0, 3377.0, 2528.0, 3456.0, 2449.0, 3456.0, + 2449.0, 3377.0 + ] + ], + "area": 6241.0, + "bbox": [2449.0, 3377.0, 79.0, 79.0], + "iscrowd": 0 + }, + { + "id": 293, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2979.0, 1211.0, 3054.0, 1211.0, 3054.0, 1294.0, 2979.0, 1294.0, + 2979.0, 1211.0 + ] + ], + "area": 6225.0, + "bbox": [2979.0, 1211.0, 75.0, 83.0], + "iscrowd": 0 + }, + { + "id": 294, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3363.0, 643.0, 3434.0, 643.0, 3434.0, 724.0, 3363.0, 724.0, 3363.0, + 643.0 + ] + ], + "area": 5751.0, + "bbox": [3363.0, 643.0, 71.0, 81.0], + "iscrowd": 0 + }, + { + "id": 295, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 812.5, 1390.0, 817.7, 1389.67, 822.82, 1388.7, 827.78, 1387.09, + 832.49, 1384.87, 836.89, 1382.07, 840.91, 1378.75, 844.48, 1374.95, + 847.54, 1370.74, 850.05, 1366.17, 851.97, 1361.32, 853.26, 1356.28, + 853.92, 1351.11, 853.92, 1345.89, 853.26, 1340.72, 851.97, 1335.68, + 850.05, 1330.83, 847.54, 1326.26, 844.48, 1322.05, 840.91, 1318.25, + 836.89, 1314.93, 832.49, 1312.13, 827.78, 1309.91, 822.82, 1308.3, + 817.7, 1307.33, 812.5, 1307.0, 807.3, 1307.33, 802.18, 1308.3, 797.22, + 1309.91, 792.51, 1312.13, 788.11, 1314.93, 784.09, 1318.25, 780.52, + 1322.05, 777.46, 1326.26, 774.95, 1330.83, 773.03, 1335.68, 771.74, + 1340.72, 771.08, 1345.89, 771.08, 1351.11, 771.74, 1356.28, 773.03, + 1361.32, 774.95, 1366.17, 777.46, 1370.74, 780.52, 1374.95, 784.09, + 1378.75, 788.11, 1382.07, 792.51, 1384.87, 797.22, 1387.09, 802.18, + 1388.7, 807.3, 1389.67 + ] + ], + "area": 5392.0, + "bbox": [771.08, 1307.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 296, + "image_id": 4, + "category_id": 3, + "segmentation": [[3046.0, 1107.0, 3011.0, 1168.0, 3081.0, 1168.0]], + "area": 2142.0, + "bbox": [3011.0, 1107.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 297, + "image_id": 4, + "category_id": 3, + "segmentation": [[1708.5, 2103.0, 1677.0, 2158.0, 1740.0, 2158.0]], + "area": 1739.0, + "bbox": [1677.0, 2103.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 298, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1526.0, 1453.0, 1617.0, 1453.0, 1617.0, 1542.0, 1526.0, 1542.0, + 1526.0, 1453.0 + ] + ], + "area": 8099.0, + "bbox": [1526.0, 1453.0, 91.0, 89.0], + "iscrowd": 0 + }, + { + "id": 299, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2095.0, 1209.0, 2180.0, 1209.0, 2180.0, 1310.0, 2095.0, 1310.0, + 2095.0, 1209.0 + ] + ], + "area": 8585.0, + "bbox": [2095.0, 1209.0, 85.0, 101.0], + "iscrowd": 0 + }, + { + "id": 300, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2614.0, 1356.0, 2701.0, 1356.0, 2701.0, 1449.0, 2614.0, 1449.0, + 2614.0, 1356.0 + ] + ], + "area": 8091.0, + "bbox": [2614.0, 1356.0, 87.0, 93.0], + "iscrowd": 0 + }, + { + "id": 301, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2375.0, 1217.0, 2460.0, 1217.0, 2460.0, 1300.0, 2375.0, 1300.0, + 2375.0, 1217.0 + ] + ], + "area": 7055.0, + "bbox": [2375.0, 1217.0, 85.0, 83.0], + "iscrowd": 0 + }, + { + "id": 302, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1835.5, 108.0, 1839.32, 107.76, 1843.09, 107.04, 1846.73, 105.86, + 1850.19, 104.23, 1853.43, 102.18, 1856.38, 99.73, 1859.0, 96.94, + 1861.25, 93.84, 1863.1, 90.49, 1864.51, 86.93, 1865.46, 83.22, + 1865.94, 79.42, 1865.94, 75.58, 1865.46, 71.78, 1864.51, 68.07, + 1863.1, 64.51, 1861.25, 61.16, 1859.0, 58.06, 1856.38, 55.27, 1853.43, + 52.82, 1850.19, 50.77, 1846.73, 49.14, 1843.09, 47.96, 1839.32, 47.24, + 1835.5, 47.0, 1831.68, 47.24, 1827.91, 47.96, 1824.27, 49.14, 1820.81, + 50.77, 1817.57, 52.82, 1814.62, 55.27, 1812.0, 58.06, 1809.75, 61.16, + 1807.9, 64.51, 1806.49, 68.07, 1805.54, 71.78, 1805.06, 75.58, + 1805.06, 79.42, 1805.54, 83.22, 1806.49, 86.93, 1807.9, 90.49, + 1809.75, 93.84, 1812.0, 96.94, 1814.62, 99.73, 1817.57, 102.18, + 1820.81, 104.23, 1824.27, 105.86, 1827.91, 107.04, 1831.68, 107.76 + ] + ], + "area": 2916.0, + "bbox": [1805.06, 47.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 303, + "image_id": 4, + "category_id": 3, + "segmentation": [[903.0, 1183.0, 869.0, 1243.0, 937.0, 1243.0]], + "area": 2048.0, + "bbox": [869.0, 1183.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 304, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2601.0, 1224.0, 2674.0, 1224.0, 2674.0, 1297.0, 2601.0, 1297.0, + 2601.0, 1224.0 + ] + ], + "area": 5329.0, + "bbox": [2601.0, 1224.0, 73.0, 73.0], + "iscrowd": 0 + }, + { + "id": 305, + "image_id": 4, + "category_id": 3, + "segmentation": [[2731.0, 2171.0, 2693.0, 2237.0, 2769.0, 2237.0]], + "area": 2514.0, + "bbox": [2693.0, 2171.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 306, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 526.0, 2596.0, 595.0, 2596.0, 595.0, 2675.0, 526.0, 2675.0, 526.0, + 2596.0 + ] + ], + "area": 5451.0, + "bbox": [526.0, 2596.0, 69.0, 79.0], + "iscrowd": 0 + }, + { + "id": 307, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 116.0, 1912.0, 193.0, 1912.0, 193.0, 1993.0, 116.0, 1993.0, 116.0, + 1912.0 + ] + ], + "area": 6237.0, + "bbox": [116.0, 1912.0, 77.0, 81.0], + "iscrowd": 0 + }, + { + "id": 308, + "image_id": 4, + "category_id": 3, + "segmentation": [[3288.5, 1613.0, 3251.0, 1679.0, 3326.0, 1679.0]], + "area": 2485.0, + "bbox": [3251.0, 1613.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 309, + "image_id": 4, + "category_id": 3, + "segmentation": [[138.0, 1668.0, 113.0, 1712.0, 163.0, 1712.0]], + "area": 1105.0, + "bbox": [113.0, 1668.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 310, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1732.0, 1256.0, 1817.0, 1256.0, 1817.0, 1311.0, 1732.0, 1311.0, + 1732.0, 1256.0 + ] + ], + "area": 4675.0, + "bbox": [1732.0, 1256.0, 85.0, 55.0], + "iscrowd": 0 + }, + { + "id": 311, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2330.0, 1767.5, 2329.67, 1772.7, 2328.7, 1777.82, 2327.09, 1782.78, + 2324.87, 1787.49, 2322.07, 1791.89, 2318.75, 1795.91, 2314.95, + 1799.48, 2310.74, 1802.54, 2306.17, 1805.05, 2301.32, 1806.97, + 2296.28, 1808.26, 2291.11, 1808.92, 2285.89, 1808.92, 2280.72, + 1808.26, 2275.68, 1806.97, 2270.83, 1805.05, 2266.26, 1802.54, + 2262.05, 1799.48, 2258.25, 1795.91, 2254.93, 1791.89, 2252.13, + 1787.49, 2249.91, 1782.78, 2248.3, 1777.82, 2247.33, 1772.7, 2247.0, + 1767.5, 2247.33, 1762.3, 2248.3, 1757.18, 2249.91, 1752.22, 2252.13, + 1747.51, 2254.93, 1743.11, 2258.25, 1739.09, 2262.05, 1735.52, + 2266.26, 1732.46, 2270.83, 1729.95, 2275.68, 1728.03, 2280.72, + 1726.74, 2285.89, 1726.08, 2291.11, 1726.08, 2296.28, 1726.74, + 2301.32, 1728.03, 2306.17, 1729.95, 2310.74, 1732.46, 2314.95, + 1735.52, 2318.75, 1739.09, 2322.07, 1743.11, 2324.87, 1747.51, + 2327.09, 1752.22, 2328.7, 1757.18, 2329.67, 1762.3 + ] + ], + "area": 5394.0, + "bbox": [2247.0, 1726.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 312, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2919.0, 1799.0, 2998.0, 1799.0, 2998.0, 1872.0, 2919.0, 1872.0, + 2919.0, 1799.0 + ] + ], + "area": 5767.0, + "bbox": [2919.0, 1799.0, 79.0, 73.0], + "iscrowd": 0 + }, + { + "id": 313, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 341.0, 1430.0, 395.0, 1430.0, 395.0, 1510.0, 341.0, 1510.0, 341.0, + 1430.0 + ] + ], + "area": 4320.0, + "bbox": [341.0, 1430.0, 54.0, 80.0], + "iscrowd": 0 + }, + { + "id": 314, + "image_id": 4, + "category_id": 3, + "segmentation": [[2857.0, 3079.0, 2832.0, 3123.0, 2882.0, 3123.0]], + "area": 1105.0, + "bbox": [2832.0, 3079.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 315, + "image_id": 4, + "category_id": 3, + "segmentation": [[525.0, 979.0, 476.0, 1065.0, 574.0, 1065.0]], + "area": 4224.0, + "bbox": [476.0, 979.0, 98.0, 86.0], + "iscrowd": 0 + }, + { + "id": 316, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 899.0, 3016.0, 957.0, 3016.0, 957.0, 3095.0, 899.0, 3095.0, 899.0, + 3016.0 + ] + ], + "area": 4582.0, + "bbox": [899.0, 3016.0, 58.0, 79.0], + "iscrowd": 0 + }, + { + "id": 317, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 93.0, 2057.5, 92.64, 2063.2, 91.57, 2068.82, 89.8, 2074.25, 87.37, + 2079.42, 84.31, 2084.24, 80.67, 2088.65, 76.5, 2092.56, 71.88, + 2095.92, 66.87, 2098.67, 61.56, 2100.77, 56.03, 2102.19, 50.36, + 2102.91, 44.64, 2102.91, 38.97, 2102.19, 33.44, 2100.77, 28.13, + 2098.67, 23.12, 2095.92, 18.5, 2092.56, 14.33, 2088.65, 10.69, + 2084.24, 7.63, 2079.42, 5.2, 2074.25, 3.43, 2068.82, 2.36, 2063.2, + 2.0, 2057.5, 2.36, 2051.8, 3.43, 2046.18, 5.2, 2040.75, 7.63, 2035.58, + 10.69, 2030.76, 14.33, 2026.35, 18.5, 2022.44, 23.12, 2019.08, 28.13, + 2016.33, 33.44, 2014.23, 38.97, 2012.81, 44.64, 2012.09, 50.36, + 2012.09, 56.03, 2012.81, 61.56, 2014.23, 66.87, 2016.33, 71.88, + 2019.08, 76.5, 2022.44, 80.67, 2026.35, 84.31, 2030.76, 87.37, + 2035.58, 89.8, 2040.75, 91.57, 2046.18, 92.64, 2051.8 + ] + ], + "area": 6498.0, + "bbox": [2.0, 2012.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 318, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2398.0, 618.0, 2485.0, 618.0, 2485.0, 695.0, 2398.0, 695.0, 2398.0, + 618.0 + ] + ], + "area": 6699.0, + "bbox": [2398.0, 618.0, 87.0, 77.0], + "iscrowd": 0 + }, + { + "id": 319, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1953.0, 1210.5, 1952.69, 1215.45, 1951.76, 1220.32, 1950.23, 1225.04, + 1948.11, 1229.53, 1945.46, 1233.72, 1942.29, 1237.54, 1938.68, + 1240.94, 1934.67, 1243.85, 1930.32, 1246.24, 1925.71, 1248.07, 1920.9, + 1249.3, 1915.98, 1249.92, 1911.02, 1249.92, 1906.1, 1249.3, 1901.29, + 1248.07, 1896.68, 1246.24, 1892.33, 1243.85, 1888.32, 1240.94, + 1884.71, 1237.54, 1881.54, 1233.72, 1878.89, 1229.53, 1876.77, + 1225.04, 1875.24, 1220.32, 1874.31, 1215.45, 1874.0, 1210.5, 1874.31, + 1205.55, 1875.24, 1200.68, 1876.77, 1195.96, 1878.89, 1191.47, + 1881.54, 1187.28, 1884.71, 1183.46, 1888.32, 1180.06, 1892.33, + 1177.15, 1896.68, 1174.76, 1901.29, 1172.93, 1906.1, 1171.7, 1911.02, + 1171.08, 1915.98, 1171.08, 1920.9, 1171.7, 1925.71, 1172.93, 1930.32, + 1174.76, 1934.67, 1177.15, 1938.68, 1180.06, 1942.29, 1183.46, + 1945.46, 1187.28, 1948.11, 1191.47, 1950.23, 1195.96, 1951.76, + 1200.68, 1952.69, 1205.55 + ] + ], + "area": 4893.0, + "bbox": [1874.0, 1171.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 320, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3314.0, 291.0, 3393.0, 291.0, 3393.0, 376.0, 3314.0, 376.0, 3314.0, + 291.0 + ] + ], + "area": 6715.0, + "bbox": [3314.0, 291.0, 79.0, 85.0], + "iscrowd": 0 + }, + { + "id": 321, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2914.0, 286.5, 2913.67, 291.7, 2912.7, 296.82, 2911.09, 301.78, + 2908.87, 306.49, 2906.07, 310.89, 2902.75, 314.91, 2898.95, 318.48, + 2894.74, 321.54, 2890.17, 324.05, 2885.32, 325.97, 2880.28, 327.26, + 2875.11, 327.92, 2869.89, 327.92, 2864.72, 327.26, 2859.68, 325.97, + 2854.83, 324.05, 2850.26, 321.54, 2846.05, 318.48, 2842.25, 314.91, + 2838.93, 310.89, 2836.13, 306.49, 2833.91, 301.78, 2832.3, 296.82, + 2831.33, 291.7, 2831.0, 286.5, 2831.33, 281.3, 2832.3, 276.18, + 2833.91, 271.22, 2836.13, 266.51, 2838.93, 262.11, 2842.25, 258.09, + 2846.05, 254.52, 2850.26, 251.46, 2854.83, 248.95, 2859.68, 247.03, + 2864.72, 245.74, 2869.89, 245.08, 2875.11, 245.08, 2880.28, 245.74, + 2885.32, 247.03, 2890.17, 248.95, 2894.74, 251.46, 2898.95, 254.52, + 2902.75, 258.09, 2906.07, 262.11, 2908.87, 266.51, 2911.09, 271.22, + 2912.7, 276.18, 2913.67, 281.3 + ] + ], + "area": 5394.0, + "bbox": [2831.0, 245.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 322, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 499.0, 2013.0, 560.0, 2013.0, 560.0, 2098.0, 499.0, 2098.0, 499.0, + 2013.0 + ] + ], + "area": 5185.0, + "bbox": [499.0, 2013.0, 61.0, 85.0], + "iscrowd": 0 + }, + { + "id": 323, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2231.0, 1518.0, 2327.0, 1518.0, 2327.0, 1582.0, 2231.0, 1582.0, + 2231.0, 1518.0 + ] + ], + "area": 6144.0, + "bbox": [2231.0, 1518.0, 96.0, 64.0], + "iscrowd": 0 + }, + { + "id": 324, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [98.0, 2171.0, 176.0, 2171.0, 176.0, 2240.0, 98.0, 2240.0, 98.0, 2171.0] + ], + "area": 5382.0, + "bbox": [98.0, 2171.0, 78.0, 69.0], + "iscrowd": 0 + }, + { + "id": 325, + "image_id": 4, + "category_id": 3, + "segmentation": [[1893.0, 3208.0, 1857.0, 3271.0, 1929.0, 3271.0]], + "area": 2268.0, + "bbox": [1857.0, 3208.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 326, + "image_id": 4, + "category_id": 3, + "segmentation": [[281.5, 738.0, 234.0, 821.0, 329.0, 821.0]], + "area": 3952.0, + "bbox": [234.0, 738.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 327, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3164.0, 1372.0, 3218.0, 1372.0, 3218.0, 1443.0, 3164.0, 1443.0, + 3164.0, 1372.0 + ] + ], + "area": 3834.0, + "bbox": [3164.0, 1372.0, 54.0, 71.0], + "iscrowd": 0 + }, + { + "id": 328, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1767.0, 1702.0, 1819.0, 1702.0, 1819.0, 1765.0, 1767.0, 1765.0, + 1767.0, 1702.0 + ] + ], + "area": 3276.0, + "bbox": [1767.0, 1702.0, 52.0, 63.0], + "iscrowd": 0 + }, + { + "id": 329, + "image_id": 4, + "category_id": 3, + "segmentation": [[2689.0, 2855.0, 2663.0, 2901.0, 2715.0, 2901.0]], + "area": 1202.0, + "bbox": [2663.0, 2855.0, 52.0, 46.0], + "iscrowd": 0 + }, + { + "id": 330, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 588.0, 3212.0, 641.0, 3212.0, 641.0, 3293.0, 588.0, 3293.0, 588.0, + 3212.0 + ] + ], + "area": 4293.0, + "bbox": [588.0, 3212.0, 53.0, 81.0], + "iscrowd": 0 + }, + { + "id": 331, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2335.5, 2972.0, 2339.2, 2971.77, 2342.84, 2971.07, 2346.36, 2969.93, + 2349.71, 2968.35, 2352.84, 2966.37, 2355.69, 2964.0, 2358.23, 2961.3, + 2360.41, 2958.31, 2362.19, 2955.06, 2363.56, 2951.62, 2364.48, + 2948.03, 2364.94, 2944.35, 2364.94, 2940.65, 2364.48, 2936.97, + 2363.56, 2933.38, 2362.19, 2929.94, 2360.41, 2926.69, 2358.23, 2923.7, + 2355.69, 2921.0, 2352.84, 2918.63, 2349.71, 2916.65, 2346.36, 2915.07, + 2342.84, 2913.93, 2339.2, 2913.23, 2335.5, 2913.0, 2331.8, 2913.23, + 2328.16, 2913.93, 2324.64, 2915.07, 2321.29, 2916.65, 2318.16, + 2918.63, 2315.31, 2921.0, 2312.77, 2923.7, 2310.59, 2926.69, 2308.81, + 2929.94, 2307.44, 2933.38, 2306.52, 2936.97, 2306.06, 2940.65, + 2306.06, 2944.35, 2306.52, 2948.03, 2307.44, 2951.62, 2308.81, + 2955.06, 2310.59, 2958.31, 2312.77, 2961.3, 2315.31, 2964.0, 2318.16, + 2966.37, 2321.29, 2968.35, 2324.64, 2969.93, 2328.16, 2971.07, 2331.8, + 2971.77 + ] + ], + "area": 2732.0, + "bbox": [2306.06, 2913.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 332, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [312.0, 503.0, 411.0, 503.0, 411.0, 592.0, 312.0, 592.0, 312.0, 503.0] + ], + "area": 8811.0, + "bbox": [312.0, 503.0, 99.0, 89.0], + "iscrowd": 0 + }, + { + "id": 333, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3349.0, 1064.0, 3402.0, 1064.0, 3402.0, 1119.0, 3349.0, 1119.0, + 3349.0, 1064.0 + ] + ], + "area": 2915.0, + "bbox": [3349.0, 1064.0, 53.0, 55.0], + "iscrowd": 0 + }, + { + "id": 334, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2954.0, 1669.0, 3043.0, 1669.0, 3043.0, 1726.0, 2954.0, 1726.0, + 2954.0, 1669.0 + ] + ], + "area": 5073.0, + "bbox": [2954.0, 1669.0, 89.0, 57.0], + "iscrowd": 0 + }, + { + "id": 335, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2214.0, 848.0, 2281.0, 848.0, 2281.0, 940.0, 2214.0, 940.0, 2214.0, + 848.0 + ] + ], + "area": 6164.0, + "bbox": [2214.0, 848.0, 67.0, 92.0], + "iscrowd": 0 + }, + { + "id": 336, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2040.0, 1060.0, 2129.0, 1060.0, 2129.0, 1124.0, 2040.0, 1124.0, + 2040.0, 1060.0 + ] + ], + "area": 5696.0, + "bbox": [2040.0, 1060.0, 89.0, 64.0], + "iscrowd": 0 + }, + { + "id": 337, + "image_id": 4, + "category_id": 3, + "segmentation": [[2595.0, 1014.0, 2568.0, 1061.0, 2622.0, 1061.0]], + "area": 1274.0, + "bbox": [2568.0, 1014.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 338, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2010.0, 691.0, 2083.0, 691.0, 2083.0, 771.0, 2010.0, 771.0, 2010.0, + 691.0 + ] + ], + "area": 5840.0, + "bbox": [2010.0, 691.0, 73.0, 80.0], + "iscrowd": 0 + }, + { + "id": 339, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 163.0, 2507.0, 222.0, 2507.0, 222.0, 2564.0, 163.0, 2564.0, 163.0, + 2507.0 + ] + ], + "area": 3363.0, + "bbox": [163.0, 2507.0, 59.0, 57.0], + "iscrowd": 0 + }, + { + "id": 340, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1672.0, 1694.5, 1671.64, 1700.2, 1670.57, 1705.82, 1668.8, 1711.25, + 1666.37, 1716.42, 1663.31, 1721.24, 1659.67, 1725.65, 1655.5, 1729.56, + 1650.88, 1732.92, 1645.87, 1735.67, 1640.56, 1737.77, 1635.03, + 1739.19, 1629.36, 1739.91, 1623.64, 1739.91, 1617.97, 1739.19, + 1612.44, 1737.77, 1607.13, 1735.67, 1602.12, 1732.92, 1597.5, 1729.56, + 1593.33, 1725.65, 1589.69, 1721.24, 1586.63, 1716.42, 1584.2, 1711.25, + 1582.43, 1705.82, 1581.36, 1700.2, 1581.0, 1694.5, 1581.36, 1688.8, + 1582.43, 1683.18, 1584.2, 1677.75, 1586.63, 1672.58, 1589.69, 1667.76, + 1593.33, 1663.35, 1597.5, 1659.44, 1602.12, 1656.08, 1607.13, 1653.33, + 1612.44, 1651.23, 1617.97, 1649.81, 1623.64, 1649.09, 1629.36, + 1649.09, 1635.03, 1649.81, 1640.56, 1651.23, 1645.87, 1653.33, + 1650.88, 1656.08, 1655.5, 1659.44, 1659.67, 1663.35, 1663.31, 1667.76, + 1666.37, 1672.58, 1668.8, 1677.75, 1670.57, 1683.18, 1671.64, 1688.8 + ] + ], + "area": 6498.0, + "bbox": [1581.0, 1649.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 341, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2758.5, 3061.0, 2762.2, 3060.77, 2765.84, 3060.07, 2769.36, 3058.93, + 2772.71, 3057.35, 2775.84, 3055.37, 2778.69, 3053.0, 2781.23, 3050.3, + 2783.41, 3047.31, 2785.19, 3044.06, 2786.56, 3040.62, 2787.48, + 3037.03, 2787.94, 3033.35, 2787.94, 3029.65, 2787.48, 3025.97, + 2786.56, 3022.38, 2785.19, 3018.94, 2783.41, 3015.69, 2781.23, 3012.7, + 2778.69, 3010.0, 2775.84, 3007.63, 2772.71, 3005.65, 2769.36, 3004.07, + 2765.84, 3002.93, 2762.2, 3002.23, 2758.5, 3002.0, 2754.8, 3002.23, + 2751.16, 3002.93, 2747.64, 3004.07, 2744.29, 3005.65, 2741.16, + 3007.63, 2738.31, 3010.0, 2735.77, 3012.7, 2733.59, 3015.69, 2731.81, + 3018.94, 2730.44, 3022.38, 2729.52, 3025.97, 2729.06, 3029.65, + 2729.06, 3033.35, 2729.52, 3037.03, 2730.44, 3040.62, 2731.81, + 3044.06, 2733.59, 3047.31, 2735.77, 3050.3, 2738.31, 3053.0, 2741.16, + 3055.37, 2744.29, 3057.35, 2747.64, 3058.93, 2751.16, 3060.07, 2754.8, + 3060.77 + ] + ], + "area": 2732.0, + "bbox": [2729.06, 3002.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 342, + "image_id": 4, + "category_id": 3, + "segmentation": [[2020.5, 3200.0, 1987.0, 3259.0, 2054.0, 3259.0]], + "area": 1985.0, + "bbox": [1987.0, 3200.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 343, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3152.0, 505.0, 3205.0, 505.0, 3205.0, 568.0, 3152.0, 568.0, 3152.0, + 505.0 + ] + ], + "area": 3339.0, + "bbox": [3152.0, 505.0, 53.0, 63.0], + "iscrowd": 0 + }, + { + "id": 344, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2399.0, 3031.5, 2398.71, 3036.07, 2397.85, 3040.58, 2396.44, 3044.94, + 2394.49, 3049.08, 2392.03, 3052.95, 2389.11, 3056.49, 2385.77, + 3059.62, 2382.06, 3062.32, 2378.04, 3064.53, 2373.78, 3066.21, + 2369.34, 3067.35, 2364.79, 3067.93, 2360.21, 3067.93, 2355.66, + 3067.35, 2351.22, 3066.21, 2346.96, 3064.53, 2342.94, 3062.32, + 2339.23, 3059.62, 2335.89, 3056.49, 2332.97, 3052.95, 2330.51, + 3049.08, 2328.56, 3044.94, 2327.15, 3040.58, 2326.29, 3036.07, 2326.0, + 3031.5, 2326.29, 3026.93, 2327.15, 3022.42, 2328.56, 3018.06, 2330.51, + 3013.92, 2332.97, 3010.05, 2335.89, 3006.51, 2339.23, 3003.38, + 2342.94, 3000.68, 2346.96, 2998.47, 2351.22, 2996.79, 2355.66, + 2995.65, 2360.21, 2995.07, 2364.79, 2995.07, 2369.34, 2995.65, + 2373.78, 2996.79, 2378.04, 2998.47, 2382.06, 3000.68, 2385.77, + 3003.38, 2389.11, 3006.51, 2392.03, 3010.05, 2394.49, 3013.92, + 2396.44, 3018.06, 2397.85, 3022.42, 2398.71, 3026.93 + ] + ], + "area": 4187.0, + "bbox": [2326.0, 2995.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 345, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2629.0, 3199.0, 2686.0, 3199.0, 2686.0, 3254.0, 2629.0, 3254.0, + 2629.0, 3199.0 + ] + ], + "area": 3135.0, + "bbox": [2629.0, 3199.0, 57.0, 55.0], + "iscrowd": 0 + }, + { + "id": 346, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1366.5, 2230.0, 1370.07, 2229.78, 1373.59, 2229.1, 1376.99, 2228.0, + 1380.23, 2226.47, 1383.25, 2224.56, 1386.01, 2222.28, 1388.46, + 2219.67, 1390.56, 2216.77, 1392.29, 2213.63, 1393.61, 2210.31, 1394.5, + 2206.84, 1394.94, 2203.29, 1394.94, 2199.71, 1394.5, 2196.16, 1393.61, + 2192.69, 1392.29, 2189.37, 1390.56, 2186.23, 1388.46, 2183.33, + 1386.01, 2180.72, 1383.25, 2178.44, 1380.23, 2176.53, 1376.99, 2175.0, + 1373.59, 2173.9, 1370.07, 2173.22, 1366.5, 2173.0, 1362.93, 2173.22, + 1359.41, 2173.9, 1356.01, 2175.0, 1352.77, 2176.53, 1349.75, 2178.44, + 1346.99, 2180.72, 1344.54, 2183.33, 1342.44, 2186.23, 1340.71, + 2189.37, 1339.39, 2192.69, 1338.5, 2196.16, 1338.06, 2199.71, 1338.06, + 2203.29, 1338.5, 2206.84, 1339.39, 2210.31, 1340.71, 2213.63, 1342.44, + 2216.77, 1344.54, 2219.67, 1346.99, 2222.28, 1349.75, 2224.56, + 1352.77, 2226.47, 1356.01, 2228.0, 1359.41, 2229.1, 1362.93, 2229.78 + ] + ], + "area": 2547.0, + "bbox": [1338.06, 2173.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 347, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 350.0, 3429.5, 349.63, 3435.33, 348.54, 3441.06, 346.73, 3446.62, + 344.25, 3451.9, 341.12, 3456.83, 337.4, 3461.33, 333.14, 3465.33, + 328.42, 3468.76, 323.3, 3471.57, 317.87, 3473.72, 312.21, 3475.18, + 306.42, 3475.91, 300.58, 3475.91, 294.79, 3475.18, 289.13, 3473.72, + 283.7, 3471.57, 278.58, 3468.76, 273.86, 3465.33, 269.6, 3461.33, + 265.88, 3456.83, 262.75, 3451.9, 260.27, 3446.62, 258.46, 3441.06, + 257.37, 3435.33, 257.0, 3429.5, 257.37, 3423.67, 258.46, 3417.94, + 260.27, 3412.38, 262.75, 3407.1, 265.88, 3402.17, 269.6, 3397.67, + 273.86, 3393.67, 278.58, 3390.24, 283.7, 3387.43, 289.13, 3385.28, + 294.79, 3383.82, 300.58, 3383.09, 306.42, 3383.09, 312.21, 3383.82, + 317.87, 3385.28, 323.3, 3387.43, 328.42, 3390.24, 333.14, 3393.67, + 337.4, 3397.67, 341.12, 3402.17, 344.25, 3407.1, 346.73, 3412.38, + 348.54, 3417.94, 349.63, 3423.67 + ] + ], + "area": 6782.0, + "bbox": [257.0, 3383.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 348, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 885.0, 1051.0, 945.0, 1051.0, 945.0, 1114.0, 885.0, 1114.0, 885.0, + 1051.0 + ] + ], + "area": 3780.0, + "bbox": [885.0, 1051.0, 60.0, 63.0], + "iscrowd": 0 + }, + { + "id": 349, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1642.0, 2564.0, 1720.0, 2564.0, 1720.0, 2654.0, 1642.0, 2654.0, + 1642.0, 2564.0 + ] + ], + "area": 7020.0, + "bbox": [1642.0, 2564.0, 78.0, 90.0], + "iscrowd": 0 + }, + { + "id": 350, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [1427.0, 7.0, 1500.0, 7.0, 1500.0, 102.0, 1427.0, 102.0, 1427.0, 7.0] + ], + "area": 6935.0, + "bbox": [1427.0, 7.0, 73.0, 95.0], + "iscrowd": 0 + }, + { + "id": 351, + "image_id": 4, + "category_id": 3, + "segmentation": [[1654.5, 1947.0, 1617.0, 2013.0, 1692.0, 2013.0]], + "area": 2485.0, + "bbox": [1617.0, 1947.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 352, + "image_id": 4, + "category_id": 3, + "segmentation": [[1434.0, 3365.0, 1395.0, 3433.0, 1473.0, 3433.0]], + "area": 2660.0, + "bbox": [1395.0, 3365.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 353, + "image_id": 4, + "category_id": 3, + "segmentation": [[3315.5, 1897.0, 3266.0, 1983.0, 3365.0, 1983.0]], + "area": 4268.0, + "bbox": [3266.0, 1897.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 354, + "image_id": 5, + "category_id": 3, + "segmentation": [[1848.5, 194.0, 1801.0, 277.0, 1896.0, 277.0]], + "area": 3952.0, + "bbox": [1801.0, 194.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 355, + "image_id": 5, + "category_id": 3, + "segmentation": [[3312.0, 12.0, 3273.0, 80.0, 3351.0, 80.0]], + "area": 2660.0, + "bbox": [3273.0, 12.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 356, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1723.0, 2602.5, 1722.73, 2606.82, 1721.92, 2611.08, 1720.58, 2615.2, + 1718.73, 2619.12, 1716.41, 2622.78, 1713.65, 2626.12, 1710.49, + 2629.08, 1706.99, 2631.63, 1703.19, 2633.72, 1699.16, 2635.31, + 1694.96, 2636.39, 1690.67, 2636.93, 1686.33, 2636.93, 1682.04, + 2636.39, 1677.84, 2635.31, 1673.81, 2633.72, 1670.01, 2631.63, + 1666.51, 2629.08, 1663.35, 2626.12, 1660.59, 2622.78, 1658.27, + 2619.12, 1656.42, 2615.2, 1655.08, 2611.08, 1654.27, 2606.82, 1654.0, + 2602.5, 1654.27, 2598.18, 1655.08, 2593.92, 1656.42, 2589.8, 1658.27, + 2585.88, 1660.59, 2582.22, 1663.35, 2578.88, 1666.51, 2575.92, + 1670.01, 2573.37, 1673.81, 2571.28, 1677.84, 2569.69, 1682.04, + 2568.61, 1686.33, 2568.07, 1690.67, 2568.07, 1694.96, 2568.61, + 1699.16, 2569.69, 1703.19, 2571.28, 1706.99, 2573.37, 1710.49, + 2575.92, 1713.65, 2578.88, 1716.41, 2582.22, 1718.73, 2585.88, + 1720.58, 2589.8, 1721.92, 2593.92, 1722.73, 2598.18 + ] + ], + "area": 3743.0, + "bbox": [1654.0, 2568.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 357, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2299.0, 1722.5, 2298.65, 1728.08, 2297.6, 1733.57, 2295.88, 1738.88, + 2293.5, 1743.94, 2290.5, 1748.66, 2286.94, 1752.96, 2282.87, 1756.79, + 2278.34, 1760.07, 2273.45, 1762.76, 2268.25, 1764.82, 2262.84, + 1766.21, 2257.29, 1766.91, 2251.71, 1766.91, 2246.16, 1766.21, + 2240.75, 1764.82, 2235.55, 1762.76, 2230.66, 1760.07, 2226.13, + 1756.79, 2222.06, 1752.96, 2218.5, 1748.66, 2215.5, 1743.94, 2213.12, + 1738.88, 2211.4, 1733.57, 2210.35, 1728.08, 2210.0, 1722.5, 2210.35, + 1716.92, 2211.4, 1711.43, 2213.12, 1706.12, 2215.5, 1701.06, 2218.5, + 1696.34, 2222.06, 1692.04, 2226.13, 1688.21, 2230.66, 1684.93, + 2235.55, 1682.24, 2240.75, 1680.18, 2246.16, 1678.79, 2251.71, + 1678.09, 2257.29, 1678.09, 2262.84, 1678.79, 2268.25, 1680.18, + 2273.45, 1682.24, 2278.34, 1684.93, 2282.87, 1688.21, 2286.94, + 1692.04, 2290.5, 1696.34, 2293.5, 1701.06, 2295.88, 1706.12, 2297.6, + 1711.43, 2298.65, 1716.92 + ] + ], + "area": 6208.0, + "bbox": [2210.0, 1678.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 358, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2448.0, 2978.5, 2447.62, 2984.58, 2446.48, 2990.56, 2444.59, 2996.35, + 2442.0, 3001.87, 2438.74, 3007.01, 2434.85, 3011.7, 2430.42, 3015.87, + 2425.49, 3019.45, 2420.15, 3022.38, 2414.49, 3024.63, 2408.59, + 3026.14, 2402.55, 3026.9, 2396.45, 3026.9, 2390.41, 3026.14, 2384.51, + 3024.63, 2378.85, 3022.38, 2373.51, 3019.45, 2368.58, 3015.87, + 2364.15, 3011.7, 2360.26, 3007.01, 2357.0, 3001.87, 2354.41, 2996.35, + 2352.52, 2990.56, 2351.38, 2984.58, 2351.0, 2978.5, 2351.38, 2972.42, + 2352.52, 2966.44, 2354.41, 2960.65, 2357.0, 2955.13, 2360.26, 2949.99, + 2364.15, 2945.3, 2368.58, 2941.13, 2373.51, 2937.55, 2378.85, 2934.62, + 2384.51, 2932.37, 2390.41, 2930.86, 2396.45, 2930.1, 2402.55, 2930.1, + 2408.59, 2930.86, 2414.49, 2932.37, 2420.15, 2934.62, 2425.49, + 2937.55, 2430.42, 2941.13, 2434.85, 2945.3, 2438.74, 2949.99, 2442.0, + 2955.13, 2444.59, 2960.65, 2446.48, 2966.44, 2447.62, 2972.42 + ] + ], + "area": 7381.0, + "bbox": [2351.0, 2930.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 359, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3262.0, 943.0, 3339.0, 943.0, 3339.0, 995.0, 3262.0, 995.0, 3262.0, + 943.0 + ] + ], + "area": 4004.0, + "bbox": [3262.0, 943.0, 77.0, 52.0], + "iscrowd": 0 + }, + { + "id": 360, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 164.0, 1055.0, 251.0, 1055.0, 251.0, 1118.0, 164.0, 1118.0, 164.0, + 1055.0 + ] + ], + "area": 5481.0, + "bbox": [164.0, 1055.0, 87.0, 63.0], + "iscrowd": 0 + }, + { + "id": 361, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2668.0, 3151.0, 2749.0, 3151.0, 2749.0, 3222.0, 2668.0, 3222.0, + 2668.0, 3151.0 + ] + ], + "area": 5751.0, + "bbox": [2668.0, 3151.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 362, + "image_id": 5, + "category_id": 3, + "segmentation": [[2514.0, 2830.0, 2489.0, 2874.0, 2539.0, 2874.0]], + "area": 1105.0, + "bbox": [2489.0, 2830.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 363, + "image_id": 5, + "category_id": 3, + "segmentation": [[1907.5, 2785.0, 1871.0, 2849.0, 1944.0, 2849.0]], + "area": 2341.0, + "bbox": [1871.0, 2785.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 364, + "image_id": 5, + "category_id": 3, + "segmentation": [[1057.0, 1880.0, 1019.0, 1946.0, 1095.0, 1946.0]], + "area": 2514.0, + "bbox": [1019.0, 1880.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 365, + "image_id": 5, + "category_id": 3, + "segmentation": [[2603.5, 1714.0, 2570.0, 1773.0, 2637.0, 1773.0]], + "area": 1985.0, + "bbox": [2570.0, 1714.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 366, + "image_id": 5, + "category_id": 3, + "segmentation": [[2740.0, 1776.0, 2713.0, 1823.0, 2767.0, 1823.0]], + "area": 1274.0, + "bbox": [2713.0, 1776.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 367, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1550.0, 3392.0, 1610.0, 3392.0, 1610.0, 3460.0, 1550.0, 3460.0, + 1550.0, 3392.0 + ] + ], + "area": 4080.0, + "bbox": [1550.0, 3392.0, 60.0, 68.0], + "iscrowd": 0 + }, + { + "id": 368, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1174.0, 411.0, 1232.0, 411.0, 1232.0, 476.0, 1174.0, 476.0, 1174.0, + 411.0 + ] + ], + "area": 3770.0, + "bbox": [1174.0, 411.0, 58.0, 65.0], + "iscrowd": 0 + }, + { + "id": 369, + "image_id": 5, + "category_id": 3, + "segmentation": [[1447.5, 2219.0, 1418.0, 2271.0, 1477.0, 2271.0]], + "area": 1542.0, + "bbox": [1418.0, 2219.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 370, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [995.0, 54.0, 1078.0, 54.0, 1078.0, 145.0, 995.0, 145.0, 995.0, 54.0] + ], + "area": 7553.0, + "bbox": [995.0, 54.0, 83.0, 91.0], + "iscrowd": 0 + }, + { + "id": 371, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1467.0, 1953.0, 1559.0, 1953.0, 1559.0, 2014.0, 1467.0, 2014.0, + 1467.0, 1953.0 + ] + ], + "area": 5612.0, + "bbox": [1467.0, 1953.0, 92.0, 61.0], + "iscrowd": 0 + }, + { + "id": 372, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2480.0, 2988.0, 2538.0, 2988.0, 2538.0, 3079.0, 2480.0, 3079.0, + 2480.0, 2988.0 + ] + ], + "area": 5278.0, + "bbox": [2480.0, 2988.0, 58.0, 91.0], + "iscrowd": 0 + }, + { + "id": 373, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2492.0, 298.0, 2561.0, 298.0, 2561.0, 359.0, 2492.0, 359.0, 2492.0, + 298.0 + ] + ], + "area": 4209.0, + "bbox": [2492.0, 298.0, 69.0, 61.0], + "iscrowd": 0 + }, + { + "id": 374, + "image_id": 5, + "category_id": 3, + "segmentation": [[961.0, 1979.0, 924.0, 2044.0, 998.0, 2044.0]], + "area": 2412.0, + "bbox": [924.0, 1979.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 375, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 627.0, 2075.0, 684.0, 2075.0, 684.0, 2134.0, 627.0, 2134.0, 627.0, + 2075.0 + ] + ], + "area": 3363.0, + "bbox": [627.0, 2075.0, 57.0, 59.0], + "iscrowd": 0 + }, + { + "id": 376, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2205.5, 2102.0, 2209.32, 2101.76, 2213.09, 2101.04, 2216.73, 2099.86, + 2220.19, 2098.23, 2223.43, 2096.18, 2226.38, 2093.73, 2229.0, 2090.94, + 2231.25, 2087.84, 2233.1, 2084.49, 2234.51, 2080.93, 2235.46, 2077.22, + 2235.94, 2073.42, 2235.94, 2069.58, 2235.46, 2065.78, 2234.51, + 2062.07, 2233.1, 2058.51, 2231.25, 2055.16, 2229.0, 2052.06, 2226.38, + 2049.27, 2223.43, 2046.82, 2220.19, 2044.77, 2216.73, 2043.14, + 2213.09, 2041.96, 2209.32, 2041.24, 2205.5, 2041.0, 2201.68, 2041.24, + 2197.91, 2041.96, 2194.27, 2043.14, 2190.81, 2044.77, 2187.57, + 2046.82, 2184.62, 2049.27, 2182.0, 2052.06, 2179.75, 2055.16, 2177.9, + 2058.51, 2176.49, 2062.07, 2175.54, 2065.78, 2175.06, 2069.58, + 2175.06, 2073.42, 2175.54, 2077.22, 2176.49, 2080.93, 2177.9, 2084.49, + 2179.75, 2087.84, 2182.0, 2090.94, 2184.62, 2093.73, 2187.57, 2096.18, + 2190.81, 2098.23, 2194.27, 2099.86, 2197.91, 2101.04, 2201.68, 2101.76 + ] + ], + "area": 2916.0, + "bbox": [2175.06, 2041.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 377, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 804.0, 2262.0, 871.0, 2262.0, 871.0, 2319.0, 804.0, 2319.0, 804.0, + 2262.0 + ] + ], + "area": 3819.0, + "bbox": [804.0, 2262.0, 67.0, 57.0], + "iscrowd": 0 + }, + { + "id": 378, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2793.0, 570.5, 2792.63, 576.33, 2791.54, 582.06, 2789.73, 587.62, + 2787.25, 592.9, 2784.12, 597.83, 2780.4, 602.33, 2776.14, 606.33, + 2771.42, 609.76, 2766.3, 612.57, 2760.87, 614.72, 2755.21, 616.18, + 2749.42, 616.91, 2743.58, 616.91, 2737.79, 616.18, 2732.13, 614.72, + 2726.7, 612.57, 2721.58, 609.76, 2716.86, 606.33, 2712.6, 602.33, + 2708.88, 597.83, 2705.75, 592.9, 2703.27, 587.62, 2701.46, 582.06, + 2700.37, 576.33, 2700.0, 570.5, 2700.37, 564.67, 2701.46, 558.94, + 2703.27, 553.38, 2705.75, 548.1, 2708.88, 543.17, 2712.6, 538.67, + 2716.86, 534.67, 2721.58, 531.24, 2726.7, 528.43, 2732.13, 526.28, + 2737.79, 524.82, 2743.58, 524.09, 2749.42, 524.09, 2755.21, 524.82, + 2760.87, 526.28, 2766.3, 528.43, 2771.42, 531.24, 2776.14, 534.67, + 2780.4, 538.67, 2784.12, 543.17, 2787.25, 548.1, 2789.73, 553.38, + 2791.54, 558.94, 2792.63, 564.67 + ] + ], + "area": 6782.0, + "bbox": [2700.0, 524.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 379, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 468.0, 2552.0, 567.0, 2552.0, 567.0, 2629.0, 468.0, 2629.0, 468.0, + 2552.0 + ] + ], + "area": 7623.0, + "bbox": [468.0, 2552.0, 99.0, 77.0], + "iscrowd": 0 + }, + { + "id": 380, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2682.0, 1179.0, 2758.0, 1179.0, 2758.0, 1245.0, 2682.0, 1245.0, + 2682.0, 1179.0 + ] + ], + "area": 5016.0, + "bbox": [2682.0, 1179.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 381, + "image_id": 5, + "category_id": 3, + "segmentation": [[787.0, 2565.0, 749.0, 2631.0, 825.0, 2631.0]], + "area": 2514.0, + "bbox": [749.0, 2565.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 382, + "image_id": 5, + "category_id": 3, + "segmentation": [[1979.0, 2117.0, 1950.0, 2168.0, 2008.0, 2168.0]], + "area": 1484.0, + "bbox": [1950.0, 2117.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 383, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2572.0, 3412.0, 2652.0, 3412.0, 2652.0, 3486.0, 2572.0, 3486.0, + 2572.0, 3412.0 + ] + ], + "area": 5920.0, + "bbox": [2572.0, 3412.0, 80.0, 74.0], + "iscrowd": 0 + }, + { + "id": 384, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [180.0, 29.0, 272.0, 29.0, 272.0, 82.0, 180.0, 82.0, 180.0, 29.0] + ], + "area": 4876.0, + "bbox": [180.0, 29.0, 92.0, 53.0], + "iscrowd": 0 + }, + { + "id": 385, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1097.0, 1281.0, 1167.0, 1281.0, 1167.0, 1340.0, 1097.0, 1340.0, + 1097.0, 1281.0 + ] + ], + "area": 4130.0, + "bbox": [1097.0, 1281.0, 70.0, 59.0], + "iscrowd": 0 + }, + { + "id": 386, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1773.5, 634.0, 1779.08, 633.65, 1784.57, 632.6, 1789.88, 630.88, + 1794.94, 628.5, 1799.66, 625.5, 1803.96, 621.94, 1807.79, 617.87, + 1811.07, 613.34, 1813.76, 608.45, 1815.82, 603.25, 1817.21, 597.84, + 1817.91, 592.29, 1817.91, 586.71, 1817.21, 581.16, 1815.82, 575.75, + 1813.76, 570.55, 1811.07, 565.66, 1807.79, 561.13, 1803.96, 557.06, + 1799.66, 553.5, 1794.94, 550.5, 1789.88, 548.12, 1784.57, 546.4, + 1779.08, 545.35, 1773.5, 545.0, 1767.92, 545.35, 1762.43, 546.4, + 1757.12, 548.12, 1752.06, 550.5, 1747.34, 553.5, 1743.04, 557.06, + 1739.21, 561.13, 1735.93, 565.66, 1733.24, 570.55, 1731.18, 575.75, + 1729.79, 581.16, 1729.09, 586.71, 1729.09, 592.29, 1729.79, 597.84, + 1731.18, 603.25, 1733.24, 608.45, 1735.93, 613.34, 1739.21, 617.87, + 1743.04, 621.94, 1747.34, 625.5, 1752.06, 628.5, 1757.12, 630.88, + 1762.43, 632.6, 1767.92, 633.65 + ] + ], + "area": 6209.0, + "bbox": [1729.09, 545.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 387, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1530.0, 1005.0, 1620.0, 1005.0, 1620.0, 1075.0, 1530.0, 1075.0, + 1530.0, 1005.0 + ] + ], + "area": 6300.0, + "bbox": [1530.0, 1005.0, 90.0, 70.0], + "iscrowd": 0 + }, + { + "id": 388, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2176.5, 137.0, 2180.2, 136.77, 2183.84, 136.07, 2187.36, 134.93, + 2190.71, 133.35, 2193.84, 131.37, 2196.69, 129.0, 2199.23, 126.3, + 2201.41, 123.31, 2203.19, 120.06, 2204.56, 116.62, 2205.48, 113.03, + 2205.94, 109.35, 2205.94, 105.65, 2205.48, 101.97, 2204.56, 98.38, + 2203.19, 94.94, 2201.41, 91.69, 2199.23, 88.7, 2196.69, 86.0, 2193.84, + 83.63, 2190.71, 81.65, 2187.36, 80.07, 2183.84, 78.93, 2180.2, 78.23, + 2176.5, 78.0, 2172.8, 78.23, 2169.16, 78.93, 2165.64, 80.07, 2162.29, + 81.65, 2159.16, 83.63, 2156.31, 86.0, 2153.77, 88.7, 2151.59, 91.69, + 2149.81, 94.94, 2148.44, 98.38, 2147.52, 101.97, 2147.06, 105.65, + 2147.06, 109.35, 2147.52, 113.03, 2148.44, 116.62, 2149.81, 120.06, + 2151.59, 123.31, 2153.77, 126.3, 2156.31, 129.0, 2159.16, 131.37, + 2162.29, 133.35, 2165.64, 134.93, 2169.16, 136.07, 2172.8, 136.77 + ] + ], + "area": 2732.0, + "bbox": [2147.06, 78.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 389, + "image_id": 5, + "category_id": 3, + "segmentation": [[2025.0, 3074.0, 1985.0, 3144.0, 2065.0, 3144.0]], + "area": 2800.0, + "bbox": [1985.0, 3074.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 390, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 444.5, 2849.0, 449.7, 2848.67, 454.82, 2847.7, 459.78, 2846.09, + 464.49, 2843.87, 468.89, 2841.07, 472.91, 2837.75, 476.48, 2833.95, + 479.54, 2829.74, 482.05, 2825.17, 483.97, 2820.32, 485.26, 2815.28, + 485.92, 2810.11, 485.92, 2804.89, 485.26, 2799.72, 483.97, 2794.68, + 482.05, 2789.83, 479.54, 2785.26, 476.48, 2781.05, 472.91, 2777.25, + 468.89, 2773.93, 464.49, 2771.13, 459.78, 2768.91, 454.82, 2767.3, + 449.7, 2766.33, 444.5, 2766.0, 439.3, 2766.33, 434.18, 2767.3, 429.22, + 2768.91, 424.51, 2771.13, 420.11, 2773.93, 416.09, 2777.25, 412.52, + 2781.05, 409.46, 2785.26, 406.95, 2789.83, 405.03, 2794.68, 403.74, + 2799.72, 403.08, 2804.89, 403.08, 2810.11, 403.74, 2815.28, 405.03, + 2820.32, 406.95, 2825.17, 409.46, 2829.74, 412.52, 2833.95, 416.09, + 2837.75, 420.11, 2841.07, 424.51, 2843.87, 429.22, 2846.09, 434.18, + 2847.7, 439.3, 2848.67 + ] + ], + "area": 5392.0, + "bbox": [403.08, 2766.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 391, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1091.0, 2434.0, 1166.0, 2434.0, 1166.0, 2489.0, 1091.0, 2489.0, + 1091.0, 2434.0 + ] + ], + "area": 4125.0, + "bbox": [1091.0, 2434.0, 75.0, 55.0], + "iscrowd": 0 + }, + { + "id": 392, + "image_id": 5, + "category_id": 3, + "segmentation": [[1790.0, 0.0, 1765.0, 43.0, 1815.0, 43.0]], + "area": 1080.0, + "bbox": [1765.0, 0.0, 50.0, 43.0], + "iscrowd": 0 + }, + { + "id": 393, + "image_id": 5, + "category_id": 3, + "segmentation": [[307.5, 2162.0, 275.0, 2219.0, 340.0, 2219.0]], + "area": 1857.0, + "bbox": [275.0, 2162.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 394, + "image_id": 5, + "category_id": 3, + "segmentation": [[3175.0, 896.0, 3148.0, 943.0, 3202.0, 943.0]], + "area": 1274.0, + "bbox": [3148.0, 896.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 395, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 485.5, 1724.0, 489.45, 1723.75, 493.33, 1723.01, 497.1, 1721.79, + 500.68, 1720.1, 504.02, 1717.98, 507.06, 1715.46, 509.77, 1712.58, + 512.1, 1709.38, 514.0, 1705.91, 515.46, 1702.23, 516.44, 1698.4, + 516.94, 1694.48, 516.94, 1690.52, 516.44, 1686.6, 515.46, 1682.77, + 514.0, 1679.09, 512.1, 1675.62, 509.77, 1672.42, 507.06, 1669.54, + 504.02, 1667.02, 500.68, 1664.9, 497.1, 1663.21, 493.33, 1661.99, + 489.45, 1661.25, 485.5, 1661.0, 481.55, 1661.25, 477.67, 1661.99, + 473.9, 1663.21, 470.32, 1664.9, 466.98, 1667.02, 463.94, 1669.54, + 461.23, 1672.42, 458.9, 1675.62, 457.0, 1679.09, 455.54, 1682.77, + 454.56, 1686.6, 454.06, 1690.52, 454.06, 1694.48, 454.56, 1698.4, + 455.54, 1702.23, 457.0, 1705.91, 458.9, 1709.38, 461.23, 1712.58, + 463.94, 1715.46, 466.98, 1717.98, 470.32, 1720.1, 473.9, 1721.79, + 477.67, 1723.01, 481.55, 1723.75 + ] + ], + "area": 3121.0, + "bbox": [454.06, 1661.0, 62.88, 63.0], + "iscrowd": 0 + }, + { + "id": 396, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 857.0, 3221.0, 941.0, 3221.0, 941.0, 3284.0, 857.0, 3284.0, 857.0, + 3221.0 + ] + ], + "area": 5292.0, + "bbox": [857.0, 3221.0, 84.0, 63.0], + "iscrowd": 0 + }, + { + "id": 397, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2135.0, 2627.0, 2187.0, 2627.0, 2187.0, 2681.0, 2135.0, 2681.0, + 2135.0, 2627.0 + ] + ], + "area": 2808.0, + "bbox": [2135.0, 2627.0, 52.0, 54.0], + "iscrowd": 0 + }, + { + "id": 398, + "image_id": 5, + "category_id": 3, + "segmentation": [[789.0, 627.0, 762.0, 674.0, 816.0, 674.0]], + "area": 1274.0, + "bbox": [762.0, 627.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 399, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3239.0, 2872.0, 3302.0, 2872.0, 3302.0, 2941.0, 3239.0, 2941.0, + 3239.0, 2872.0 + ] + ], + "area": 4347.0, + "bbox": [3239.0, 2872.0, 63.0, 69.0], + "iscrowd": 0 + }, + { + "id": 400, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1632.0, 235.0, 1701.0, 235.0, 1701.0, 314.0, 1632.0, 314.0, 1632.0, + 235.0 + ] + ], + "area": 5451.0, + "bbox": [1632.0, 235.0, 69.0, 79.0], + "iscrowd": 0 + }, + { + "id": 401, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2577.0, 315.0, 2667.0, 315.0, 2667.0, 407.0, 2577.0, 407.0, 2577.0, + 315.0 + ] + ], + "area": 8280.0, + "bbox": [2577.0, 315.0, 90.0, 92.0], + "iscrowd": 0 + }, + { + "id": 402, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2308.0, 2054.0, 2384.0, 2054.0, 2384.0, 2120.0, 2308.0, 2120.0, + 2308.0, 2054.0 + ] + ], + "area": 5016.0, + "bbox": [2308.0, 2054.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 403, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [82.0, 1263.0, 151.0, 1263.0, 151.0, 1348.0, 82.0, 1348.0, 82.0, 1263.0] + ], + "area": 5865.0, + "bbox": [82.0, 1263.0, 69.0, 85.0], + "iscrowd": 0 + }, + { + "id": 404, + "image_id": 5, + "category_id": 3, + "segmentation": [[533.0, 887.0, 502.0, 941.0, 564.0, 941.0]], + "area": 1680.0, + "bbox": [502.0, 887.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 405, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2444.0, 3391.0, 2507.0, 3391.0, 2507.0, 3468.0, 2444.0, 3468.0, + 2444.0, 3391.0 + ] + ], + "area": 4851.0, + "bbox": [2444.0, 3391.0, 63.0, 77.0], + "iscrowd": 0 + }, + { + "id": 406, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2480.0, 153.0, 2531.0, 153.0, 2531.0, 206.0, 2480.0, 206.0, 2480.0, + 153.0 + ] + ], + "area": 2703.0, + "bbox": [2480.0, 153.0, 51.0, 53.0], + "iscrowd": 0 + }, + { + "id": 407, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3081.0, 1131.0, 3164.0, 1131.0, 3164.0, 1206.0, 3081.0, 1206.0, + 3081.0, 1131.0 + ] + ], + "area": 6225.0, + "bbox": [3081.0, 1131.0, 83.0, 75.0], + "iscrowd": 0 + }, + { + "id": 408, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 985.0, 2240.5, 984.76, 2244.32, 984.04, 2248.09, 982.86, 2251.73, + 981.23, 2255.19, 979.18, 2258.43, 976.73, 2261.38, 973.94, 2264.0, + 970.84, 2266.25, 967.49, 2268.1, 963.93, 2269.51, 960.22, 2270.46, + 956.42, 2270.94, 952.58, 2270.94, 948.78, 2270.46, 945.07, 2269.51, + 941.51, 2268.1, 938.16, 2266.25, 935.06, 2264.0, 932.27, 2261.38, + 929.82, 2258.43, 927.77, 2255.19, 926.14, 2251.73, 924.96, 2248.09, + 924.24, 2244.32, 924.0, 2240.5, 924.24, 2236.68, 924.96, 2232.91, + 926.14, 2229.27, 927.77, 2225.81, 929.82, 2222.57, 932.27, 2219.62, + 935.06, 2217.0, 938.16, 2214.75, 941.51, 2212.9, 945.07, 2211.49, + 948.78, 2210.54, 952.58, 2210.06, 956.42, 2210.06, 960.22, 2210.54, + 963.93, 2211.49, 967.49, 2212.9, 970.84, 2214.75, 973.94, 2217.0, + 976.73, 2219.62, 979.18, 2222.57, 981.23, 2225.81, 982.86, 2229.27, + 984.04, 2232.91, 984.76, 2236.68 + ] + ], + "area": 2915.0, + "bbox": [924.0, 2210.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 409, + "image_id": 5, + "category_id": 3, + "segmentation": [[967.5, 1659.0, 933.0, 1719.0, 1002.0, 1719.0]], + "area": 2078.0, + "bbox": [933.0, 1659.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 410, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2074.0, 2867.5, 2073.67, 2872.7, 2072.7, 2877.82, 2071.09, 2882.78, + 2068.87, 2887.49, 2066.07, 2891.89, 2062.75, 2895.91, 2058.95, + 2899.48, 2054.74, 2902.54, 2050.17, 2905.05, 2045.32, 2906.97, + 2040.28, 2908.26, 2035.11, 2908.92, 2029.89, 2908.92, 2024.72, + 2908.26, 2019.68, 2906.97, 2014.83, 2905.05, 2010.26, 2902.54, + 2006.05, 2899.48, 2002.25, 2895.91, 1998.93, 2891.89, 1996.13, + 2887.49, 1993.91, 2882.78, 1992.3, 2877.82, 1991.33, 2872.7, 1991.0, + 2867.5, 1991.33, 2862.3, 1992.3, 2857.18, 1993.91, 2852.22, 1996.13, + 2847.51, 1998.93, 2843.11, 2002.25, 2839.09, 2006.05, 2835.52, + 2010.26, 2832.46, 2014.83, 2829.95, 2019.68, 2828.03, 2024.72, + 2826.74, 2029.89, 2826.08, 2035.11, 2826.08, 2040.28, 2826.74, + 2045.32, 2828.03, 2050.17, 2829.95, 2054.74, 2832.46, 2058.95, + 2835.52, 2062.75, 2839.09, 2066.07, 2843.11, 2068.87, 2847.51, + 2071.09, 2852.22, 2072.7, 2857.18, 2073.67, 2862.3 + ] + ], + "area": 5394.0, + "bbox": [1991.0, 2826.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 411, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 386.0, 2608.5, 385.7, 2613.2, 384.82, 2617.83, 383.37, 2622.3, 381.36, + 2626.57, 378.84, 2630.54, 375.84, 2634.17, 372.4, 2637.39, 368.59, + 2640.16, 364.47, 2642.43, 360.09, 2644.16, 355.53, 2645.34, 350.85, + 2645.93, 346.15, 2645.93, 341.47, 2645.34, 336.91, 2644.16, 332.53, + 2642.43, 328.41, 2640.16, 324.6, 2637.39, 321.16, 2634.17, 318.16, + 2630.54, 315.64, 2626.57, 313.63, 2622.3, 312.18, 2617.83, 311.3, + 2613.2, 311.0, 2608.5, 311.3, 2603.8, 312.18, 2599.17, 313.63, 2594.7, + 315.64, 2590.43, 318.16, 2586.46, 321.16, 2582.83, 324.6, 2579.61, + 328.41, 2576.84, 332.53, 2574.57, 336.91, 2572.84, 341.47, 2571.66, + 346.15, 2571.07, 350.85, 2571.07, 355.53, 2571.66, 360.09, 2572.84, + 364.47, 2574.57, 368.59, 2576.84, 372.4, 2579.61, 375.84, 2582.83, + 378.84, 2586.46, 381.36, 2590.43, 383.37, 2594.7, 384.82, 2599.17, + 385.7, 2603.8 + ] + ], + "area": 4410.0, + "bbox": [311.0, 2571.07, 75.0, 74.86], + "iscrowd": 0 + }, + { + "id": 412, + "image_id": 5, + "category_id": 3, + "segmentation": [[1325.0, 2477.0, 1282.0, 2552.0, 1368.0, 2552.0]], + "area": 3234.0, + "bbox": [1282.0, 2477.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 413, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 735.0, 1942.0, 785.0, 1942.0, 785.0, 2004.0, 735.0, 2004.0, 735.0, + 1942.0 + ] + ], + "area": 3100.0, + "bbox": [735.0, 1942.0, 50.0, 62.0], + "iscrowd": 0 + }, + { + "id": 414, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1349.0, 932.0, 1402.0, 932.0, 1402.0, 1016.0, 1349.0, 1016.0, 1349.0, + 932.0 + ] + ], + "area": 4452.0, + "bbox": [1349.0, 932.0, 53.0, 84.0], + "iscrowd": 0 + }, + { + "id": 415, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1188.0, 1477.5, 1187.78, 1480.95, 1187.14, 1484.34, 1186.07, 1487.62, + 1184.6, 1490.75, 1182.75, 1493.66, 1180.55, 1496.33, 1178.03, 1498.69, + 1175.24, 1500.72, 1172.21, 1502.38, 1169.0, 1503.65, 1165.65, 1504.51, + 1162.23, 1504.95, 1158.77, 1504.95, 1155.35, 1504.51, 1152.0, 1503.65, + 1148.79, 1502.38, 1145.76, 1500.72, 1142.97, 1498.69, 1140.45, + 1496.33, 1138.25, 1493.66, 1136.4, 1490.75, 1134.93, 1487.62, 1133.86, + 1484.34, 1133.22, 1480.95, 1133.0, 1477.5, 1133.22, 1474.05, 1133.86, + 1470.66, 1134.93, 1467.38, 1136.4, 1464.25, 1138.25, 1461.34, 1140.45, + 1458.67, 1142.97, 1456.31, 1145.76, 1454.28, 1148.79, 1452.62, 1152.0, + 1451.35, 1155.35, 1450.49, 1158.77, 1450.05, 1162.23, 1450.05, + 1165.65, 1450.49, 1169.0, 1451.35, 1172.21, 1452.62, 1175.24, 1454.28, + 1178.03, 1456.31, 1180.55, 1458.67, 1182.75, 1461.34, 1184.6, 1464.25, + 1186.07, 1467.38, 1187.14, 1470.66, 1187.78, 1474.05 + ] + ], + "area": 2375.0, + "bbox": [1133.0, 1450.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 416, + "image_id": 5, + "category_id": 3, + "segmentation": [[2225.5, 2143.0, 2177.0, 2228.0, 2274.0, 2228.0]], + "area": 4129.0, + "bbox": [2177.0, 2143.0, 97.0, 85.0], + "iscrowd": 0 + }, + { + "id": 417, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3163.0, 240.0, 3244.0, 240.0, 3244.0, 311.0, 3163.0, 311.0, 3163.0, + 240.0 + ] + ], + "area": 5751.0, + "bbox": [3163.0, 240.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 418, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 170.0, 137.5, 169.78, 140.95, 169.14, 144.34, 168.07, 147.62, 166.6, + 150.75, 164.75, 153.66, 162.55, 156.33, 160.03, 158.69, 157.24, + 160.72, 154.21, 162.38, 151.0, 163.65, 147.65, 164.51, 144.23, 164.95, + 140.77, 164.95, 137.35, 164.51, 134.0, 163.65, 130.79, 162.38, 127.76, + 160.72, 124.97, 158.69, 122.45, 156.33, 120.25, 153.66, 118.4, 150.75, + 116.93, 147.62, 115.86, 144.34, 115.22, 140.95, 115.0, 137.5, 115.22, + 134.05, 115.86, 130.66, 116.93, 127.38, 118.4, 124.25, 120.25, 121.34, + 122.45, 118.67, 124.97, 116.31, 127.76, 114.28, 130.79, 112.62, 134.0, + 111.35, 137.35, 110.49, 140.77, 110.05, 144.23, 110.05, 147.65, + 110.49, 151.0, 111.35, 154.21, 112.62, 157.24, 114.28, 160.03, 116.31, + 162.55, 118.67, 164.75, 121.34, 166.6, 124.25, 168.07, 127.38, 169.14, + 130.66, 169.78, 134.05 + ] + ], + "area": 2375.0, + "bbox": [115.0, 110.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 419, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 671.5, 1252.0, 677.58, 1251.62, 683.56, 1250.48, 689.35, 1248.59, + 694.87, 1246.0, 700.01, 1242.74, 704.7, 1238.85, 708.87, 1234.42, + 712.45, 1229.49, 715.38, 1224.15, 717.63, 1218.49, 719.14, 1212.59, + 719.9, 1206.55, 719.9, 1200.45, 719.14, 1194.41, 717.63, 1188.51, + 715.38, 1182.85, 712.45, 1177.51, 708.87, 1172.58, 704.7, 1168.15, + 700.01, 1164.26, 694.87, 1161.0, 689.35, 1158.41, 683.56, 1156.52, + 677.58, 1155.38, 671.5, 1155.0, 665.42, 1155.38, 659.44, 1156.52, + 653.65, 1158.41, 648.13, 1161.0, 642.99, 1164.26, 638.3, 1168.15, + 634.13, 1172.58, 630.55, 1177.51, 627.62, 1182.85, 625.37, 1188.51, + 623.86, 1194.41, 623.1, 1200.45, 623.1, 1206.55, 623.86, 1212.59, + 625.37, 1218.49, 627.62, 1224.15, 630.55, 1229.49, 634.13, 1234.42, + 638.3, 1238.85, 642.99, 1242.74, 648.13, 1246.0, 653.65, 1248.59, + 659.44, 1250.48, 665.42, 1251.62 + ] + ], + "area": 7380.0, + "bbox": [623.1, 1155.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 420, + "image_id": 5, + "category_id": 3, + "segmentation": [[2617.0, 2300.0, 2582.0, 2361.0, 2652.0, 2361.0]], + "area": 2142.0, + "bbox": [2582.0, 2300.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 421, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [260.0, 512.0, 312.0, 512.0, 312.0, 605.0, 260.0, 605.0, 260.0, 512.0] + ], + "area": 4836.0, + "bbox": [260.0, 512.0, 52.0, 93.0], + "iscrowd": 0 + }, + { + "id": 422, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3124.0, 1219.0, 3188.0, 1219.0, 3188.0, 1302.0, 3124.0, 1302.0, + 3124.0, 1219.0 + ] + ], + "area": 5312.0, + "bbox": [3124.0, 1219.0, 64.0, 83.0], + "iscrowd": 0 + }, + { + "id": 423, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 149.0, 2869.0, 230.0, 2869.0, 230.0, 2956.0, 149.0, 2956.0, 149.0, + 2869.0 + ] + ], + "area": 7047.0, + "bbox": [149.0, 2869.0, 81.0, 87.0], + "iscrowd": 0 + }, + { + "id": 424, + "image_id": 5, + "category_id": 3, + "segmentation": [[836.5, 1274.0, 798.0, 1341.0, 875.0, 1341.0]], + "area": 2588.0, + "bbox": [798.0, 1274.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 425, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [1279.0, 29.0, 1375.0, 29.0, 1375.0, 99.0, 1279.0, 99.0, 1279.0, 29.0] + ], + "area": 6720.0, + "bbox": [1279.0, 29.0, 96.0, 70.0], + "iscrowd": 0 + }, + { + "id": 426, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1905.0, 959.0, 1992.0, 959.0, 1992.0, 1042.0, 1905.0, 1042.0, 1905.0, + 959.0 + ] + ], + "area": 7221.0, + "bbox": [1905.0, 959.0, 87.0, 83.0], + "iscrowd": 0 + }, + { + "id": 427, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2844.0, 3020.0, 2938.0, 3020.0, 2938.0, 3078.0, 2844.0, 3078.0, + 2844.0, 3020.0 + ] + ], + "area": 5452.0, + "bbox": [2844.0, 3020.0, 94.0, 58.0], + "iscrowd": 0 + }, + { + "id": 428, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1801.0, 1839.0, 1864.0, 1839.0, 1864.0, 1900.0, 1801.0, 1900.0, + 1801.0, 1839.0 + ] + ], + "area": 3843.0, + "bbox": [1801.0, 1839.0, 63.0, 61.0], + "iscrowd": 0 + }, + { + "id": 429, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 826.0, 2114.0, 922.0, 2114.0, 922.0, 2209.0, 826.0, 2209.0, 826.0, + 2114.0 + ] + ], + "area": 9120.0, + "bbox": [826.0, 2114.0, 96.0, 95.0], + "iscrowd": 0 + }, + { + "id": 430, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1006.0, 559.0, 1087.0, 559.0, 1087.0, 625.0, 1006.0, 625.0, 1006.0, + 559.0 + ] + ], + "area": 5346.0, + "bbox": [1006.0, 559.0, 81.0, 66.0], + "iscrowd": 0 + }, + { + "id": 431, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2521.0, 1561.5, 2520.63, 1567.45, 2519.51, 1573.31, 2517.66, 1578.99, + 2515.12, 1584.38, 2511.93, 1589.42, 2508.13, 1594.02, 2503.78, 1598.1, + 2498.95, 1601.61, 2493.72, 1604.48, 2488.18, 1606.68, 2482.4, 1608.16, + 2476.48, 1608.91, 2470.52, 1608.91, 2464.6, 1608.16, 2458.82, 1606.68, + 2453.28, 1604.48, 2448.05, 1601.61, 2443.22, 1598.1, 2438.87, 1594.02, + 2435.07, 1589.42, 2431.88, 1584.38, 2429.34, 1578.99, 2427.49, + 1573.31, 2426.37, 1567.45, 2426.0, 1561.5, 2426.37, 1555.55, 2427.49, + 1549.69, 2429.34, 1544.01, 2431.88, 1538.62, 2435.07, 1533.58, + 2438.87, 1528.98, 2443.22, 1524.9, 2448.05, 1521.39, 2453.28, 1518.52, + 2458.82, 1516.32, 2464.6, 1514.84, 2470.52, 1514.09, 2476.48, 1514.09, + 2482.4, 1514.84, 2488.18, 1516.32, 2493.72, 1518.52, 2498.95, 1521.39, + 2503.78, 1524.9, 2508.13, 1528.98, 2511.93, 1533.58, 2515.12, 1538.62, + 2517.66, 1544.01, 2519.51, 1549.69, 2520.63, 1555.55 + ] + ], + "area": 7083.0, + "bbox": [2426.0, 1514.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 432, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2185.0, 172.0, 2258.0, 172.0, 2258.0, 237.0, 2185.0, 237.0, 2185.0, + 172.0 + ] + ], + "area": 4745.0, + "bbox": [2185.0, 172.0, 73.0, 65.0], + "iscrowd": 0 + }, + { + "id": 433, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [867.0, 844.0, 960.0, 844.0, 960.0, 939.0, 867.0, 939.0, 867.0, 844.0] + ], + "area": 8835.0, + "bbox": [867.0, 844.0, 93.0, 95.0], + "iscrowd": 0 + }, + { + "id": 434, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 401.0, 3057.5, 400.69, 3062.45, 399.76, 3067.32, 398.23, 3072.04, + 396.11, 3076.53, 393.46, 3080.72, 390.29, 3084.54, 386.68, 3087.94, + 382.67, 3090.85, 378.32, 3093.24, 373.71, 3095.07, 368.9, 3096.3, + 363.98, 3096.92, 359.02, 3096.92, 354.1, 3096.3, 349.29, 3095.07, + 344.68, 3093.24, 340.33, 3090.85, 336.32, 3087.94, 332.71, 3084.54, + 329.54, 3080.72, 326.89, 3076.53, 324.77, 3072.04, 323.24, 3067.32, + 322.31, 3062.45, 322.0, 3057.5, 322.31, 3052.55, 323.24, 3047.68, + 324.77, 3042.96, 326.89, 3038.47, 329.54, 3034.28, 332.71, 3030.46, + 336.32, 3027.06, 340.33, 3024.15, 344.68, 3021.76, 349.29, 3019.93, + 354.1, 3018.7, 359.02, 3018.08, 363.98, 3018.08, 368.9, 3018.7, + 373.71, 3019.93, 378.32, 3021.76, 382.67, 3024.15, 386.68, 3027.06, + 390.29, 3030.46, 393.46, 3034.28, 396.11, 3038.47, 398.23, 3042.96, + 399.76, 3047.68, 400.69, 3052.55 + ] + ], + "area": 4893.0, + "bbox": [322.0, 3018.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 435, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2790.0, 2198.0, 2861.0, 2198.0, 2861.0, 2284.0, 2790.0, 2284.0, + 2790.0, 2198.0 + ] + ], + "area": 6106.0, + "bbox": [2790.0, 2198.0, 71.0, 86.0], + "iscrowd": 0 + }, + { + "id": 436, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1154.0, 169.0, 1250.0, 169.0, 1250.0, 254.0, 1154.0, 254.0, 1154.0, + 169.0 + ] + ], + "area": 8160.0, + "bbox": [1154.0, 169.0, 96.0, 85.0], + "iscrowd": 0 + }, + { + "id": 437, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1031.0, 1720.0, 1113.0, 1720.0, 1113.0, 1818.0, 1031.0, 1818.0, + 1031.0, 1720.0 + ] + ], + "area": 8036.0, + "bbox": [1031.0, 1720.0, 82.0, 98.0], + "iscrowd": 0 + }, + { + "id": 438, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2427.0, 606.0, 2481.0, 606.0, 2481.0, 691.0, 2427.0, 691.0, 2427.0, + 606.0 + ] + ], + "area": 4590.0, + "bbox": [2427.0, 606.0, 54.0, 85.0], + "iscrowd": 0 + }, + { + "id": 439, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1962.0, 796.0, 2012.0, 796.0, 2012.0, 885.0, 1962.0, 885.0, 1962.0, + 796.0 + ] + ], + "area": 4450.0, + "bbox": [1962.0, 796.0, 50.0, 89.0], + "iscrowd": 0 + }, + { + "id": 440, + "image_id": 5, + "category_id": 3, + "segmentation": [[782.0, 242.0, 737.0, 321.0, 827.0, 321.0]], + "area": 3564.0, + "bbox": [737.0, 242.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 441, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2042.0, 1973.0, 2097.0, 1973.0, 2097.0, 2033.0, 2042.0, 2033.0, + 2042.0, 1973.0 + ] + ], + "area": 3300.0, + "bbox": [2042.0, 1973.0, 55.0, 60.0], + "iscrowd": 0 + }, + { + "id": 442, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3189.0, 2595.0, 3262.0, 2595.0, 3262.0, 2666.0, 3189.0, 2666.0, + 3189.0, 2595.0 + ] + ], + "area": 5183.0, + "bbox": [3189.0, 2595.0, 73.0, 71.0], + "iscrowd": 0 + }, + { + "id": 443, + "image_id": 5, + "category_id": 3, + "segmentation": [[1857.5, 3248.0, 1827.0, 3301.0, 1888.0, 3301.0]], + "area": 1623.0, + "bbox": [1827.0, 3248.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 444, + "image_id": 5, + "category_id": 3, + "segmentation": [[3342.0, 2210.0, 3308.0, 2270.0, 3376.0, 2270.0]], + "area": 2048.0, + "bbox": [3308.0, 2210.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 445, + "image_id": 5, + "category_id": 3, + "segmentation": [[2568.0, 33.0, 2531.0, 98.0, 2605.0, 98.0]], + "area": 2412.0, + "bbox": [2531.0, 33.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 446, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2134.5, 1551.0, 2139.33, 1550.7, 2144.07, 1549.79, 2148.67, 1548.3, + 2153.05, 1546.24, 2157.13, 1543.65, 2160.86, 1540.57, 2164.16, + 1537.04, 2167.01, 1533.13, 2169.34, 1528.89, 2171.12, 1524.4, 2172.32, + 1519.71, 2172.92, 1514.92, 2172.92, 1510.08, 2172.32, 1505.29, + 2171.12, 1500.6, 2169.34, 1496.11, 2167.01, 1491.87, 2164.16, 1487.96, + 2160.86, 1484.43, 2157.13, 1481.35, 2153.05, 1478.76, 2148.67, 1476.7, + 2144.07, 1475.21, 2139.33, 1474.3, 2134.5, 1474.0, 2129.67, 1474.3, + 2124.93, 1475.21, 2120.33, 1476.7, 2115.95, 1478.76, 2111.87, 1481.35, + 2108.14, 1484.43, 2104.84, 1487.96, 2101.99, 1491.87, 2099.66, + 1496.11, 2097.88, 1500.6, 2096.68, 1505.29, 2096.08, 1510.08, 2096.08, + 1514.92, 2096.68, 1519.71, 2097.88, 1524.4, 2099.66, 1528.89, 2101.99, + 1533.13, 2104.84, 1537.04, 2108.14, 1540.57, 2111.87, 1543.65, + 2115.95, 1546.24, 2120.33, 1548.3, 2124.93, 1549.79, 2129.67, 1550.7 + ] + ], + "area": 4651.0, + "bbox": [2096.08, 1474.0, 76.84, 77.0], + "iscrowd": 0 + }, + { + "id": 447, + "image_id": 5, + "category_id": 3, + "segmentation": [[107.0, 617.0, 80.0, 664.0, 134.0, 664.0]], + "area": 1274.0, + "bbox": [80.0, 617.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 448, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3254.0, 1436.0, 3343.0, 1436.0, 3343.0, 1513.0, 3254.0, 1513.0, + 3254.0, 1436.0 + ] + ], + "area": 6853.0, + "bbox": [3254.0, 1436.0, 89.0, 77.0], + "iscrowd": 0 + }, + { + "id": 449, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2255.0, 1382.0, 2316.0, 1382.0, 2316.0, 1439.0, 2255.0, 1439.0, + 2255.0, 1382.0 + ] + ], + "area": 3477.0, + "bbox": [2255.0, 1382.0, 61.0, 57.0], + "iscrowd": 0 + }, + { + "id": 450, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 375.0, 1008.0, 436.0, 1008.0, 436.0, 1097.0, 375.0, 1097.0, 375.0, + 1008.0 + ] + ], + "area": 5429.0, + "bbox": [375.0, 1008.0, 61.0, 89.0], + "iscrowd": 0 + }, + { + "id": 451, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1903.0, 2724.5, 1902.68, 2729.58, 1901.73, 2734.57, 1900.16, 2739.41, + 1897.99, 2744.01, 1895.27, 2748.31, 1892.02, 2752.22, 1888.32, + 2755.71, 1884.2, 2758.7, 1879.74, 2761.15, 1875.02, 2763.02, 1870.09, + 2764.28, 1865.04, 2764.92, 1859.96, 2764.92, 1854.91, 2764.28, + 1849.98, 2763.02, 1845.26, 2761.15, 1840.8, 2758.7, 1836.68, 2755.71, + 1832.98, 2752.22, 1829.73, 2748.31, 1827.01, 2744.01, 1824.84, + 2739.41, 1823.27, 2734.57, 1822.32, 2729.58, 1822.0, 2724.5, 1822.32, + 2719.42, 1823.27, 2714.43, 1824.84, 2709.59, 1827.01, 2704.99, + 1829.73, 2700.69, 1832.98, 2696.78, 1836.68, 2693.29, 1840.8, 2690.3, + 1845.26, 2687.85, 1849.98, 2685.98, 1854.91, 2684.72, 1859.96, + 2684.08, 1865.04, 2684.08, 1870.09, 2684.72, 1875.02, 2685.98, + 1879.74, 2687.85, 1884.2, 2690.3, 1888.32, 2693.29, 1892.02, 2696.78, + 1895.27, 2700.69, 1897.99, 2704.99, 1900.16, 2709.59, 1901.73, + 2714.43, 1902.68, 2719.42 + ] + ], + "area": 5149.0, + "bbox": [1822.0, 2684.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 452, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1668.5, 117.0, 1672.07, 116.78, 1675.59, 116.1, 1678.99, 115.0, + 1682.23, 113.47, 1685.25, 111.56, 1688.01, 109.28, 1690.46, 106.67, + 1692.56, 103.77, 1694.29, 100.63, 1695.61, 97.31, 1696.5, 93.84, + 1696.94, 90.29, 1696.94, 86.71, 1696.5, 83.16, 1695.61, 79.69, + 1694.29, 76.37, 1692.56, 73.23, 1690.46, 70.33, 1688.01, 67.72, + 1685.25, 65.44, 1682.23, 63.53, 1678.99, 62.0, 1675.59, 60.9, 1672.07, + 60.22, 1668.5, 60.0, 1664.93, 60.22, 1661.41, 60.9, 1658.01, 62.0, + 1654.77, 63.53, 1651.75, 65.44, 1648.99, 67.72, 1646.54, 70.33, + 1644.44, 73.23, 1642.71, 76.37, 1641.39, 79.69, 1640.5, 83.16, + 1640.06, 86.71, 1640.06, 90.29, 1640.5, 93.84, 1641.39, 97.31, + 1642.71, 100.63, 1644.44, 103.77, 1646.54, 106.67, 1648.99, 109.28, + 1651.75, 111.56, 1654.77, 113.47, 1658.01, 115.0, 1661.41, 116.1, + 1664.93, 116.78 + ] + ], + "area": 2547.0, + "bbox": [1640.06, 60.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 453, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3202.0, 2149.0, 3259.0, 2149.0, 3259.0, 2238.0, 3202.0, 2238.0, + 3202.0, 2149.0 + ] + ], + "area": 5073.0, + "bbox": [3202.0, 2149.0, 57.0, 89.0], + "iscrowd": 0 + }, + { + "id": 454, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2374.0, 2420.5, 2373.69, 2425.45, 2372.76, 2430.32, 2371.23, 2435.04, + 2369.11, 2439.53, 2366.46, 2443.72, 2363.29, 2447.54, 2359.68, + 2450.94, 2355.67, 2453.85, 2351.32, 2456.24, 2346.71, 2458.07, 2341.9, + 2459.3, 2336.98, 2459.92, 2332.02, 2459.92, 2327.1, 2459.3, 2322.29, + 2458.07, 2317.68, 2456.24, 2313.33, 2453.85, 2309.32, 2450.94, + 2305.71, 2447.54, 2302.54, 2443.72, 2299.89, 2439.53, 2297.77, + 2435.04, 2296.24, 2430.32, 2295.31, 2425.45, 2295.0, 2420.5, 2295.31, + 2415.55, 2296.24, 2410.68, 2297.77, 2405.96, 2299.89, 2401.47, + 2302.54, 2397.28, 2305.71, 2393.46, 2309.32, 2390.06, 2313.33, + 2387.15, 2317.68, 2384.76, 2322.29, 2382.93, 2327.1, 2381.7, 2332.02, + 2381.08, 2336.98, 2381.08, 2341.9, 2381.7, 2346.71, 2382.93, 2351.32, + 2384.76, 2355.67, 2387.15, 2359.68, 2390.06, 2363.29, 2393.46, + 2366.46, 2397.28, 2369.11, 2401.47, 2371.23, 2405.96, 2372.76, + 2410.68, 2373.69, 2415.55 + ] + ], + "area": 4893.0, + "bbox": [2295.0, 2381.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 455, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2567.0, 2135.0, 2620.0, 2135.0, 2620.0, 2206.0, 2567.0, 2206.0, + 2567.0, 2135.0 + ] + ], + "area": 3763.0, + "bbox": [2567.0, 2135.0, 53.0, 71.0], + "iscrowd": 0 + }, + { + "id": 456, + "image_id": 5, + "category_id": 3, + "segmentation": [[2280.0, 1277.0, 2240.0, 1347.0, 2320.0, 1347.0]], + "area": 2800.0, + "bbox": [2240.0, 1277.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 457, + "image_id": 5, + "category_id": 3, + "segmentation": [[3419.0, 196.0, 3386.0, 254.0, 3452.0, 254.0]], + "area": 1920.0, + "bbox": [3386.0, 196.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 458, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 3346.0, 2166.5, 3345.76, 2170.32, 3345.04, 2174.09, 3343.86, 2177.73, + 3342.23, 2181.19, 3340.18, 2184.43, 3337.73, 2187.38, 3334.94, 2190.0, + 3331.84, 2192.25, 3328.49, 2194.1, 3324.93, 2195.51, 3321.22, 2196.46, + 3317.42, 2196.94, 3313.58, 2196.94, 3309.78, 2196.46, 3306.07, + 2195.51, 3302.51, 2194.1, 3299.16, 2192.25, 3296.06, 2190.0, 3293.27, + 2187.38, 3290.82, 2184.43, 3288.77, 2181.19, 3287.14, 2177.73, + 3285.96, 2174.09, 3285.24, 2170.32, 3285.0, 2166.5, 3285.24, 2162.68, + 3285.96, 2158.91, 3287.14, 2155.27, 3288.77, 2151.81, 3290.82, + 2148.57, 3293.27, 2145.62, 3296.06, 2143.0, 3299.16, 2140.75, 3302.51, + 2138.9, 3306.07, 2137.49, 3309.78, 2136.54, 3313.58, 2136.06, 3317.42, + 2136.06, 3321.22, 2136.54, 3324.93, 2137.49, 3328.49, 2138.9, 3331.84, + 2140.75, 3334.94, 2143.0, 3337.73, 2145.62, 3340.18, 2148.57, 3342.23, + 2151.81, 3343.86, 2155.27, 3345.04, 2158.91, 3345.76, 2162.68 + ] + ], + "area": 2915.0, + "bbox": [3285.0, 2136.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 459, + "image_id": 5, + "category_id": 3, + "segmentation": [[1168.5, 2690.0, 1140.0, 2740.0, 1197.0, 2740.0]], + "area": 1430.0, + "bbox": [1140.0, 2690.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 460, + "image_id": 5, + "category_id": 3, + "segmentation": [[708.5, 579.0, 677.0, 634.0, 740.0, 634.0]], + "area": 1739.0, + "bbox": [677.0, 579.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 461, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1588.0, 2490.0, 1673.0, 2490.0, 1673.0, 2563.0, 1588.0, 2563.0, + 1588.0, 2490.0 + ] + ], + "area": 6205.0, + "bbox": [1588.0, 2490.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 462, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 382.0, 870.5, 381.81, 873.57, 381.23, 876.59, 380.28, 879.52, 378.97, + 882.3, 377.32, 884.9, 375.36, 887.27, 373.12, 889.38, 370.63, 891.19, + 367.93, 892.67, 365.07, 893.8, 362.09, 894.57, 359.04, 894.95, 355.96, + 894.95, 352.91, 894.57, 349.93, 893.8, 347.07, 892.67, 344.37, 891.19, + 341.88, 889.38, 339.64, 887.27, 337.68, 884.9, 336.03, 882.3, 334.72, + 879.52, 333.77, 876.59, 333.19, 873.57, 333.0, 870.5, 333.19, 867.43, + 333.77, 864.41, 334.72, 861.48, 336.03, 858.7, 337.68, 856.1, 339.64, + 853.73, 341.88, 851.62, 344.37, 849.81, 347.07, 848.33, 349.93, 847.2, + 352.91, 846.43, 355.96, 846.05, 359.04, 846.05, 362.09, 846.43, + 365.07, 847.2, 367.93, 848.33, 370.63, 849.81, 373.12, 851.62, 375.36, + 853.73, 377.32, 856.1, 378.97, 858.7, 380.28, 861.48, 381.23, 864.41, + 381.81, 867.43 + ] + ], + "area": 1885.0, + "bbox": [333.0, 846.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 463, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3052.0, 1427.0, 3107.0, 1427.0, 3107.0, 1482.0, 3052.0, 1482.0, + 3052.0, 1427.0 + ] + ], + "area": 3025.0, + "bbox": [3052.0, 1427.0, 55.0, 55.0], + "iscrowd": 0 + }, + { + "id": 464, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1618.0, 547.0, 1691.0, 547.0, 1691.0, 645.0, 1618.0, 645.0, 1618.0, + 547.0 + ] + ], + "area": 7154.0, + "bbox": [1618.0, 547.0, 73.0, 98.0], + "iscrowd": 0 + }, + { + "id": 465, + "image_id": 5, + "category_id": 3, + "segmentation": [[3436.0, 2076.0, 3399.0, 2141.0, 3473.0, 2141.0]], + "area": 2412.0, + "bbox": [3399.0, 2076.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 466, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1908.0, 2546.0, 1962.0, 2546.0, 1962.0, 2620.0, 1908.0, 2620.0, + 1908.0, 2546.0 + ] + ], + "area": 3996.0, + "bbox": [1908.0, 2546.0, 54.0, 74.0], + "iscrowd": 0 + }, + { + "id": 467, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [2053.0, 8.0, 2120.0, 8.0, 2120.0, 73.0, 2053.0, 73.0, 2053.0, 8.0] + ], + "area": 4355.0, + "bbox": [2053.0, 8.0, 67.0, 65.0], + "iscrowd": 0 + }, + { + "id": 468, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2087.0, 1900.0, 2173.0, 1900.0, 2173.0, 1957.0, 2087.0, 1957.0, + 2087.0, 1900.0 + ] + ], + "area": 4902.0, + "bbox": [2087.0, 1900.0, 86.0, 57.0], + "iscrowd": 0 + }, + { + "id": 469, + "image_id": 5, + "category_id": 3, + "segmentation": [[332.5, 118.0, 294.0, 185.0, 371.0, 185.0]], + "area": 2588.0, + "bbox": [294.0, 118.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 470, + "image_id": 5, + "category_id": 3, + "segmentation": [[2051.5, 2926.0, 2025.0, 2973.0, 2078.0, 2973.0]], + "area": 1251.0, + "bbox": [2025.0, 2926.0, 53.0, 47.0], + "iscrowd": 0 + }, + { + "id": 471, + "image_id": 5, + "category_id": 3, + "segmentation": [[3320.5, 774.0, 3295.0, 819.0, 3346.0, 819.0]], + "area": 1154.0, + "bbox": [3295.0, 774.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 472, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3378.0, 3269.0, 3433.0, 3269.0, 3433.0, 3354.0, 3378.0, 3354.0, + 3378.0, 3269.0 + ] + ], + "area": 4675.0, + "bbox": [3378.0, 3269.0, 55.0, 85.0], + "iscrowd": 0 + }, + { + "id": 473, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1919.0, 1408.0, 1978.0, 1408.0, 1978.0, 1502.0, 1919.0, 1502.0, + 1919.0, 1408.0 + ] + ], + "area": 5546.0, + "bbox": [1919.0, 1408.0, 59.0, 94.0], + "iscrowd": 0 + }, + { + "id": 474, + "image_id": 5, + "category_id": 3, + "segmentation": [[2896.0, 2066.0, 2863.0, 2124.0, 2929.0, 2124.0]], + "area": 1920.0, + "bbox": [2863.0, 2066.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 475, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1249.0, 1428.0, 1348.0, 1428.0, 1348.0, 1501.0, 1249.0, 1501.0, + 1249.0, 1428.0 + ] + ], + "area": 7227.0, + "bbox": [1249.0, 1428.0, 99.0, 73.0], + "iscrowd": 0 + }, + { + "id": 476, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1090.0, 316.0, 1143.0, 316.0, 1143.0, 369.0, 1090.0, 369.0, 1090.0, + 316.0 + ] + ], + "area": 2809.0, + "bbox": [1090.0, 316.0, 53.0, 53.0], + "iscrowd": 0 + }, + { + "id": 477, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 543.0, 675.5, 542.66, 680.83, 541.66, 686.07, 540.02, 691.15, 537.74, + 695.97, 534.88, 700.48, 531.48, 704.59, 527.59, 708.25, 523.27, + 711.38, 518.6, 713.96, 513.63, 715.92, 508.46, 717.25, 503.17, 717.92, + 497.83, 717.92, 492.54, 717.25, 487.37, 715.92, 482.4, 713.96, 477.73, + 711.38, 473.41, 708.25, 469.52, 704.59, 466.12, 700.48, 463.26, + 695.97, 460.98, 691.15, 459.34, 686.07, 458.34, 680.83, 458.0, 675.5, + 458.34, 670.17, 459.34, 664.93, 460.98, 659.85, 463.26, 655.03, + 466.12, 650.52, 469.52, 646.41, 473.41, 642.75, 477.73, 639.62, 482.4, + 637.04, 487.37, 635.08, 492.54, 633.75, 497.83, 633.08, 503.17, + 633.08, 508.46, 633.75, 513.63, 635.08, 518.6, 637.04, 523.27, 639.62, + 527.59, 642.75, 531.48, 646.41, 534.88, 650.52, 537.74, 655.03, + 540.02, 659.85, 541.66, 664.93, 542.66, 670.17 + ] + ], + "area": 5651.0, + "bbox": [458.0, 633.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 478, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1644.0, 1257.0, 1706.0, 1257.0, 1706.0, 1353.0, 1644.0, 1353.0, + 1644.0, 1257.0 + ] + ], + "area": 5952.0, + "bbox": [1644.0, 1257.0, 62.0, 96.0], + "iscrowd": 0 + }, + { + "id": 479, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3286.0, 1301.0, 3345.0, 1301.0, 3345.0, 1397.0, 3286.0, 1397.0, + 3286.0, 1301.0 + ] + ], + "area": 5664.0, + "bbox": [3286.0, 1301.0, 59.0, 96.0], + "iscrowd": 0 + }, + { + "id": 480, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2263.0, 2733.0, 2332.0, 2733.0, 2332.0, 2802.0, 2263.0, 2802.0, + 2263.0, 2733.0 + ] + ], + "area": 4761.0, + "bbox": [2263.0, 2733.0, 69.0, 69.0], + "iscrowd": 0 + }, + { + "id": 481, + "image_id": 5, + "category_id": 3, + "segmentation": [[1964.0, 1717.0, 1936.0, 1766.0, 1992.0, 1766.0]], + "area": 1372.0, + "bbox": [1936.0, 1717.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 482, + "image_id": 5, + "category_id": 3, + "segmentation": [[2888.0, 1268.0, 2852.0, 1331.0, 2924.0, 1331.0]], + "area": 2268.0, + "bbox": [2852.0, 1268.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 483, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [21.0, 2577.0, 86.0, 2577.0, 86.0, 2640.0, 21.0, 2640.0, 21.0, 2577.0] + ], + "area": 4095.0, + "bbox": [21.0, 2577.0, 65.0, 63.0], + "iscrowd": 0 + }, + { + "id": 484, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1870.0, 337.0, 1957.0, 337.0, 1957.0, 434.0, 1870.0, 434.0, 1870.0, + 337.0 + ] + ], + "area": 8439.0, + "bbox": [1870.0, 337.0, 87.0, 97.0], + "iscrowd": 0 + }, + { + "id": 485, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3317.0, 2814.0, 3388.0, 2814.0, 3388.0, 2910.0, 3317.0, 2910.0, + 3317.0, 2814.0 + ] + ], + "area": 6816.0, + "bbox": [3317.0, 2814.0, 71.0, 96.0], + "iscrowd": 0 + }, + { + "id": 486, + "image_id": 6, + "category_id": 3, + "segmentation": [[1558.5, 2304.0, 1528.0, 2357.0, 1589.0, 2357.0]], + "area": 1623.0, + "bbox": [1528.0, 2304.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 487, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1664.0, 1332.0, 1762.0, 1332.0, 1762.0, 1402.0, 1664.0, 1402.0, + 1664.0, 1332.0 + ] + ], + "area": 6860.0, + "bbox": [1664.0, 1332.0, 98.0, 70.0], + "iscrowd": 0 + }, + { + "id": 488, + "image_id": 6, + "category_id": 3, + "segmentation": [[2648.0, 2281.0, 2599.0, 2367.0, 2697.0, 2367.0]], + "area": 4224.0, + "bbox": [2599.0, 2281.0, 98.0, 86.0], + "iscrowd": 0 + }, + { + "id": 489, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1206.0, 959.5, 1205.78, 963.07, 1205.1, 966.59, 1204.0, 969.99, + 1202.47, 973.23, 1200.56, 976.25, 1198.28, 979.01, 1195.67, 981.46, + 1192.77, 983.56, 1189.63, 985.29, 1186.31, 986.61, 1182.84, 987.5, + 1179.29, 987.94, 1175.71, 987.94, 1172.16, 987.5, 1168.69, 986.61, + 1165.37, 985.29, 1162.23, 983.56, 1159.33, 981.46, 1156.72, 979.01, + 1154.44, 976.25, 1152.53, 973.23, 1151.0, 969.99, 1149.9, 966.59, + 1149.22, 963.07, 1149.0, 959.5, 1149.22, 955.93, 1149.9, 952.41, + 1151.0, 949.01, 1152.53, 945.77, 1154.44, 942.75, 1156.72, 939.99, + 1159.33, 937.54, 1162.23, 935.44, 1165.37, 933.71, 1168.69, 932.39, + 1172.16, 931.5, 1175.71, 931.06, 1179.29, 931.06, 1182.84, 931.5, + 1186.31, 932.39, 1189.63, 933.71, 1192.77, 935.44, 1195.67, 937.54, + 1198.28, 939.99, 1200.56, 942.75, 1202.47, 945.77, 1204.0, 949.01, + 1205.1, 952.41, 1205.78, 955.93 + ] + ], + "area": 2548.0, + "bbox": [1149.0, 931.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 490, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 931.0, 2081.0, 986.0, 2081.0, 986.0, 2159.0, 931.0, 2159.0, 931.0, + 2081.0 + ] + ], + "area": 4290.0, + "bbox": [931.0, 2081.0, 55.0, 78.0], + "iscrowd": 0 + }, + { + "id": 491, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2313.0, 963.0, 2394.0, 963.0, 2394.0, 1056.0, 2313.0, 1056.0, 2313.0, + 963.0 + ] + ], + "area": 7533.0, + "bbox": [2313.0, 963.0, 81.0, 93.0], + "iscrowd": 0 + }, + { + "id": 492, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [66.0, 2474.0, 135.0, 2474.0, 135.0, 2559.0, 66.0, 2559.0, 66.0, 2474.0] + ], + "area": 5865.0, + "bbox": [66.0, 2474.0, 69.0, 85.0], + "iscrowd": 0 + }, + { + "id": 493, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2987.0, 1724.5, 2986.78, 1727.95, 2986.14, 1731.34, 2985.07, 1734.62, + 2983.6, 1737.75, 2981.75, 1740.66, 2979.55, 1743.33, 2977.03, 1745.69, + 2974.24, 1747.72, 2971.21, 1749.38, 2968.0, 1750.65, 2964.65, 1751.51, + 2961.23, 1751.95, 2957.77, 1751.95, 2954.35, 1751.51, 2951.0, 1750.65, + 2947.79, 1749.38, 2944.76, 1747.72, 2941.97, 1745.69, 2939.45, + 1743.33, 2937.25, 1740.66, 2935.4, 1737.75, 2933.93, 1734.62, 2932.86, + 1731.34, 2932.22, 1727.95, 2932.0, 1724.5, 2932.22, 1721.05, 2932.86, + 1717.66, 2933.93, 1714.38, 2935.4, 1711.25, 2937.25, 1708.34, 2939.45, + 1705.67, 2941.97, 1703.31, 2944.76, 1701.28, 2947.79, 1699.62, 2951.0, + 1698.35, 2954.35, 1697.49, 2957.77, 1697.05, 2961.23, 1697.05, + 2964.65, 1697.49, 2968.0, 1698.35, 2971.21, 1699.62, 2974.24, 1701.28, + 2977.03, 1703.31, 2979.55, 1705.67, 2981.75, 1708.34, 2983.6, 1711.25, + 2985.07, 1714.38, 2986.14, 1717.66, 2986.78, 1721.05 + ] + ], + "area": 2375.0, + "bbox": [2932.0, 1697.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 494, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1545.0, 578.5, 1544.81, 581.57, 1544.23, 584.59, 1543.28, 587.52, + 1541.97, 590.3, 1540.32, 592.9, 1538.36, 595.27, 1536.12, 597.38, + 1533.63, 599.19, 1530.93, 600.67, 1528.07, 601.8, 1525.09, 602.57, + 1522.04, 602.95, 1518.96, 602.95, 1515.91, 602.57, 1512.93, 601.8, + 1510.07, 600.67, 1507.37, 599.19, 1504.88, 597.38, 1502.64, 595.27, + 1500.68, 592.9, 1499.03, 590.3, 1497.72, 587.52, 1496.77, 584.59, + 1496.19, 581.57, 1496.0, 578.5, 1496.19, 575.43, 1496.77, 572.41, + 1497.72, 569.48, 1499.03, 566.7, 1500.68, 564.1, 1502.64, 561.73, + 1504.88, 559.62, 1507.37, 557.81, 1510.07, 556.33, 1512.93, 555.2, + 1515.91, 554.43, 1518.96, 554.05, 1522.04, 554.05, 1525.09, 554.43, + 1528.07, 555.2, 1530.93, 556.33, 1533.63, 557.81, 1536.12, 559.62, + 1538.36, 561.73, 1540.32, 564.1, 1541.97, 566.7, 1543.28, 569.48, + 1544.23, 572.41, 1544.81, 575.43 + ] + ], + "area": 1885.0, + "bbox": [1496.0, 554.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 495, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1266.0, 960.0, 1347.0, 960.0, 1347.0, 1053.0, 1266.0, 1053.0, 1266.0, + 960.0 + ] + ], + "area": 7533.0, + "bbox": [1266.0, 960.0, 81.0, 93.0], + "iscrowd": 0 + }, + { + "id": 496, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 333.0, 1024.0, 396.0, 1024.0, 396.0, 1115.0, 333.0, 1115.0, 333.0, + 1024.0 + ] + ], + "area": 5733.0, + "bbox": [333.0, 1024.0, 63.0, 91.0], + "iscrowd": 0 + }, + { + "id": 497, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1921.0, 980.0, 1987.0, 980.0, 1987.0, 1063.0, 1921.0, 1063.0, 1921.0, + 980.0 + ] + ], + "area": 5478.0, + "bbox": [1921.0, 980.0, 66.0, 83.0], + "iscrowd": 0 + }, + { + "id": 498, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 330.5, 3319.0, 333.95, 3318.78, 337.34, 3318.14, 340.62, 3317.07, + 343.75, 3315.6, 346.66, 3313.75, 349.33, 3311.55, 351.69, 3309.03, + 353.72, 3306.24, 355.38, 3303.21, 356.65, 3300.0, 357.51, 3296.65, + 357.95, 3293.23, 357.95, 3289.77, 357.51, 3286.35, 356.65, 3283.0, + 355.38, 3279.79, 353.72, 3276.76, 351.69, 3273.97, 349.33, 3271.45, + 346.66, 3269.25, 343.75, 3267.4, 340.62, 3265.93, 337.34, 3264.86, + 333.95, 3264.22, 330.5, 3264.0, 327.05, 3264.22, 323.66, 3264.86, + 320.38, 3265.93, 317.25, 3267.4, 314.34, 3269.25, 311.67, 3271.45, + 309.31, 3273.97, 307.28, 3276.76, 305.62, 3279.79, 304.35, 3283.0, + 303.49, 3286.35, 303.05, 3289.77, 303.05, 3293.23, 303.49, 3296.65, + 304.35, 3300.0, 305.62, 3303.21, 307.28, 3306.24, 309.31, 3309.03, + 311.67, 3311.55, 314.34, 3313.75, 317.25, 3315.6, 320.38, 3317.07, + 323.66, 3318.14, 327.05, 3318.78 + ] + ], + "area": 2375.0, + "bbox": [303.05, 3264.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 499, + "image_id": 6, + "category_id": 3, + "segmentation": [[1460.5, 2515.0, 1421.0, 2584.0, 1500.0, 2584.0]], + "area": 2734.0, + "bbox": [1421.0, 2515.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 500, + "image_id": 6, + "category_id": 3, + "segmentation": [[251.5, 3270.0, 223.0, 3320.0, 280.0, 3320.0]], + "area": 1430.0, + "bbox": [223.0, 3270.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 501, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2447.0, 3112.5, 2446.74, 3116.57, 2445.98, 3120.58, 2444.72, 3124.46, + 2442.98, 3128.16, 2440.79, 3131.6, 2438.19, 3134.75, 2435.22, 3137.54, + 2431.91, 3139.94, 2428.34, 3141.91, 2424.54, 3143.41, 2420.59, + 3144.42, 2416.54, 3144.94, 2412.46, 3144.94, 2408.41, 3144.42, + 2404.46, 3143.41, 2400.66, 3141.91, 2397.09, 3139.94, 2393.78, + 3137.54, 2390.81, 3134.75, 2388.21, 3131.6, 2386.02, 3128.16, 2384.28, + 3124.46, 2383.02, 3120.58, 2382.26, 3116.57, 2382.0, 3112.5, 2382.26, + 3108.43, 2383.02, 3104.42, 2384.28, 3100.54, 2386.02, 3096.84, + 2388.21, 3093.4, 2390.81, 3090.25, 2393.78, 3087.46, 2397.09, 3085.06, + 2400.66, 3083.09, 2404.46, 3081.59, 2408.41, 3080.58, 2412.46, + 3080.06, 2416.54, 3080.06, 2420.59, 3080.58, 2424.54, 3081.59, + 2428.34, 3083.09, 2431.91, 3085.06, 2435.22, 3087.46, 2438.19, + 3090.25, 2440.79, 3093.4, 2442.98, 3096.84, 2444.72, 3100.54, 2445.98, + 3104.42, 2446.74, 3108.43 + ] + ], + "area": 3315.0, + "bbox": [2382.0, 3080.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 502, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2628.5, 62.0, 2631.57, 61.81, 2634.59, 61.23, 2637.52, 60.28, 2640.3, + 58.97, 2642.9, 57.32, 2645.27, 55.36, 2647.38, 53.12, 2649.19, 50.63, + 2650.67, 47.93, 2651.8, 45.07, 2652.57, 42.09, 2652.95, 39.04, + 2652.95, 35.96, 2652.57, 32.91, 2651.8, 29.93, 2650.67, 27.07, + 2649.19, 24.37, 2647.38, 21.88, 2645.27, 19.64, 2642.9, 17.68, 2640.3, + 16.03, 2637.52, 14.72, 2634.59, 13.77, 2631.57, 13.19, 2628.5, 13.0, + 2625.43, 13.19, 2622.41, 13.77, 2619.48, 14.72, 2616.7, 16.03, 2614.1, + 17.68, 2611.73, 19.64, 2609.62, 21.88, 2607.81, 24.37, 2606.33, 27.07, + 2605.2, 29.93, 2604.43, 32.91, 2604.05, 35.96, 2604.05, 39.04, + 2604.43, 42.09, 2605.2, 45.07, 2606.33, 47.93, 2607.81, 50.63, + 2609.62, 53.12, 2611.73, 55.36, 2614.1, 57.32, 2616.7, 58.97, 2619.48, + 60.28, 2622.41, 61.23, 2625.43, 61.81 + ] + ], + "area": 1885.0, + "bbox": [2604.05, 13.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 503, + "image_id": 6, + "category_id": 3, + "segmentation": [[2784.0, 1347.0, 2759.0, 1391.0, 2809.0, 1391.0]], + "area": 1105.0, + "bbox": [2759.0, 1347.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 504, + "image_id": 6, + "category_id": 3, + "segmentation": [[2064.5, 2522.0, 2025.0, 2591.0, 2104.0, 2591.0]], + "area": 2734.0, + "bbox": [2025.0, 2522.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 505, + "image_id": 6, + "category_id": 3, + "segmentation": [[2135.0, 3359.0, 2104.0, 3413.0, 2166.0, 3413.0]], + "area": 1680.0, + "bbox": [2104.0, 3359.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 506, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [595.0, 185.0, 691.0, 185.0, 691.0, 249.0, 595.0, 249.0, 595.0, 185.0] + ], + "area": 6144.0, + "bbox": [595.0, 185.0, 96.0, 64.0], + "iscrowd": 0 + }, + { + "id": 507, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [3131.0, 15.0, 3226.0, 15.0, 3226.0, 90.0, 3131.0, 90.0, 3131.0, 15.0] + ], + "area": 7125.0, + "bbox": [3131.0, 15.0, 95.0, 75.0], + "iscrowd": 0 + }, + { + "id": 508, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3051.0, 3035.0, 3140.0, 3035.0, 3140.0, 3134.0, 3051.0, 3134.0, + 3051.0, 3035.0 + ] + ], + "area": 8811.0, + "bbox": [3051.0, 3035.0, 89.0, 99.0], + "iscrowd": 0 + }, + { + "id": 509, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 385.0, 1664.0, 456.0, 1664.0, 456.0, 1755.0, 385.0, 1755.0, 385.0, + 1664.0 + ] + ], + "area": 6461.0, + "bbox": [385.0, 1664.0, 71.0, 91.0], + "iscrowd": 0 + }, + { + "id": 510, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3325.0, 1186.5, 3324.79, 1189.82, 3324.17, 1193.09, 3323.14, 1196.26, + 3321.72, 1199.27, 3319.94, 1202.08, 3317.82, 1204.64, 3315.39, + 1206.92, 3312.7, 1208.87, 3309.78, 1210.48, 3306.69, 1211.7, 3303.47, + 1212.53, 3300.16, 1212.95, 3296.84, 1212.95, 3293.53, 1212.53, + 3290.31, 1211.7, 3287.22, 1210.48, 3284.3, 1208.87, 3281.61, 1206.92, + 3279.18, 1204.64, 3277.06, 1202.08, 3275.28, 1199.27, 3273.86, + 1196.26, 3272.83, 1193.09, 3272.21, 1189.82, 3272.0, 1186.5, 3272.21, + 1183.18, 3272.83, 1179.91, 3273.86, 1176.74, 3275.28, 1173.73, + 3277.06, 1170.92, 3279.18, 1168.36, 3281.61, 1166.08, 3284.3, 1164.13, + 3287.22, 1162.52, 3290.31, 1161.3, 3293.53, 1160.47, 3296.84, 1160.05, + 3300.16, 1160.05, 3303.47, 1160.47, 3306.69, 1161.3, 3309.78, 1162.52, + 3312.7, 1164.13, 3315.39, 1166.08, 3317.82, 1168.36, 3319.94, 1170.92, + 3321.72, 1173.73, 3323.14, 1176.74, 3324.17, 1179.91, 3324.79, 1183.18 + ] + ], + "area": 2207.0, + "bbox": [3272.0, 1160.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 511, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 260.5, 872.0, 265.83, 871.66, 271.07, 870.66, 276.15, 869.02, 280.97, + 866.74, 285.48, 863.88, 289.59, 860.48, 293.25, 856.59, 296.38, + 852.27, 298.96, 847.6, 300.92, 842.63, 302.25, 837.46, 302.92, 832.17, + 302.92, 826.83, 302.25, 821.54, 300.92, 816.37, 298.96, 811.4, 296.38, + 806.73, 293.25, 802.41, 289.59, 798.52, 285.48, 795.12, 280.97, + 792.26, 276.15, 789.98, 271.07, 788.34, 265.83, 787.34, 260.5, 787.0, + 255.17, 787.34, 249.93, 788.34, 244.85, 789.98, 240.03, 792.26, + 235.52, 795.12, 231.41, 798.52, 227.75, 802.41, 224.62, 806.73, + 222.04, 811.4, 220.08, 816.37, 218.75, 821.54, 218.08, 826.83, 218.08, + 832.17, 218.75, 837.46, 220.08, 842.63, 222.04, 847.6, 224.62, 852.27, + 227.75, 856.59, 231.41, 860.48, 235.52, 863.88, 240.03, 866.74, + 244.85, 869.02, 249.93, 870.66, 255.17, 871.66 + ] + ], + "area": 5651.0, + "bbox": [218.08, 787.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 512, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1867.0, 1729.0, 1954.0, 1729.0, 1954.0, 1826.0, 1867.0, 1826.0, + 1867.0, 1729.0 + ] + ], + "area": 8439.0, + "bbox": [1867.0, 1729.0, 87.0, 97.0], + "iscrowd": 0 + }, + { + "id": 513, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1715.0, 1186.0, 1781.0, 1186.0, 1781.0, 1266.0, 1715.0, 1266.0, + 1715.0, 1186.0 + ] + ], + "area": 5280.0, + "bbox": [1715.0, 1186.0, 66.0, 80.0], + "iscrowd": 0 + }, + { + "id": 514, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [33.0, 1531.0, 104.0, 1531.0, 104.0, 1590.0, 33.0, 1590.0, 33.0, 1531.0] + ], + "area": 4189.0, + "bbox": [33.0, 1531.0, 71.0, 59.0], + "iscrowd": 0 + }, + { + "id": 515, + "image_id": 6, + "category_id": 3, + "segmentation": [[3124.5, 2404.0, 3078.0, 2485.0, 3171.0, 2485.0]], + "area": 3776.0, + "bbox": [3078.0, 2404.0, 93.0, 81.0], + "iscrowd": 0 + }, + { + "id": 516, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 489.0, 1603.0, 568.0, 1603.0, 568.0, 1688.0, 489.0, 1688.0, 489.0, + 1603.0 + ] + ], + "area": 6715.0, + "bbox": [489.0, 1603.0, 79.0, 85.0], + "iscrowd": 0 + }, + { + "id": 517, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 393.0, 2712.0, 460.0, 2712.0, 460.0, 2781.0, 393.0, 2781.0, 393.0, + 2712.0 + ] + ], + "area": 4623.0, + "bbox": [393.0, 2712.0, 67.0, 69.0], + "iscrowd": 0 + }, + { + "id": 518, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1005.0, 2354.5, 1004.64, 2360.2, 1003.57, 2365.82, 1001.8, 2371.25, + 999.37, 2376.42, 996.31, 2381.24, 992.67, 2385.65, 988.5, 2389.56, + 983.88, 2392.92, 978.87, 2395.67, 973.56, 2397.77, 968.03, 2399.19, + 962.36, 2399.91, 956.64, 2399.91, 950.97, 2399.19, 945.44, 2397.77, + 940.13, 2395.67, 935.12, 2392.92, 930.5, 2389.56, 926.33, 2385.65, + 922.69, 2381.24, 919.63, 2376.42, 917.2, 2371.25, 915.43, 2365.82, + 914.36, 2360.2, 914.0, 2354.5, 914.36, 2348.8, 915.43, 2343.18, 917.2, + 2337.75, 919.63, 2332.58, 922.69, 2327.76, 926.33, 2323.35, 930.5, + 2319.44, 935.12, 2316.08, 940.13, 2313.33, 945.44, 2311.23, 950.97, + 2309.81, 956.64, 2309.09, 962.36, 2309.09, 968.03, 2309.81, 973.56, + 2311.23, 978.87, 2313.33, 983.88, 2316.08, 988.5, 2319.44, 992.67, + 2323.35, 996.31, 2327.76, 999.37, 2332.58, 1001.8, 2337.75, 1003.57, + 2343.18, 1004.64, 2348.8 + ] + ], + "area": 6498.0, + "bbox": [914.0, 2309.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 519, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1405.0, 1347.5, 1404.81, 1350.57, 1404.23, 1353.59, 1403.28, 1356.52, + 1401.97, 1359.3, 1400.32, 1361.9, 1398.36, 1364.27, 1396.12, 1366.38, + 1393.63, 1368.19, 1390.93, 1369.67, 1388.07, 1370.8, 1385.09, 1371.57, + 1382.04, 1371.95, 1378.96, 1371.95, 1375.91, 1371.57, 1372.93, 1370.8, + 1370.07, 1369.67, 1367.37, 1368.19, 1364.88, 1366.38, 1362.64, + 1364.27, 1360.68, 1361.9, 1359.03, 1359.3, 1357.72, 1356.52, 1356.77, + 1353.59, 1356.19, 1350.57, 1356.0, 1347.5, 1356.19, 1344.43, 1356.77, + 1341.41, 1357.72, 1338.48, 1359.03, 1335.7, 1360.68, 1333.1, 1362.64, + 1330.73, 1364.88, 1328.62, 1367.37, 1326.81, 1370.07, 1325.33, + 1372.93, 1324.2, 1375.91, 1323.43, 1378.96, 1323.05, 1382.04, 1323.05, + 1385.09, 1323.43, 1388.07, 1324.2, 1390.93, 1325.33, 1393.63, 1326.81, + 1396.12, 1328.62, 1398.36, 1330.73, 1400.32, 1333.1, 1401.97, 1335.7, + 1403.28, 1338.48, 1404.23, 1341.41, 1404.81, 1344.43 + ] + ], + "area": 1885.0, + "bbox": [1356.0, 1323.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 520, + "image_id": 6, + "category_id": 3, + "segmentation": [[818.5, 1465.0, 783.0, 1527.0, 854.0, 1527.0]], + "area": 2209.0, + "bbox": [783.0, 1465.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 521, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [788.0, 145.0, 875.0, 145.0, 875.0, 236.0, 788.0, 236.0, 788.0, 145.0] + ], + "area": 7917.0, + "bbox": [788.0, 145.0, 87.0, 91.0], + "iscrowd": 0 + }, + { + "id": 522, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1019.0, 3348.0, 1100.0, 3348.0, 1100.0, 3446.0, 1019.0, 3446.0, + 1019.0, 3348.0 + ] + ], + "area": 7938.0, + "bbox": [1019.0, 3348.0, 81.0, 98.0], + "iscrowd": 0 + }, + { + "id": 523, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2015.0, 1758.0, 2094.0, 1758.0, 2094.0, 1810.0, 2015.0, 1810.0, + 2015.0, 1758.0 + ] + ], + "area": 4108.0, + "bbox": [2015.0, 1758.0, 79.0, 52.0], + "iscrowd": 0 + }, + { + "id": 524, + "image_id": 6, + "category_id": 3, + "segmentation": [[2858.0, 679.0, 2812.0, 759.0, 2904.0, 759.0]], + "area": 3688.0, + "bbox": [2812.0, 679.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 525, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 555.0, 635.5, 554.78, 639.07, 554.1, 642.59, 553.0, 645.99, 551.47, + 649.23, 549.56, 652.25, 547.28, 655.01, 544.67, 657.46, 541.77, + 659.56, 538.63, 661.29, 535.31, 662.61, 531.84, 663.5, 528.29, 663.94, + 524.71, 663.94, 521.16, 663.5, 517.69, 662.61, 514.37, 661.29, 511.23, + 659.56, 508.33, 657.46, 505.72, 655.01, 503.44, 652.25, 501.53, + 649.23, 500.0, 645.99, 498.9, 642.59, 498.22, 639.07, 498.0, 635.5, + 498.22, 631.93, 498.9, 628.41, 500.0, 625.01, 501.53, 621.77, 503.44, + 618.75, 505.72, 615.99, 508.33, 613.54, 511.23, 611.44, 514.37, + 609.71, 517.69, 608.39, 521.16, 607.5, 524.71, 607.06, 528.29, 607.06, + 531.84, 607.5, 535.31, 608.39, 538.63, 609.71, 541.77, 611.44, 544.67, + 613.54, 547.28, 615.99, 549.56, 618.75, 551.47, 621.77, 553.0, 625.01, + 554.1, 628.41, 554.78, 631.93 + ] + ], + "area": 2548.0, + "bbox": [498.0, 607.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 526, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2391.0, 3241.0, 2480.0, 3241.0, 2480.0, 3329.0, 2391.0, 3329.0, + 2391.0, 3241.0 + ] + ], + "area": 7832.0, + "bbox": [2391.0, 3241.0, 89.0, 88.0], + "iscrowd": 0 + }, + { + "id": 527, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 488.0, 2927.5, 487.64, 2933.2, 486.57, 2938.82, 484.8, 2944.25, + 482.37, 2949.42, 479.31, 2954.24, 475.67, 2958.65, 471.5, 2962.56, + 466.88, 2965.92, 461.87, 2968.67, 456.56, 2970.77, 451.03, 2972.19, + 445.36, 2972.91, 439.64, 2972.91, 433.97, 2972.19, 428.44, 2970.77, + 423.13, 2968.67, 418.12, 2965.92, 413.5, 2962.56, 409.33, 2958.65, + 405.69, 2954.24, 402.63, 2949.42, 400.2, 2944.25, 398.43, 2938.82, + 397.36, 2933.2, 397.0, 2927.5, 397.36, 2921.8, 398.43, 2916.18, 400.2, + 2910.75, 402.63, 2905.58, 405.69, 2900.76, 409.33, 2896.35, 413.5, + 2892.44, 418.12, 2889.08, 423.13, 2886.33, 428.44, 2884.23, 433.97, + 2882.81, 439.64, 2882.09, 445.36, 2882.09, 451.03, 2882.81, 456.56, + 2884.23, 461.87, 2886.33, 466.88, 2889.08, 471.5, 2892.44, 475.67, + 2896.35, 479.31, 2900.76, 482.37, 2905.58, 484.8, 2910.75, 486.57, + 2916.18, 487.64, 2921.8 + ] + ], + "area": 6498.0, + "bbox": [397.0, 2882.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 528, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 921.0, 1249.5, 920.78, 1252.95, 920.14, 1256.34, 919.07, 1259.62, + 917.6, 1262.75, 915.75, 1265.66, 913.55, 1268.33, 911.03, 1270.69, + 908.24, 1272.72, 905.21, 1274.38, 902.0, 1275.65, 898.65, 1276.51, + 895.23, 1276.95, 891.77, 1276.95, 888.35, 1276.51, 885.0, 1275.65, + 881.79, 1274.38, 878.76, 1272.72, 875.97, 1270.69, 873.45, 1268.33, + 871.25, 1265.66, 869.4, 1262.75, 867.93, 1259.62, 866.86, 1256.34, + 866.22, 1252.95, 866.0, 1249.5, 866.22, 1246.05, 866.86, 1242.66, + 867.93, 1239.38, 869.4, 1236.25, 871.25, 1233.34, 873.45, 1230.67, + 875.97, 1228.31, 878.76, 1226.28, 881.79, 1224.62, 885.0, 1223.35, + 888.35, 1222.49, 891.77, 1222.05, 895.23, 1222.05, 898.65, 1222.49, + 902.0, 1223.35, 905.21, 1224.62, 908.24, 1226.28, 911.03, 1228.31, + 913.55, 1230.67, 915.75, 1233.34, 917.6, 1236.25, 919.07, 1239.38, + 920.14, 1242.66, 920.78, 1246.05 + ] + ], + "area": 2375.0, + "bbox": [866.0, 1222.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 529, + "image_id": 6, + "category_id": 3, + "segmentation": [[2659.0, 1879.0, 2611.0, 1963.0, 2707.0, 1963.0]], + "area": 4032.0, + "bbox": [2611.0, 1879.0, 96.0, 84.0], + "iscrowd": 0 + }, + { + "id": 530, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2209.0, 2450.0, 2308.0, 2450.0, 2308.0, 2541.0, 2209.0, 2541.0, + 2209.0, 2450.0 + ] + ], + "area": 9009.0, + "bbox": [2209.0, 2450.0, 99.0, 91.0], + "iscrowd": 0 + }, + { + "id": 531, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1547.0, 3268.0, 1646.0, 3268.0, 1646.0, 3331.0, 1547.0, 3331.0, + 1547.0, 3268.0 + ] + ], + "area": 6237.0, + "bbox": [1547.0, 3268.0, 99.0, 63.0], + "iscrowd": 0 + }, + { + "id": 532, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2662.0, 700.5, 2661.62, 706.58, 2660.48, 712.56, 2658.59, 718.35, + 2656.0, 723.87, 2652.74, 729.01, 2648.85, 733.7, 2644.42, 737.87, + 2639.49, 741.45, 2634.15, 744.38, 2628.49, 746.63, 2622.59, 748.14, + 2616.55, 748.9, 2610.45, 748.9, 2604.41, 748.14, 2598.51, 746.63, + 2592.85, 744.38, 2587.51, 741.45, 2582.58, 737.87, 2578.15, 733.7, + 2574.26, 729.01, 2571.0, 723.87, 2568.41, 718.35, 2566.52, 712.56, + 2565.38, 706.58, 2565.0, 700.5, 2565.38, 694.42, 2566.52, 688.44, + 2568.41, 682.65, 2571.0, 677.13, 2574.26, 671.99, 2578.15, 667.3, + 2582.58, 663.13, 2587.51, 659.55, 2592.85, 656.62, 2598.51, 654.37, + 2604.41, 652.86, 2610.45, 652.1, 2616.55, 652.1, 2622.59, 652.86, + 2628.49, 654.37, 2634.15, 656.62, 2639.49, 659.55, 2644.42, 663.13, + 2648.85, 667.3, 2652.74, 671.99, 2656.0, 677.13, 2658.59, 682.65, + 2660.48, 688.44, 2661.62, 694.42 + ] + ], + "area": 7381.0, + "bbox": [2565.0, 652.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 533, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1740.0, 263.0, 1835.0, 263.0, 1835.0, 358.0, 1740.0, 358.0, 1740.0, + 263.0 + ] + ], + "area": 9025.0, + "bbox": [1740.0, 263.0, 95.0, 95.0], + "iscrowd": 0 + }, + { + "id": 534, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2609.0, 3399.0, 2674.0, 3399.0, 2674.0, 3482.0, 2609.0, 3482.0, + 2609.0, 3399.0 + ] + ], + "area": 5395.0, + "bbox": [2609.0, 3399.0, 65.0, 83.0], + "iscrowd": 0 + }, + { + "id": 535, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3182.0, 834.0, 3259.0, 834.0, 3259.0, 930.0, 3182.0, 930.0, 3182.0, + 834.0 + ] + ], + "area": 7392.0, + "bbox": [3182.0, 834.0, 77.0, 96.0], + "iscrowd": 0 + }, + { + "id": 536, + "image_id": 6, + "category_id": 3, + "segmentation": [[2387.0, 1438.0, 2343.0, 1515.0, 2431.0, 1515.0]], + "area": 3388.0, + "bbox": [2343.0, 1438.0, 88.0, 77.0], + "iscrowd": 0 + }, + { + "id": 537, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3061.5, 1659.0, 3065.95, 1658.72, 3070.33, 1657.88, 3074.57, 1656.51, + 3078.6, 1654.61, 3082.37, 1652.22, 3085.8, 1649.38, 3088.85, 1646.13, + 3091.47, 1642.52, 3093.62, 1638.62, 3095.26, 1634.47, 3096.37, + 1630.15, 3096.93, 1625.73, 3096.93, 1621.27, 3096.37, 1616.85, + 3095.26, 1612.53, 3093.62, 1608.38, 3091.47, 1604.48, 3088.85, + 1600.87, 3085.8, 1597.62, 3082.37, 1594.78, 3078.6, 1592.39, 3074.57, + 1590.49, 3070.33, 1589.12, 3065.95, 1588.28, 3061.5, 1588.0, 3057.05, + 1588.28, 3052.67, 1589.12, 3048.43, 1590.49, 3044.4, 1592.39, 3040.63, + 1594.78, 3037.2, 1597.62, 3034.15, 1600.87, 3031.53, 1604.48, 3029.38, + 1608.38, 3027.74, 1612.53, 3026.63, 1616.85, 3026.07, 1621.27, + 3026.07, 1625.73, 3026.63, 1630.15, 3027.74, 1634.47, 3029.38, + 1638.62, 3031.53, 1642.52, 3034.15, 1646.13, 3037.2, 1649.38, 3040.63, + 1652.22, 3044.4, 1654.61, 3048.43, 1656.51, 3052.67, 1657.88, 3057.05, + 1658.72 + ] + ], + "area": 3956.0, + "bbox": [3026.07, 1588.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 538, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [1503.0, 30.0, 1592.0, 30.0, 1592.0, 125.0, 1503.0, 125.0, 1503.0, 30.0] + ], + "area": 8455.0, + "bbox": [1503.0, 30.0, 89.0, 95.0], + "iscrowd": 0 + }, + { + "id": 539, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [1746.0, 83.0, 1827.0, 83.0, 1827.0, 156.0, 1746.0, 156.0, 1746.0, 83.0] + ], + "area": 5913.0, + "bbox": [1746.0, 83.0, 81.0, 73.0], + "iscrowd": 0 + }, + { + "id": 540, + "image_id": 6, + "category_id": 3, + "segmentation": [[49.0, 2104.0, 21.0, 2153.0, 77.0, 2153.0]], + "area": 1372.0, + "bbox": [21.0, 2104.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 541, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3360.0, 126.0, 3433.0, 126.0, 3433.0, 209.0, 3360.0, 209.0, 3360.0, + 126.0 + ] + ], + "area": 6059.0, + "bbox": [3360.0, 126.0, 73.0, 83.0], + "iscrowd": 0 + }, + { + "id": 542, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 854.0, 1322.5, 853.63, 1328.45, 852.51, 1334.31, 850.66, 1339.99, + 848.12, 1345.38, 844.93, 1350.42, 841.13, 1355.02, 836.78, 1359.1, + 831.95, 1362.61, 826.72, 1365.48, 821.18, 1367.68, 815.4, 1369.16, + 809.48, 1369.91, 803.52, 1369.91, 797.6, 1369.16, 791.82, 1367.68, + 786.28, 1365.48, 781.05, 1362.61, 776.22, 1359.1, 771.87, 1355.02, + 768.07, 1350.42, 764.88, 1345.38, 762.34, 1339.99, 760.49, 1334.31, + 759.37, 1328.45, 759.0, 1322.5, 759.37, 1316.55, 760.49, 1310.69, + 762.34, 1305.01, 764.88, 1299.62, 768.07, 1294.58, 771.87, 1289.98, + 776.22, 1285.9, 781.05, 1282.39, 786.28, 1279.52, 791.82, 1277.32, + 797.6, 1275.84, 803.52, 1275.09, 809.48, 1275.09, 815.4, 1275.84, + 821.18, 1277.32, 826.72, 1279.52, 831.95, 1282.39, 836.78, 1285.9, + 841.13, 1289.98, 844.93, 1294.58, 848.12, 1299.62, 850.66, 1305.01, + 852.51, 1310.69, 853.63, 1316.55 + ] + ], + "area": 7083.0, + "bbox": [759.0, 1275.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 543, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1496.0, 1339.0, 1567.0, 1339.0, 1567.0, 1402.0, 1496.0, 1402.0, + 1496.0, 1339.0 + ] + ], + "area": 4473.0, + "bbox": [1496.0, 1339.0, 71.0, 63.0], + "iscrowd": 0 + }, + { + "id": 544, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1223.0, 105.5, 1222.64, 111.2, 1221.57, 116.82, 1219.8, 122.25, + 1217.37, 127.42, 1214.31, 132.24, 1210.67, 136.65, 1206.5, 140.56, + 1201.88, 143.92, 1196.87, 146.67, 1191.56, 148.77, 1186.03, 150.19, + 1180.36, 150.91, 1174.64, 150.91, 1168.97, 150.19, 1163.44, 148.77, + 1158.13, 146.67, 1153.12, 143.92, 1148.5, 140.56, 1144.33, 136.65, + 1140.69, 132.24, 1137.63, 127.42, 1135.2, 122.25, 1133.43, 116.82, + 1132.36, 111.2, 1132.0, 105.5, 1132.36, 99.8, 1133.43, 94.18, 1135.2, + 88.75, 1137.63, 83.58, 1140.69, 78.76, 1144.33, 74.35, 1148.5, 70.44, + 1153.12, 67.08, 1158.13, 64.33, 1163.44, 62.23, 1168.97, 60.81, + 1174.64, 60.09, 1180.36, 60.09, 1186.03, 60.81, 1191.56, 62.23, + 1196.87, 64.33, 1201.88, 67.08, 1206.5, 70.44, 1210.67, 74.35, + 1214.31, 78.76, 1217.37, 83.58, 1219.8, 88.75, 1221.57, 94.18, + 1222.64, 99.8 + ] + ], + "area": 6498.0, + "bbox": [1132.0, 60.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 545, + "image_id": 6, + "category_id": 3, + "segmentation": [[3140.0, 1703.0, 3101.0, 1771.0, 3179.0, 1771.0]], + "area": 2660.0, + "bbox": [3101.0, 1703.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 546, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2267.0, 575.0, 2324.0, 575.0, 2324.0, 642.0, 2267.0, 642.0, 2267.0, + 575.0 + ] + ], + "area": 3819.0, + "bbox": [2267.0, 575.0, 57.0, 67.0], + "iscrowd": 0 + }, + { + "id": 547, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1621.0, 1006.0, 1680.0, 1006.0, 1680.0, 1073.0, 1621.0, 1073.0, + 1621.0, 1006.0 + ] + ], + "area": 3953.0, + "bbox": [1621.0, 1006.0, 59.0, 67.0], + "iscrowd": 0 + }, + { + "id": 548, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2538.0, 1932.5, 2537.68, 1937.58, 2536.73, 1942.57, 2535.16, 1947.41, + 2532.99, 1952.01, 2530.27, 1956.31, 2527.02, 1960.22, 2523.32, + 1963.71, 2519.2, 1966.7, 2514.74, 1969.15, 2510.02, 1971.02, 2505.09, + 1972.28, 2500.04, 1972.92, 2494.96, 1972.92, 2489.91, 1972.28, + 2484.98, 1971.02, 2480.26, 1969.15, 2475.8, 1966.7, 2471.68, 1963.71, + 2467.98, 1960.22, 2464.73, 1956.31, 2462.01, 1952.01, 2459.84, + 1947.41, 2458.27, 1942.57, 2457.32, 1937.58, 2457.0, 1932.5, 2457.32, + 1927.42, 2458.27, 1922.43, 2459.84, 1917.59, 2462.01, 1912.99, + 2464.73, 1908.69, 2467.98, 1904.78, 2471.68, 1901.29, 2475.8, 1898.3, + 2480.26, 1895.85, 2484.98, 1893.98, 2489.91, 1892.72, 2494.96, + 1892.08, 2500.04, 1892.08, 2505.09, 1892.72, 2510.02, 1893.98, + 2514.74, 1895.85, 2519.2, 1898.3, 2523.32, 1901.29, 2527.02, 1904.78, + 2530.27, 1908.69, 2532.99, 1912.99, 2535.16, 1917.59, 2536.73, + 1922.43, 2537.68, 1927.42 + ] + ], + "area": 5149.0, + "bbox": [2457.0, 1892.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 549, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [30.0, 1193.0, 105.0, 1193.0, 105.0, 1294.0, 30.0, 1294.0, 30.0, 1193.0] + ], + "area": 7575.0, + "bbox": [30.0, 1193.0, 75.0, 101.0], + "iscrowd": 0 + }, + { + "id": 550, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3114.0, 441.5, 3113.62, 447.58, 3112.48, 453.56, 3110.59, 459.35, + 3108.0, 464.87, 3104.74, 470.01, 3100.85, 474.7, 3096.42, 478.87, + 3091.49, 482.45, 3086.15, 485.38, 3080.49, 487.63, 3074.59, 489.14, + 3068.55, 489.9, 3062.45, 489.9, 3056.41, 489.14, 3050.51, 487.63, + 3044.85, 485.38, 3039.51, 482.45, 3034.58, 478.87, 3030.15, 474.7, + 3026.26, 470.01, 3023.0, 464.87, 3020.41, 459.35, 3018.52, 453.56, + 3017.38, 447.58, 3017.0, 441.5, 3017.38, 435.42, 3018.52, 429.44, + 3020.41, 423.65, 3023.0, 418.13, 3026.26, 412.99, 3030.15, 408.3, + 3034.58, 404.13, 3039.51, 400.55, 3044.85, 397.62, 3050.51, 395.37, + 3056.41, 393.86, 3062.45, 393.1, 3068.55, 393.1, 3074.59, 393.86, + 3080.49, 395.37, 3086.15, 397.62, 3091.49, 400.55, 3096.42, 404.13, + 3100.85, 408.3, 3104.74, 412.99, 3108.0, 418.13, 3110.59, 423.65, + 3112.48, 429.44, 3113.62, 435.42 + ] + ], + "area": 7381.0, + "bbox": [3017.0, 393.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 551, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2916.0, 299.0, 3008.0, 299.0, 3008.0, 380.0, 2916.0, 380.0, 2916.0, + 299.0 + ] + ], + "area": 7452.0, + "bbox": [2916.0, 299.0, 92.0, 81.0], + "iscrowd": 0 + }, + { + "id": 552, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [749.0, 424.0, 814.0, 424.0, 814.0, 477.0, 749.0, 477.0, 749.0, 424.0] + ], + "area": 3445.0, + "bbox": [749.0, 424.0, 65.0, 53.0], + "iscrowd": 0 + }, + { + "id": 553, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1827.0, 467.0, 1878.0, 467.0, 1878.0, 556.0, 1827.0, 556.0, 1827.0, + 467.0 + ] + ], + "area": 4539.0, + "bbox": [1827.0, 467.0, 51.0, 89.0], + "iscrowd": 0 + }, + { + "id": 554, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2872.0, 2283.0, 2967.0, 2283.0, 2967.0, 2339.0, 2872.0, 2339.0, + 2872.0, 2283.0 + ] + ], + "area": 5320.0, + "bbox": [2872.0, 2283.0, 95.0, 56.0], + "iscrowd": 0 + }, + { + "id": 555, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2681.0, 1757.0, 2766.0, 1757.0, 2766.0, 1840.0, 2681.0, 1840.0, + 2681.0, 1757.0 + ] + ], + "area": 7055.0, + "bbox": [2681.0, 1757.0, 85.0, 83.0], + "iscrowd": 0 + }, + { + "id": 556, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1198.0, 1989.0, 1279.0, 1989.0, 1279.0, 2070.0, 1198.0, 2070.0, + 1198.0, 1989.0 + ] + ], + "area": 6561.0, + "bbox": [1198.0, 1989.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 557, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1437.0, 709.0, 1487.0, 709.0, 1487.0, 769.0, 1437.0, 769.0, 1437.0, + 709.0 + ] + ], + "area": 3000.0, + "bbox": [1437.0, 709.0, 50.0, 60.0], + "iscrowd": 0 + }, + { + "id": 558, + "image_id": 6, + "category_id": 3, + "segmentation": [[3354.5, 1737.0, 3318.0, 1801.0, 3391.0, 1801.0]], + "area": 2341.0, + "bbox": [3318.0, 1737.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 559, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1958.0, 2549.5, 1957.66, 2554.95, 1956.63, 2560.32, 1954.95, 2565.51, + 1952.62, 2570.46, 1949.69, 2575.07, 1946.21, 2579.28, 1942.23, + 2583.02, 1937.81, 2586.23, 1933.02, 2588.86, 1927.94, 2590.87, + 1922.65, 2592.23, 1917.23, 2592.91, 1911.77, 2592.91, 1906.35, + 2592.23, 1901.06, 2590.87, 1895.98, 2588.86, 1891.19, 2586.23, + 1886.77, 2583.02, 1882.79, 2579.28, 1879.31, 2575.07, 1876.38, + 2570.46, 1874.05, 2565.51, 1872.37, 2560.32, 1871.34, 2554.95, 1871.0, + 2549.5, 1871.34, 2544.05, 1872.37, 2538.68, 1874.05, 2533.49, 1876.38, + 2528.54, 1879.31, 2523.93, 1882.79, 2519.72, 1886.77, 2515.98, + 1891.19, 2512.77, 1895.98, 2510.14, 1901.06, 2508.13, 1906.35, + 2506.77, 1911.77, 2506.09, 1917.23, 2506.09, 1922.65, 2506.77, + 1927.94, 2508.13, 1933.02, 2510.14, 1937.81, 2512.77, 1942.23, + 2515.98, 1946.21, 2519.72, 1949.69, 2523.93, 1952.62, 2528.54, + 1954.95, 2533.49, 1956.63, 2538.68, 1957.66, 2544.05 + ] + ], + "area": 5927.0, + "bbox": [1871.0, 2506.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 560, + "image_id": 6, + "category_id": 3, + "segmentation": [[543.5, 76.0, 504.0, 145.0, 583.0, 145.0]], + "area": 2734.0, + "bbox": [504.0, 76.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 561, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3425.0, 3083.5, 3424.63, 3089.33, 3423.54, 3095.06, 3421.73, 3100.62, + 3419.25, 3105.9, 3416.12, 3110.83, 3412.4, 3115.33, 3408.14, 3119.33, + 3403.42, 3122.76, 3398.3, 3125.57, 3392.87, 3127.72, 3387.21, 3129.18, + 3381.42, 3129.91, 3375.58, 3129.91, 3369.79, 3129.18, 3364.13, + 3127.72, 3358.7, 3125.57, 3353.58, 3122.76, 3348.86, 3119.33, 3344.6, + 3115.33, 3340.88, 3110.83, 3337.75, 3105.9, 3335.27, 3100.62, 3333.46, + 3095.06, 3332.37, 3089.33, 3332.0, 3083.5, 3332.37, 3077.67, 3333.46, + 3071.94, 3335.27, 3066.38, 3337.75, 3061.1, 3340.88, 3056.17, 3344.6, + 3051.67, 3348.86, 3047.67, 3353.58, 3044.24, 3358.7, 3041.43, 3364.13, + 3039.28, 3369.79, 3037.82, 3375.58, 3037.09, 3381.42, 3037.09, + 3387.21, 3037.82, 3392.87, 3039.28, 3398.3, 3041.43, 3403.42, 3044.24, + 3408.14, 3047.67, 3412.4, 3051.67, 3416.12, 3056.17, 3419.25, 3061.1, + 3421.73, 3066.38, 3423.54, 3071.94, 3424.63, 3077.67 + ] + ], + "area": 6782.0, + "bbox": [3332.0, 3037.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 562, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3337.0, 1847.0, 3396.0, 1847.0, 3396.0, 1903.0, 3337.0, 1903.0, + 3337.0, 1847.0 + ] + ], + "area": 3304.0, + "bbox": [3337.0, 1847.0, 59.0, 56.0], + "iscrowd": 0 + }, + { + "id": 563, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2075.0, 2682.0, 2130.0, 2682.0, 2130.0, 2751.0, 2075.0, 2751.0, + 2075.0, 2682.0 + ] + ], + "area": 3795.0, + "bbox": [2075.0, 2682.0, 55.0, 69.0], + "iscrowd": 0 + }, + { + "id": 564, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 849.0, 3169.5, 848.63, 3175.33, 847.54, 3181.06, 845.73, 3186.62, + 843.25, 3191.9, 840.12, 3196.83, 836.4, 3201.33, 832.14, 3205.33, + 827.42, 3208.76, 822.3, 3211.57, 816.87, 3213.72, 811.21, 3215.18, + 805.42, 3215.91, 799.58, 3215.91, 793.79, 3215.18, 788.13, 3213.72, + 782.7, 3211.57, 777.58, 3208.76, 772.86, 3205.33, 768.6, 3201.33, + 764.88, 3196.83, 761.75, 3191.9, 759.27, 3186.62, 757.46, 3181.06, + 756.37, 3175.33, 756.0, 3169.5, 756.37, 3163.67, 757.46, 3157.94, + 759.27, 3152.38, 761.75, 3147.1, 764.88, 3142.17, 768.6, 3137.67, + 772.86, 3133.67, 777.58, 3130.24, 782.7, 3127.43, 788.13, 3125.28, + 793.79, 3123.82, 799.58, 3123.09, 805.42, 3123.09, 811.21, 3123.82, + 816.87, 3125.28, 822.3, 3127.43, 827.42, 3130.24, 832.14, 3133.67, + 836.4, 3137.67, 840.12, 3142.17, 843.25, 3147.1, 845.73, 3152.38, + 847.54, 3157.94, 848.63, 3163.67 + ] + ], + "area": 6782.0, + "bbox": [756.0, 3123.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 565, + "image_id": 6, + "category_id": 3, + "segmentation": [[2707.0, 132.0, 2672.0, 193.0, 2742.0, 193.0]], + "area": 2142.0, + "bbox": [2672.0, 132.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 566, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 109.0, 163.5, 108.69, 168.45, 107.76, 173.32, 106.23, 178.04, 104.11, + 182.53, 101.46, 186.72, 98.29, 190.54, 94.68, 193.94, 90.67, 196.85, + 86.32, 199.24, 81.71, 201.07, 76.9, 202.3, 71.98, 202.92, 67.02, + 202.92, 62.1, 202.3, 57.29, 201.07, 52.68, 199.24, 48.33, 196.85, + 44.32, 193.94, 40.71, 190.54, 37.54, 186.72, 34.89, 182.53, 32.77, + 178.04, 31.24, 173.32, 30.31, 168.45, 30.0, 163.5, 30.31, 158.55, + 31.24, 153.68, 32.77, 148.96, 34.89, 144.47, 37.54, 140.28, 40.71, + 136.46, 44.32, 133.06, 48.33, 130.15, 52.68, 127.76, 57.29, 125.93, + 62.1, 124.7, 67.02, 124.08, 71.98, 124.08, 76.9, 124.7, 81.71, 125.93, + 86.32, 127.76, 90.67, 130.15, 94.68, 133.06, 98.29, 136.46, 101.46, + 140.28, 104.11, 144.47, 106.23, 148.96, 107.76, 153.68, 108.69, 158.55 + ] + ], + "area": 4893.0, + "bbox": [30.0, 124.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 567, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3029.0, 2601.0, 3100.0, 2601.0, 3100.0, 2672.0, 3029.0, 2672.0, + 3029.0, 2601.0 + ] + ], + "area": 5041.0, + "bbox": [3029.0, 2601.0, 71.0, 71.0], + "iscrowd": 0 + }, + { + "id": 568, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1312.0, 2841.5, 1311.81, 2844.57, 1311.23, 2847.59, 1310.28, 2850.52, + 1308.97, 2853.3, 1307.32, 2855.9, 1305.36, 2858.27, 1303.12, 2860.38, + 1300.63, 2862.19, 1297.93, 2863.67, 1295.07, 2864.8, 1292.09, 2865.57, + 1289.04, 2865.95, 1285.96, 2865.95, 1282.91, 2865.57, 1279.93, 2864.8, + 1277.07, 2863.67, 1274.37, 2862.19, 1271.88, 2860.38, 1269.64, + 2858.27, 1267.68, 2855.9, 1266.03, 2853.3, 1264.72, 2850.52, 1263.77, + 2847.59, 1263.19, 2844.57, 1263.0, 2841.5, 1263.19, 2838.43, 1263.77, + 2835.41, 1264.72, 2832.48, 1266.03, 2829.7, 1267.68, 2827.1, 1269.64, + 2824.73, 1271.88, 2822.62, 1274.37, 2820.81, 1277.07, 2819.33, + 1279.93, 2818.2, 1282.91, 2817.43, 1285.96, 2817.05, 1289.04, 2817.05, + 1292.09, 2817.43, 1295.07, 2818.2, 1297.93, 2819.33, 1300.63, 2820.81, + 1303.12, 2822.62, 1305.36, 2824.73, 1307.32, 2827.1, 1308.97, 2829.7, + 1310.28, 2832.48, 1311.23, 2835.41, 1311.81, 2838.43 + ] + ], + "area": 1885.0, + "bbox": [1263.0, 2817.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 569, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2151.5, 518.0, 2157.45, 517.63, 2163.31, 516.51, 2168.99, 514.66, + 2174.38, 512.12, 2179.42, 508.93, 2184.02, 505.13, 2188.1, 500.78, + 2191.61, 495.95, 2194.48, 490.72, 2196.68, 485.18, 2198.16, 479.4, + 2198.91, 473.48, 2198.91, 467.52, 2198.16, 461.6, 2196.68, 455.82, + 2194.48, 450.28, 2191.61, 445.05, 2188.1, 440.22, 2184.02, 435.87, + 2179.42, 432.07, 2174.38, 428.88, 2168.99, 426.34, 2163.31, 424.49, + 2157.45, 423.37, 2151.5, 423.0, 2145.55, 423.37, 2139.69, 424.49, + 2134.01, 426.34, 2128.62, 428.88, 2123.58, 432.07, 2118.98, 435.87, + 2114.9, 440.22, 2111.39, 445.05, 2108.52, 450.28, 2106.32, 455.82, + 2104.84, 461.6, 2104.09, 467.52, 2104.09, 473.48, 2104.84, 479.4, + 2106.32, 485.18, 2108.52, 490.72, 2111.39, 495.95, 2114.9, 500.78, + 2118.98, 505.13, 2123.58, 508.93, 2128.62, 512.12, 2134.01, 514.66, + 2139.69, 516.51, 2145.55, 517.63 + ] + ], + "area": 7083.0, + "bbox": [2104.09, 423.0, 94.82, 95.0], + "iscrowd": 0 + }, + { + "id": 570, + "image_id": 6, + "category_id": 3, + "segmentation": [[3061.0, 2215.0, 3018.0, 2290.0, 3104.0, 2290.0]], + "area": 3234.0, + "bbox": [3018.0, 2215.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 571, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3401.0, 3392.0, 3481.0, 3392.0, 3481.0, 3490.0, 3401.0, 3490.0, + 3401.0, 3392.0 + ] + ], + "area": 7840.0, + "bbox": [3401.0, 3392.0, 80.0, 98.0], + "iscrowd": 0 + }, + { + "id": 572, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 735.0, 2971.5, 734.7, 2976.2, 733.82, 2980.83, 732.37, 2985.3, 730.36, + 2989.57, 727.84, 2993.54, 724.84, 2997.17, 721.4, 3000.39, 717.59, + 3003.16, 713.47, 3005.43, 709.09, 3007.16, 704.53, 3008.34, 699.85, + 3008.93, 695.15, 3008.93, 690.47, 3008.34, 685.91, 3007.16, 681.53, + 3005.43, 677.41, 3003.16, 673.6, 3000.39, 670.16, 2997.17, 667.16, + 2993.54, 664.64, 2989.57, 662.63, 2985.3, 661.18, 2980.83, 660.3, + 2976.2, 660.0, 2971.5, 660.3, 2966.8, 661.18, 2962.17, 662.63, 2957.7, + 664.64, 2953.43, 667.16, 2949.46, 670.16, 2945.83, 673.6, 2942.61, + 677.41, 2939.84, 681.53, 2937.57, 685.91, 2935.84, 690.47, 2934.66, + 695.15, 2934.07, 699.85, 2934.07, 704.53, 2934.66, 709.09, 2935.84, + 713.47, 2937.57, 717.59, 2939.84, 721.4, 2942.61, 724.84, 2945.83, + 727.84, 2949.46, 730.36, 2953.43, 732.37, 2957.7, 733.82, 2962.17, + 734.7, 2966.8 + ] + ], + "area": 4410.0, + "bbox": [660.0, 2934.07, 75.0, 74.86], + "iscrowd": 0 + }, + { + "id": 573, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1678.0, 1511.0, 1773.0, 1511.0, 1773.0, 1604.0, 1678.0, 1604.0, + 1678.0, 1511.0 + ] + ], + "area": 8835.0, + "bbox": [1678.0, 1511.0, 95.0, 93.0], + "iscrowd": 0 + }, + { + "id": 574, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1193.0, 3397.0, 1250.0, 3397.0, 1250.0, 3457.0, 1193.0, 3457.0, + 1193.0, 3397.0 + ] + ], + "area": 3420.0, + "bbox": [1193.0, 3397.0, 57.0, 60.0], + "iscrowd": 0 + }, + { + "id": 575, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [659.0, 788.0, 718.0, 788.0, 718.0, 843.0, 659.0, 843.0, 659.0, 788.0] + ], + "area": 3245.0, + "bbox": [659.0, 788.0, 59.0, 55.0], + "iscrowd": 0 + }, + { + "id": 576, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2080.5, 932.0, 2085.7, 931.67, 2090.82, 930.7, 2095.78, 929.09, + 2100.49, 926.87, 2104.89, 924.07, 2108.91, 920.75, 2112.48, 916.95, + 2115.54, 912.74, 2118.05, 908.17, 2119.97, 903.32, 2121.26, 898.28, + 2121.92, 893.11, 2121.92, 887.89, 2121.26, 882.72, 2119.97, 877.68, + 2118.05, 872.83, 2115.54, 868.26, 2112.48, 864.05, 2108.91, 860.25, + 2104.89, 856.93, 2100.49, 854.13, 2095.78, 851.91, 2090.82, 850.3, + 2085.7, 849.33, 2080.5, 849.0, 2075.3, 849.33, 2070.18, 850.3, + 2065.22, 851.91, 2060.51, 854.13, 2056.11, 856.93, 2052.09, 860.25, + 2048.52, 864.05, 2045.46, 868.26, 2042.95, 872.83, 2041.03, 877.68, + 2039.74, 882.72, 2039.08, 887.89, 2039.08, 893.11, 2039.74, 898.28, + 2041.03, 903.32, 2042.95, 908.17, 2045.46, 912.74, 2048.52, 916.95, + 2052.09, 920.75, 2056.11, 924.07, 2060.51, 926.87, 2065.22, 929.09, + 2070.18, 930.7, 2075.3, 931.67 + ] + ], + "area": 5392.0, + "bbox": [2039.08, 849.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 577, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3307.0, 1738.5, 3306.73, 1742.82, 3305.92, 1747.08, 3304.58, 1751.2, + 3302.73, 1755.12, 3300.41, 1758.78, 3297.65, 1762.12, 3294.49, + 1765.08, 3290.99, 1767.63, 3287.19, 1769.72, 3283.16, 1771.31, + 3278.96, 1772.39, 3274.67, 1772.93, 3270.33, 1772.93, 3266.04, + 1772.39, 3261.84, 1771.31, 3257.81, 1769.72, 3254.01, 1767.63, + 3250.51, 1765.08, 3247.35, 1762.12, 3244.59, 1758.78, 3242.27, + 1755.12, 3240.42, 1751.2, 3239.08, 1747.08, 3238.27, 1742.82, 3238.0, + 1738.5, 3238.27, 1734.18, 3239.08, 1729.92, 3240.42, 1725.8, 3242.27, + 1721.88, 3244.59, 1718.22, 3247.35, 1714.88, 3250.51, 1711.92, + 3254.01, 1709.37, 3257.81, 1707.28, 3261.84, 1705.69, 3266.04, + 1704.61, 3270.33, 1704.07, 3274.67, 1704.07, 3278.96, 1704.61, + 3283.16, 1705.69, 3287.19, 1707.28, 3290.99, 1709.37, 3294.49, + 1711.92, 3297.65, 1714.88, 3300.41, 1718.22, 3302.73, 1721.88, + 3304.58, 1725.8, 3305.92, 1729.92, 3306.73, 1734.18 + ] + ], + "area": 3743.0, + "bbox": [3238.0, 1704.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 578, + "image_id": 6, + "category_id": 3, + "segmentation": [[2378.0, 2320.0, 2346.0, 2376.0, 2410.0, 2376.0]], + "area": 1792.0, + "bbox": [2346.0, 2320.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 579, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3099.0, 2750.0, 3158.0, 2750.0, 3158.0, 2821.0, 3099.0, 2821.0, + 3099.0, 2750.0 + ] + ], + "area": 4189.0, + "bbox": [3099.0, 2750.0, 59.0, 71.0], + "iscrowd": 0 + }, + { + "id": 580, + "image_id": 6, + "category_id": 3, + "segmentation": [[1679.5, 2221.0, 1635.0, 2299.0, 1724.0, 2299.0]], + "area": 3477.0, + "bbox": [1635.0, 2221.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 581, + "image_id": 6, + "category_id": 3, + "segmentation": [[1248.0, 1640.0, 1219.0, 1691.0, 1277.0, 1691.0]], + "area": 1484.0, + "bbox": [1219.0, 1640.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 582, + "image_id": 6, + "category_id": 3, + "segmentation": [[1060.5, 1356.0, 1012.0, 1441.0, 1109.0, 1441.0]], + "area": 4129.0, + "bbox": [1012.0, 1356.0, 97.0, 85.0], + "iscrowd": 0 + }, + { + "id": 583, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3419.5, 517.0, 3425.33, 516.63, 3431.06, 515.54, 3436.62, 513.73, + 3441.9, 511.25, 3446.83, 508.12, 3451.33, 504.4, 3455.33, 500.14, + 3458.76, 495.42, 3461.57, 490.3, 3463.72, 484.87, 3465.18, 479.21, + 3465.91, 473.42, 3465.91, 467.58, 3465.18, 461.79, 3463.72, 456.13, + 3461.57, 450.7, 3458.76, 445.58, 3455.33, 440.86, 3451.33, 436.6, + 3446.83, 432.88, 3441.9, 429.75, 3436.62, 427.27, 3431.06, 425.46, + 3425.33, 424.37, 3419.5, 424.0, 3413.67, 424.37, 3407.94, 425.46, + 3402.38, 427.27, 3397.1, 429.75, 3392.17, 432.88, 3387.67, 436.6, + 3383.67, 440.86, 3380.24, 445.58, 3377.43, 450.7, 3375.28, 456.13, + 3373.82, 461.79, 3373.09, 467.58, 3373.09, 473.42, 3373.82, 479.21, + 3375.28, 484.87, 3377.43, 490.3, 3380.24, 495.42, 3383.67, 500.14, + 3387.67, 504.4, 3392.17, 508.12, 3397.1, 511.25, 3402.38, 513.73, + 3407.94, 515.54, 3413.67, 516.63 + ] + ], + "area": 6781.0, + "bbox": [3373.09, 424.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 584, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 172.0, 1289.0, 225.0, 1289.0, 225.0, 1381.0, 172.0, 1381.0, 172.0, + 1289.0 + ] + ], + "area": 4876.0, + "bbox": [172.0, 1289.0, 53.0, 92.0], + "iscrowd": 0 + }, + { + "id": 585, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1017.5, 921.0, 1022.07, 920.71, 1026.58, 919.85, 1030.94, 918.44, + 1035.08, 916.49, 1038.95, 914.03, 1042.49, 911.11, 1045.62, 907.77, + 1048.32, 904.06, 1050.53, 900.04, 1052.21, 895.78, 1053.35, 891.34, + 1053.93, 886.79, 1053.93, 882.21, 1053.35, 877.66, 1052.21, 873.22, + 1050.53, 868.96, 1048.32, 864.94, 1045.62, 861.23, 1042.49, 857.89, + 1038.95, 854.97, 1035.08, 852.51, 1030.94, 850.56, 1026.58, 849.15, + 1022.07, 848.29, 1017.5, 848.0, 1012.93, 848.29, 1008.42, 849.15, + 1004.06, 850.56, 999.92, 852.51, 996.05, 854.97, 992.51, 857.89, + 989.38, 861.23, 986.68, 864.94, 984.47, 868.96, 982.79, 873.22, + 981.65, 877.66, 981.07, 882.21, 981.07, 886.79, 981.65, 891.34, + 982.79, 895.78, 984.47, 900.04, 986.68, 904.06, 989.38, 907.77, + 992.51, 911.11, 996.05, 914.03, 999.92, 916.49, 1004.06, 918.44, + 1008.42, 919.85, 1012.93, 920.71 + ] + ], + "area": 4187.0, + "bbox": [981.07, 848.0, 72.86, 73.0], + "iscrowd": 0 + }, + { + "id": 586, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [40.0, 3305.0, 92.0, 3305.0, 92.0, 3360.0, 40.0, 3360.0, 40.0, 3305.0] + ], + "area": 2860.0, + "bbox": [40.0, 3305.0, 52.0, 55.0], + "iscrowd": 0 + }, + { + "id": 587, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2703.0, 2533.0, 2758.0, 2533.0, 2758.0, 2590.0, 2703.0, 2590.0, + 2703.0, 2533.0 + ] + ], + "area": 3135.0, + "bbox": [2703.0, 2533.0, 55.0, 57.0], + "iscrowd": 0 + }, + { + "id": 588, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3378.0, 2655.0, 3449.0, 2655.0, 3449.0, 2731.0, 3378.0, 2731.0, + 3378.0, 2655.0 + ] + ], + "area": 5396.0, + "bbox": [3378.0, 2655.0, 71.0, 76.0], + "iscrowd": 0 + }, + { + "id": 589, + "image_id": 6, + "category_id": 3, + "segmentation": [[2327.0, 2856.0, 2289.0, 2922.0, 2365.0, 2922.0]], + "area": 2514.0, + "bbox": [2289.0, 2856.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 590, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [8.0, 893.0, 61.0, 893.0, 61.0, 950.0, 8.0, 950.0, 8.0, 893.0] + ], + "area": 3021.0, + "bbox": [8.0, 893.0, 53.0, 57.0], + "iscrowd": 0 + }, + { + "id": 591, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3300.0, 557.5, 3299.75, 561.45, 3299.01, 565.33, 3297.79, 569.1, + 3296.1, 572.68, 3293.98, 576.02, 3291.46, 579.06, 3288.58, 581.77, + 3285.38, 584.1, 3281.91, 586.0, 3278.23, 587.46, 3274.4, 588.44, + 3270.48, 588.94, 3266.52, 588.94, 3262.6, 588.44, 3258.77, 587.46, + 3255.09, 586.0, 3251.62, 584.1, 3248.42, 581.77, 3245.54, 579.06, + 3243.02, 576.02, 3240.9, 572.68, 3239.21, 569.1, 3237.99, 565.33, + 3237.25, 561.45, 3237.0, 557.5, 3237.25, 553.55, 3237.99, 549.67, + 3239.21, 545.9, 3240.9, 542.32, 3243.02, 538.98, 3245.54, 535.94, + 3248.42, 533.23, 3251.62, 530.9, 3255.09, 529.0, 3258.77, 527.54, + 3262.6, 526.56, 3266.52, 526.06, 3270.48, 526.06, 3274.4, 526.56, + 3278.23, 527.54, 3281.91, 529.0, 3285.38, 530.9, 3288.58, 533.23, + 3291.46, 535.94, 3293.98, 538.98, 3296.1, 542.32, 3297.79, 545.9, + 3299.01, 549.67, 3299.75, 553.55 + ] + ], + "area": 3122.0, + "bbox": [3237.0, 526.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 592, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2674.0, 849.0, 2765.0, 849.0, 2765.0, 930.0, 2674.0, 930.0, 2674.0, + 849.0 + ] + ], + "area": 7371.0, + "bbox": [2674.0, 849.0, 91.0, 81.0], + "iscrowd": 0 + }, + { + "id": 593, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2867.0, 981.0, 2936.0, 981.0, 2936.0, 1071.0, 2867.0, 1071.0, 2867.0, + 981.0 + ] + ], + "area": 6210.0, + "bbox": [2867.0, 981.0, 69.0, 90.0], + "iscrowd": 0 + }, + { + "id": 594, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [791.0, 40.0, 880.0, 40.0, 880.0, 109.0, 791.0, 109.0, 791.0, 40.0] + ], + "area": 6141.0, + "bbox": [791.0, 40.0, 89.0, 69.0], + "iscrowd": 0 + }, + { + "id": 595, + "image_id": 6, + "category_id": 3, + "segmentation": [[1971.5, 548.0, 1940.0, 603.0, 2003.0, 603.0]], + "area": 1739.0, + "bbox": [1940.0, 548.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 596, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2658.0, 246.0, 2713.0, 246.0, 2713.0, 305.0, 2658.0, 305.0, 2658.0, + 246.0 + ] + ], + "area": 3245.0, + "bbox": [2658.0, 246.0, 55.0, 59.0], + "iscrowd": 0 + }, + { + "id": 597, + "image_id": 6, + "category_id": 3, + "segmentation": [[2718.0, 1688.0, 2686.0, 1744.0, 2750.0, 1744.0]], + "area": 1792.0, + "bbox": [2686.0, 1688.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 598, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2247.0, 2575.0, 2336.0, 2575.0, 2336.0, 2656.0, 2247.0, 2656.0, + 2247.0, 2575.0 + ] + ], + "area": 7209.0, + "bbox": [2247.0, 2575.0, 89.0, 81.0], + "iscrowd": 0 + }, + { + "id": 599, + "image_id": 6, + "category_id": 3, + "segmentation": [[1359.0, 2632.0, 1320.0, 2700.0, 1398.0, 2700.0]], + "area": 2660.0, + "bbox": [1320.0, 2632.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 600, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1372.0, 2186.5, 1371.63, 2192.33, 1370.54, 2198.06, 1368.73, 2203.62, + 1366.25, 2208.9, 1363.12, 2213.83, 1359.4, 2218.33, 1355.14, 2222.33, + 1350.42, 2225.76, 1345.3, 2228.57, 1339.87, 2230.72, 1334.21, 2232.18, + 1328.42, 2232.91, 1322.58, 2232.91, 1316.79, 2232.18, 1311.13, + 2230.72, 1305.7, 2228.57, 1300.58, 2225.76, 1295.86, 2222.33, 1291.6, + 2218.33, 1287.88, 2213.83, 1284.75, 2208.9, 1282.27, 2203.62, 1280.46, + 2198.06, 1279.37, 2192.33, 1279.0, 2186.5, 1279.37, 2180.67, 1280.46, + 2174.94, 1282.27, 2169.38, 1284.75, 2164.1, 1287.88, 2159.17, 1291.6, + 2154.67, 1295.86, 2150.67, 1300.58, 2147.24, 1305.7, 2144.43, 1311.13, + 2142.28, 1316.79, 2140.82, 1322.58, 2140.09, 1328.42, 2140.09, + 1334.21, 2140.82, 1339.87, 2142.28, 1345.3, 2144.43, 1350.42, 2147.24, + 1355.14, 2150.67, 1359.4, 2154.67, 1363.12, 2159.17, 1366.25, 2164.1, + 1368.73, 2169.38, 1370.54, 2174.94, 1371.63, 2180.67 + ] + ], + "area": 6782.0, + "bbox": [1279.0, 2140.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 601, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2312.5, 102.0, 2317.95, 101.66, 2323.32, 100.63, 2328.51, 98.95, + 2333.46, 96.62, 2338.07, 93.69, 2342.28, 90.21, 2346.02, 86.23, + 2349.23, 81.81, 2351.86, 77.02, 2353.87, 71.94, 2355.23, 66.65, + 2355.91, 61.23, 2355.91, 55.77, 2355.23, 50.35, 2353.87, 45.06, + 2351.86, 39.98, 2349.23, 35.19, 2346.02, 30.77, 2342.28, 26.79, + 2338.07, 23.31, 2333.46, 20.38, 2328.51, 18.05, 2323.32, 16.37, + 2317.95, 15.34, 2312.5, 15.0, 2307.05, 15.34, 2301.68, 16.37, 2296.49, + 18.05, 2291.54, 20.38, 2286.93, 23.31, 2282.72, 26.79, 2278.98, 30.77, + 2275.77, 35.19, 2273.14, 39.98, 2271.13, 45.06, 2269.77, 50.35, + 2269.09, 55.77, 2269.09, 61.23, 2269.77, 66.65, 2271.13, 71.94, + 2273.14, 77.02, 2275.77, 81.81, 2278.98, 86.23, 2282.72, 90.21, + 2286.93, 93.69, 2291.54, 96.62, 2296.49, 98.95, 2301.68, 100.63, + 2307.05, 101.66 + ] + ], + "area": 5930.0, + "bbox": [2269.09, 15.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 602, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3360.0, 2093.0, 3429.0, 2093.0, 3429.0, 2166.0, 3360.0, 2166.0, + 3360.0, 2093.0 + ] + ], + "area": 5037.0, + "bbox": [3360.0, 2093.0, 69.0, 73.0], + "iscrowd": 0 + }, + { + "id": 603, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2459.0, 1462.0, 2512.0, 1462.0, 2512.0, 1561.0, 2459.0, 1561.0, + 2459.0, 1462.0 + ] + ], + "area": 5247.0, + "bbox": [2459.0, 1462.0, 53.0, 99.0], + "iscrowd": 0 + }, + { + "id": 604, + "image_id": 6, + "category_id": 3, + "segmentation": [[2622.0, 977.0, 2593.0, 1028.0, 2651.0, 1028.0]], + "area": 1484.0, + "bbox": [2593.0, 977.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 605, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 929.0, 1901.5, 928.78, 1904.95, 928.14, 1908.34, 927.07, 1911.62, + 925.6, 1914.75, 923.75, 1917.66, 921.55, 1920.33, 919.03, 1922.69, + 916.24, 1924.72, 913.21, 1926.38, 910.0, 1927.65, 906.65, 1928.51, + 903.23, 1928.95, 899.77, 1928.95, 896.35, 1928.51, 893.0, 1927.65, + 889.79, 1926.38, 886.76, 1924.72, 883.97, 1922.69, 881.45, 1920.33, + 879.25, 1917.66, 877.4, 1914.75, 875.93, 1911.62, 874.86, 1908.34, + 874.22, 1904.95, 874.0, 1901.5, 874.22, 1898.05, 874.86, 1894.66, + 875.93, 1891.38, 877.4, 1888.25, 879.25, 1885.34, 881.45, 1882.67, + 883.97, 1880.31, 886.76, 1878.28, 889.79, 1876.62, 893.0, 1875.35, + 896.35, 1874.49, 899.77, 1874.05, 903.23, 1874.05, 906.65, 1874.49, + 910.0, 1875.35, 913.21, 1876.62, 916.24, 1878.28, 919.03, 1880.31, + 921.55, 1882.67, 923.75, 1885.34, 925.6, 1888.25, 927.07, 1891.38, + 928.14, 1894.66, 928.78, 1898.05 + ] + ], + "area": 2375.0, + "bbox": [874.0, 1874.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 606, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2039.0, 150.0, 2123.0, 150.0, 2123.0, 219.0, 2039.0, 219.0, 2039.0, + 150.0 + ] + ], + "area": 5796.0, + "bbox": [2039.0, 150.0, 84.0, 69.0], + "iscrowd": 0 + }, + { + "id": 607, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1146.5, 1110.0, 1150.32, 1109.76, 1154.09, 1109.04, 1157.73, 1107.86, + 1161.19, 1106.23, 1164.43, 1104.18, 1167.38, 1101.73, 1170.0, 1098.94, + 1172.25, 1095.84, 1174.1, 1092.49, 1175.51, 1088.93, 1176.46, 1085.22, + 1176.94, 1081.42, 1176.94, 1077.58, 1176.46, 1073.78, 1175.51, + 1070.07, 1174.1, 1066.51, 1172.25, 1063.16, 1170.0, 1060.06, 1167.38, + 1057.27, 1164.43, 1054.82, 1161.19, 1052.77, 1157.73, 1051.14, + 1154.09, 1049.96, 1150.32, 1049.24, 1146.5, 1049.0, 1142.68, 1049.24, + 1138.91, 1049.96, 1135.27, 1051.14, 1131.81, 1052.77, 1128.57, + 1054.82, 1125.62, 1057.27, 1123.0, 1060.06, 1120.75, 1063.16, 1118.9, + 1066.51, 1117.49, 1070.07, 1116.54, 1073.78, 1116.06, 1077.58, + 1116.06, 1081.42, 1116.54, 1085.22, 1117.49, 1088.93, 1118.9, 1092.49, + 1120.75, 1095.84, 1123.0, 1098.94, 1125.62, 1101.73, 1128.57, 1104.18, + 1131.81, 1106.23, 1135.27, 1107.86, 1138.91, 1109.04, 1142.68, 1109.76 + ] + ], + "area": 2916.0, + "bbox": [1116.06, 1049.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 608, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3228.0, 2188.0, 3309.0, 2188.0, 3309.0, 2269.0, 3228.0, 2269.0, + 3228.0, 2188.0 + ] + ], + "area": 6561.0, + "bbox": [3228.0, 2188.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 609, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [623.0, 394.0, 688.0, 394.0, 688.0, 457.0, 623.0, 457.0, 623.0, 394.0] + ], + "area": 4095.0, + "bbox": [623.0, 394.0, 65.0, 63.0], + "iscrowd": 0 + }, + { + "id": 610, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2844.0, 2769.0, 2942.0, 2769.0, 2942.0, 2866.0, 2844.0, 2866.0, + 2844.0, 2769.0 + ] + ], + "area": 9506.0, + "bbox": [2844.0, 2769.0, 98.0, 97.0], + "iscrowd": 0 + }, + { + "id": 611, + "image_id": 6, + "category_id": 3, + "segmentation": [[2700.0, 2363.0, 2663.0, 2428.0, 2737.0, 2428.0]], + "area": 2412.0, + "bbox": [2663.0, 2363.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 612, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [937.0, 674.0, 1007.0, 674.0, 1007.0, 734.0, 937.0, 734.0, 937.0, 674.0] + ], + "area": 4200.0, + "bbox": [937.0, 674.0, 70.0, 60.0], + "iscrowd": 0 + }, + { + "id": 613, + "image_id": 6, + "category_id": 3, + "segmentation": [[886.0, 1320.0, 842.0, 1397.0, 930.0, 1397.0]], + "area": 3388.0, + "bbox": [842.0, 1320.0, 88.0, 77.0], + "iscrowd": 0 + }, + { + "id": 614, + "image_id": 6, + "category_id": 3, + "segmentation": [[217.5, 2926.0, 184.0, 2985.0, 251.0, 2985.0]], + "area": 1985.0, + "bbox": [184.0, 2926.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 615, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1689.0, 566.0, 1753.0, 566.0, 1753.0, 630.0, 1689.0, 630.0, 1689.0, + 566.0 + ] + ], + "area": 4096.0, + "bbox": [1689.0, 566.0, 64.0, 64.0], + "iscrowd": 0 + }, + { + "id": 616, + "image_id": 6, + "category_id": 3, + "segmentation": [[1703.5, 290.0, 1678.0, 335.0, 1729.0, 335.0]], + "area": 1154.0, + "bbox": [1678.0, 290.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 617, + "image_id": 6, + "category_id": 3, + "segmentation": [[148.5, 3352.0, 118.0, 3405.0, 179.0, 3405.0]], + "area": 1623.0, + "bbox": [118.0, 3352.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 618, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1630.0, 2343.0, 1717.0, 2343.0, 1717.0, 2436.0, 1630.0, 2436.0, + 1630.0, 2343.0 + ] + ], + "area": 8091.0, + "bbox": [1630.0, 2343.0, 87.0, 93.0], + "iscrowd": 0 + }, + { + "id": 619, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2548.5, 586.0, 2552.07, 585.78, 2555.59, 585.1, 2558.99, 584.0, + 2562.23, 582.47, 2565.25, 580.56, 2568.01, 578.28, 2570.46, 575.67, + 2572.56, 572.77, 2574.29, 569.63, 2575.61, 566.31, 2576.5, 562.84, + 2576.94, 559.29, 2576.94, 555.71, 2576.5, 552.16, 2575.61, 548.69, + 2574.29, 545.37, 2572.56, 542.23, 2570.46, 539.33, 2568.01, 536.72, + 2565.25, 534.44, 2562.23, 532.53, 2558.99, 531.0, 2555.59, 529.9, + 2552.07, 529.22, 2548.5, 529.0, 2544.93, 529.22, 2541.41, 529.9, + 2538.01, 531.0, 2534.77, 532.53, 2531.75, 534.44, 2528.99, 536.72, + 2526.54, 539.33, 2524.44, 542.23, 2522.71, 545.37, 2521.39, 548.69, + 2520.5, 552.16, 2520.06, 555.71, 2520.06, 559.29, 2520.5, 562.84, + 2521.39, 566.31, 2522.71, 569.63, 2524.44, 572.77, 2526.54, 575.67, + 2528.99, 578.28, 2531.75, 580.56, 2534.77, 582.47, 2538.01, 584.0, + 2541.41, 585.1, 2544.93, 585.78 + ] + ], + "area": 2547.0, + "bbox": [2520.06, 529.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 620, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2632.0, 1595.5, 2631.74, 1599.7, 2630.95, 1603.83, 2629.65, 1607.83, + 2627.86, 1611.64, 2625.6, 1615.19, 2622.92, 1618.43, 2619.85, 1621.31, + 2616.45, 1623.78, 2612.76, 1625.81, 2608.85, 1627.36, 2604.78, + 1628.41, 2600.6, 1628.93, 2596.4, 1628.93, 2592.22, 1628.41, 2588.15, + 1627.36, 2584.24, 1625.81, 2580.55, 1623.78, 2577.15, 1621.31, + 2574.08, 1618.43, 2571.4, 1615.19, 2569.14, 1611.64, 2567.35, 1607.83, + 2566.05, 1603.83, 2565.26, 1599.7, 2565.0, 1595.5, 2565.26, 1591.3, + 2566.05, 1587.17, 2567.35, 1583.17, 2569.14, 1579.36, 2571.4, 1575.81, + 2574.08, 1572.57, 2577.15, 1569.69, 2580.55, 1567.22, 2584.24, + 1565.19, 2588.15, 1563.64, 2592.22, 1562.59, 2596.4, 1562.07, 2600.6, + 1562.07, 2604.78, 1562.59, 2608.85, 1563.64, 2612.76, 1565.19, + 2616.45, 1567.22, 2619.85, 1569.69, 2622.92, 1572.57, 2625.6, 1575.81, + 2627.86, 1579.36, 2629.65, 1583.17, 2630.95, 1587.17, 2631.74, 1591.3 + ] + ], + "area": 3519.0, + "bbox": [2565.0, 1562.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 621, + "image_id": 6, + "category_id": 3, + "segmentation": [[793.0, 335.0, 752.0, 407.0, 834.0, 407.0]], + "area": 2960.0, + "bbox": [752.0, 335.0, 82.0, 72.0], + "iscrowd": 0 + } + ] +} diff --git a/data/small_objects/annotations/instances_val.json b/data/small_objects/annotations/instances_val.json new file mode 100644 index 00000000000..449aad07d77 --- /dev/null +++ b/data/small_objects/annotations/instances_val.json @@ -0,0 +1,3323 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { "id": 1, "name": "rectangle", "supercategory": "" }, + { "id": 2, "name": "ellipse", "supercategory": "" }, + { "id": 3, "name": "triangle", "supercategory": "" } + ], + "images": [ + { + "id": 7, + "width": 3500, + "height": 3500, + "file_name": "sample_5.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 8, + "width": 3500, + "height": 3500, + "file_name": "sample_8.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [ + { + "id": 1, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2117.0, 3424.5, 2116.79, 3427.82, 2116.17, 3431.09, 2115.14, 3434.26, + 2113.72, 3437.27, 2111.94, 3440.08, 2109.82, 3442.64, 2107.39, + 3444.92, 2104.7, 3446.87, 2101.78, 3448.48, 2098.69, 3449.7, 2095.47, + 3450.53, 2092.16, 3450.95, 2088.84, 3450.95, 2085.53, 3450.53, + 2082.31, 3449.7, 2079.22, 3448.48, 2076.3, 3446.87, 2073.61, 3444.92, + 2071.18, 3442.64, 2069.06, 3440.08, 2067.28, 3437.27, 2065.86, + 3434.26, 2064.83, 3431.09, 2064.21, 3427.82, 2064.0, 3424.5, 2064.21, + 3421.18, 2064.83, 3417.91, 2065.86, 3414.74, 2067.28, 3411.73, + 2069.06, 3408.92, 2071.18, 3406.36, 2073.61, 3404.08, 2076.3, 3402.13, + 2079.22, 3400.52, 2082.31, 3399.3, 2085.53, 3398.47, 2088.84, 3398.05, + 2092.16, 3398.05, 2095.47, 3398.47, 2098.69, 3399.3, 2101.78, 3400.52, + 2104.7, 3402.13, 2107.39, 3404.08, 2109.82, 3406.36, 2111.94, 3408.92, + 2113.72, 3411.73, 2115.14, 3414.74, 2116.17, 3417.91, 2116.79, 3421.18 + ] + ], + "area": 2207.0, + "bbox": [2064.0, 3398.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 2, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1535.0, 1834.0, 1614.0, 1834.0, 1614.0, 1915.0, 1535.0, 1915.0, + 1535.0, 1834.0 + ] + ], + "area": 6399.0, + "bbox": [1535.0, 1834.0, 79.0, 81.0], + "iscrowd": 0 + }, + { + "id": 3, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2179.0, 752.0, 2267.0, 752.0, 2267.0, 835.0, 2179.0, 835.0, 2179.0, + 752.0 + ] + ], + "area": 7304.0, + "bbox": [2179.0, 752.0, 88.0, 83.0], + "iscrowd": 0 + }, + { + "id": 4, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [400.0, 365.0, 495.0, 365.0, 495.0, 428.0, 400.0, 428.0, 400.0, 365.0] + ], + "area": 5985.0, + "bbox": [400.0, 365.0, 95.0, 63.0], + "iscrowd": 0 + }, + { + "id": 5, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2016.0, 1432.0, 2101.0, 1432.0, 2101.0, 1495.0, 2016.0, 1495.0, + 2016.0, 1432.0 + ] + ], + "area": 5355.0, + "bbox": [2016.0, 1432.0, 85.0, 63.0], + "iscrowd": 0 + }, + { + "id": 6, + "image_id": 7, + "category_id": 3, + "segmentation": [[3276.5, 1689.0, 3247.0, 1741.0, 3306.0, 1741.0]], + "area": 1542.0, + "bbox": [3247.0, 1689.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 7, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 3197.0, 1940.0, 3293.0, 1940.0, 3293.0, 2028.0, 3197.0, 2028.0, + 3197.0, 1940.0 + ] + ], + "area": 8448.0, + "bbox": [3197.0, 1940.0, 96.0, 88.0], + "iscrowd": 0 + }, + { + "id": 8, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2060.0, 846.0, 2154.0, 846.0, 2154.0, 915.0, 2060.0, 915.0, 2060.0, + 846.0 + ] + ], + "area": 6486.0, + "bbox": [2060.0, 846.0, 94.0, 69.0], + "iscrowd": 0 + }, + { + "id": 9, + "image_id": 7, + "category_id": 3, + "segmentation": [[438.5, 1154.0, 391.0, 1237.0, 486.0, 1237.0]], + "area": 3952.0, + "bbox": [391.0, 1154.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 10, + "image_id": 7, + "category_id": 3, + "segmentation": [[2381.5, 1923.0, 2356.0, 1968.0, 2407.0, 1968.0]], + "area": 1154.0, + "bbox": [2356.0, 1923.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 11, + "image_id": 7, + "category_id": 3, + "segmentation": [[2276.5, 1641.0, 2249.0, 1689.0, 2304.0, 1689.0]], + "area": 1326.0, + "bbox": [2249.0, 1641.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 12, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2768.0, 967.0, 2863.0, 967.0, 2863.0, 1046.0, 2768.0, 1046.0, 2768.0, + 967.0 + ] + ], + "area": 7505.0, + "bbox": [2768.0, 967.0, 95.0, 79.0], + "iscrowd": 0 + }, + { + "id": 13, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 3228.0, 3312.5, 3227.74, 3316.57, 3226.98, 3320.58, 3225.72, 3324.46, + 3223.98, 3328.16, 3221.79, 3331.6, 3219.19, 3334.75, 3216.22, 3337.54, + 3212.91, 3339.94, 3209.34, 3341.91, 3205.54, 3343.41, 3201.59, + 3344.42, 3197.54, 3344.94, 3193.46, 3344.94, 3189.41, 3344.42, + 3185.46, 3343.41, 3181.66, 3341.91, 3178.09, 3339.94, 3174.78, + 3337.54, 3171.81, 3334.75, 3169.21, 3331.6, 3167.02, 3328.16, 3165.28, + 3324.46, 3164.02, 3320.58, 3163.26, 3316.57, 3163.0, 3312.5, 3163.26, + 3308.43, 3164.02, 3304.42, 3165.28, 3300.54, 3167.02, 3296.84, + 3169.21, 3293.4, 3171.81, 3290.25, 3174.78, 3287.46, 3178.09, 3285.06, + 3181.66, 3283.09, 3185.46, 3281.59, 3189.41, 3280.58, 3193.46, + 3280.06, 3197.54, 3280.06, 3201.59, 3280.58, 3205.54, 3281.59, + 3209.34, 3283.09, 3212.91, 3285.06, 3216.22, 3287.46, 3219.19, + 3290.25, 3221.79, 3293.4, 3223.98, 3296.84, 3225.72, 3300.54, 3226.98, + 3304.42, 3227.74, 3308.43 + ] + ], + "area": 3315.0, + "bbox": [3163.0, 3280.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 14, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1440.0, 340.0, 1509.0, 340.0, 1509.0, 415.0, 1440.0, 415.0, 1440.0, + 340.0 + ] + ], + "area": 5175.0, + "bbox": [1440.0, 340.0, 69.0, 75.0], + "iscrowd": 0 + }, + { + "id": 15, + "image_id": 7, + "category_id": 3, + "segmentation": [[2516.5, 2458.0, 2483.0, 2517.0, 2550.0, 2517.0]], + "area": 1985.0, + "bbox": [2483.0, 2458.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 16, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2119.5, 691.0, 2122.57, 690.81, 2125.59, 690.23, 2128.52, 689.28, + 2131.3, 687.97, 2133.9, 686.32, 2136.27, 684.36, 2138.38, 682.12, + 2140.19, 679.63, 2141.67, 676.93, 2142.8, 674.07, 2143.57, 671.09, + 2143.95, 668.04, 2143.95, 664.96, 2143.57, 661.91, 2142.8, 658.93, + 2141.67, 656.07, 2140.19, 653.37, 2138.38, 650.88, 2136.27, 648.64, + 2133.9, 646.68, 2131.3, 645.03, 2128.52, 643.72, 2125.59, 642.77, + 2122.57, 642.19, 2119.5, 642.0, 2116.43, 642.19, 2113.41, 642.77, + 2110.48, 643.72, 2107.7, 645.03, 2105.1, 646.68, 2102.73, 648.64, + 2100.62, 650.88, 2098.81, 653.37, 2097.33, 656.07, 2096.2, 658.93, + 2095.43, 661.91, 2095.05, 664.96, 2095.05, 668.04, 2095.43, 671.09, + 2096.2, 674.07, 2097.33, 676.93, 2098.81, 679.63, 2100.62, 682.12, + 2102.73, 684.36, 2105.1, 686.32, 2107.7, 687.97, 2110.48, 689.28, + 2113.41, 690.23, 2116.43, 690.81 + ] + ], + "area": 1885.0, + "bbox": [2095.05, 642.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 17, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1684.0, 192.0, 1753.0, 192.0, 1753.0, 260.0, 1684.0, 260.0, 1684.0, + 192.0 + ] + ], + "area": 4692.0, + "bbox": [1684.0, 192.0, 69.0, 68.0], + "iscrowd": 0 + }, + { + "id": 18, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 175.0, 1532.0, 238.0, 1532.0, 238.0, 1585.0, 175.0, 1585.0, 175.0, + 1532.0 + ] + ], + "area": 3339.0, + "bbox": [175.0, 1532.0, 63.0, 53.0], + "iscrowd": 0 + }, + { + "id": 19, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1581.0, 3353.0, 1680.0, 3353.0, 1680.0, 3446.0, 1581.0, 3446.0, + 1581.0, 3353.0 + ] + ], + "area": 9207.0, + "bbox": [1581.0, 3353.0, 99.0, 93.0], + "iscrowd": 0 + }, + { + "id": 20, + "image_id": 7, + "category_id": 3, + "segmentation": [[476.5, 1689.0, 451.0, 1734.0, 502.0, 1734.0]], + "area": 1154.0, + "bbox": [451.0, 1689.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 21, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 1109.5, 337.0, 1114.33, 336.7, 1119.07, 335.79, 1123.67, 334.3, + 1128.05, 332.24, 1132.13, 329.65, 1135.86, 326.57, 1139.16, 323.04, + 1142.01, 319.13, 1144.34, 314.89, 1146.12, 310.4, 1147.32, 305.71, + 1147.92, 300.92, 1147.92, 296.08, 1147.32, 291.29, 1146.12, 286.6, + 1144.34, 282.11, 1142.01, 277.87, 1139.16, 273.96, 1135.86, 270.43, + 1132.13, 267.35, 1128.05, 264.76, 1123.67, 262.7, 1119.07, 261.21, + 1114.33, 260.3, 1109.5, 260.0, 1104.67, 260.3, 1099.93, 261.21, + 1095.33, 262.7, 1090.95, 264.76, 1086.87, 267.35, 1083.14, 270.43, + 1079.84, 273.96, 1076.99, 277.87, 1074.66, 282.11, 1072.88, 286.6, + 1071.68, 291.29, 1071.08, 296.08, 1071.08, 300.92, 1071.68, 305.71, + 1072.88, 310.4, 1074.66, 314.89, 1076.99, 319.13, 1079.84, 323.04, + 1083.14, 326.57, 1086.87, 329.65, 1090.95, 332.24, 1095.33, 334.3, + 1099.93, 335.79, 1104.67, 336.7 + ] + ], + "area": 4651.0, + "bbox": [1071.08, 260.0, 76.84, 77.0], + "iscrowd": 0 + }, + { + "id": 22, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2630.5, 288.0, 2636.33, 287.63, 2642.06, 286.54, 2647.62, 284.73, + 2652.9, 282.25, 2657.83, 279.12, 2662.33, 275.4, 2666.33, 271.14, + 2669.76, 266.42, 2672.57, 261.3, 2674.72, 255.87, 2676.18, 250.21, + 2676.91, 244.42, 2676.91, 238.58, 2676.18, 232.79, 2674.72, 227.13, + 2672.57, 221.7, 2669.76, 216.58, 2666.33, 211.86, 2662.33, 207.6, + 2657.83, 203.88, 2652.9, 200.75, 2647.62, 198.27, 2642.06, 196.46, + 2636.33, 195.37, 2630.5, 195.0, 2624.67, 195.37, 2618.94, 196.46, + 2613.38, 198.27, 2608.1, 200.75, 2603.17, 203.88, 2598.67, 207.6, + 2594.67, 211.86, 2591.24, 216.58, 2588.43, 221.7, 2586.28, 227.13, + 2584.82, 232.79, 2584.09, 238.58, 2584.09, 244.42, 2584.82, 250.21, + 2586.28, 255.87, 2588.43, 261.3, 2591.24, 266.42, 2594.67, 271.14, + 2598.67, 275.4, 2603.17, 279.12, 2608.1, 282.25, 2613.38, 284.73, + 2618.94, 286.54, 2624.67, 287.63 + ] + ], + "area": 6781.0, + "bbox": [2584.09, 195.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 23, + "image_id": 7, + "category_id": 3, + "segmentation": [[830.5, 1806.0, 804.0, 1853.0, 857.0, 1853.0]], + "area": 1251.0, + "bbox": [804.0, 1806.0, 53.0, 47.0], + "iscrowd": 0 + }, + { + "id": 24, + "image_id": 7, + "category_id": 3, + "segmentation": [[1570.0, 1749.0, 1545.0, 1793.0, 1595.0, 1793.0]], + "area": 1105.0, + "bbox": [1545.0, 1749.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 25, + "image_id": 7, + "category_id": 3, + "segmentation": [[1799.0, 50.0, 1756.0, 125.0, 1842.0, 125.0]], + "area": 3234.0, + "bbox": [1756.0, 50.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 26, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2977.0, 2260.5, 2976.62, 2266.58, 2975.48, 2272.56, 2973.59, 2278.35, + 2971.0, 2283.87, 2967.74, 2289.01, 2963.85, 2293.7, 2959.42, 2297.87, + 2954.49, 2301.45, 2949.15, 2304.38, 2943.49, 2306.63, 2937.59, + 2308.14, 2931.55, 2308.9, 2925.45, 2308.9, 2919.41, 2308.14, 2913.51, + 2306.63, 2907.85, 2304.38, 2902.51, 2301.45, 2897.58, 2297.87, + 2893.15, 2293.7, 2889.26, 2289.01, 2886.0, 2283.87, 2883.41, 2278.35, + 2881.52, 2272.56, 2880.38, 2266.58, 2880.0, 2260.5, 2880.38, 2254.42, + 2881.52, 2248.44, 2883.41, 2242.65, 2886.0, 2237.13, 2889.26, 2231.99, + 2893.15, 2227.3, 2897.58, 2223.13, 2902.51, 2219.55, 2907.85, 2216.62, + 2913.51, 2214.37, 2919.41, 2212.86, 2925.45, 2212.1, 2931.55, 2212.1, + 2937.59, 2212.86, 2943.49, 2214.37, 2949.15, 2216.62, 2954.49, + 2219.55, 2959.42, 2223.13, 2963.85, 2227.3, 2967.74, 2231.99, 2971.0, + 2237.13, 2973.59, 2242.65, 2975.48, 2248.44, 2976.62, 2254.42 + ] + ], + "area": 7381.0, + "bbox": [2880.0, 2212.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 27, + "image_id": 7, + "category_id": 3, + "segmentation": [[1495.0, 998.0, 1449.0, 1078.0, 1541.0, 1078.0]], + "area": 3688.0, + "bbox": [1449.0, 998.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 28, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 979.0, 279.5, 978.81, 282.57, 978.23, 285.59, 977.28, 288.52, 975.97, + 291.3, 974.32, 293.9, 972.36, 296.27, 970.12, 298.38, 967.63, 300.19, + 964.93, 301.67, 962.07, 302.8, 959.09, 303.57, 956.04, 303.95, 952.96, + 303.95, 949.91, 303.57, 946.93, 302.8, 944.07, 301.67, 941.37, 300.19, + 938.88, 298.38, 936.64, 296.27, 934.68, 293.9, 933.03, 291.3, 931.72, + 288.52, 930.77, 285.59, 930.19, 282.57, 930.0, 279.5, 930.19, 276.43, + 930.77, 273.41, 931.72, 270.48, 933.03, 267.7, 934.68, 265.1, 936.64, + 262.73, 938.88, 260.62, 941.37, 258.81, 944.07, 257.33, 946.93, 256.2, + 949.91, 255.43, 952.96, 255.05, 956.04, 255.05, 959.09, 255.43, + 962.07, 256.2, 964.93, 257.33, 967.63, 258.81, 970.12, 260.62, 972.36, + 262.73, 974.32, 265.1, 975.97, 267.7, 977.28, 270.48, 978.23, 273.41, + 978.81, 276.43 + ] + ], + "area": 1885.0, + "bbox": [930.0, 255.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 29, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 1728.5, 2861.0, 1733.95, 2860.66, 1739.32, 2859.63, 1744.51, 2857.95, + 1749.46, 2855.62, 1754.07, 2852.69, 1758.28, 2849.21, 1762.02, + 2845.23, 1765.23, 2840.81, 1767.86, 2836.02, 1769.87, 2830.94, + 1771.23, 2825.65, 1771.91, 2820.23, 1771.91, 2814.77, 1771.23, + 2809.35, 1769.87, 2804.06, 1767.86, 2798.98, 1765.23, 2794.19, + 1762.02, 2789.77, 1758.28, 2785.79, 1754.07, 2782.31, 1749.46, + 2779.38, 1744.51, 2777.05, 1739.32, 2775.37, 1733.95, 2774.34, 1728.5, + 2774.0, 1723.05, 2774.34, 1717.68, 2775.37, 1712.49, 2777.05, 1707.54, + 2779.38, 1702.93, 2782.31, 1698.72, 2785.79, 1694.98, 2789.77, + 1691.77, 2794.19, 1689.14, 2798.98, 1687.13, 2804.06, 1685.77, + 2809.35, 1685.09, 2814.77, 1685.09, 2820.23, 1685.77, 2825.65, + 1687.13, 2830.94, 1689.14, 2836.02, 1691.77, 2840.81, 1694.98, + 2845.23, 1698.72, 2849.21, 1702.93, 2852.69, 1707.54, 2855.62, + 1712.49, 2857.95, 1717.68, 2859.63, 1723.05, 2860.66 + ] + ], + "area": 5930.0, + "bbox": [1685.09, 2774.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 30, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [426.0, 370.0, 493.0, 370.0, 493.0, 453.0, 426.0, 453.0, 426.0, 370.0] + ], + "area": 5561.0, + "bbox": [426.0, 370.0, 67.0, 83.0], + "iscrowd": 0 + }, + { + "id": 31, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1956.0, 771.0, 2030.0, 771.0, 2030.0, 869.0, 1956.0, 869.0, 1956.0, + 771.0 + ] + ], + "area": 7252.0, + "bbox": [1956.0, 771.0, 74.0, 98.0], + "iscrowd": 0 + }, + { + "id": 32, + "image_id": 8, + "category_id": 3, + "segmentation": [[1048.0, 2154.0, 1020.0, 2203.0, 1076.0, 2203.0]], + "area": 1372.0, + "bbox": [1020.0, 2154.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 33, + "image_id": 8, + "category_id": 3, + "segmentation": [[1997.0, 2757.0, 1952.0, 2836.0, 2042.0, 2836.0]], + "area": 3564.0, + "bbox": [1952.0, 2757.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 34, + "image_id": 8, + "category_id": 3, + "segmentation": [[2810.5, 915.0, 2767.0, 991.0, 2854.0, 991.0]], + "area": 3315.0, + "bbox": [2767.0, 915.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 35, + "image_id": 8, + "category_id": 3, + "segmentation": [[645.0, 2420.0, 602.0, 2495.0, 688.0, 2495.0]], + "area": 3234.0, + "bbox": [602.0, 2420.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 36, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [417.0, 831.0, 492.0, 831.0, 492.0, 908.0, 417.0, 908.0, 417.0, 831.0] + ], + "area": 5775.0, + "bbox": [417.0, 831.0, 75.0, 77.0], + "iscrowd": 0 + }, + { + "id": 37, + "image_id": 8, + "category_id": 3, + "segmentation": [[1829.5, 2972.0, 1788.0, 3045.0, 1871.0, 3045.0]], + "area": 3040.0, + "bbox": [1788.0, 2972.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 38, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 214.0, 1690.5, 213.78, 1693.95, 213.14, 1697.34, 212.07, 1700.62, + 210.6, 1703.75, 208.75, 1706.66, 206.55, 1709.33, 204.03, 1711.69, + 201.24, 1713.72, 198.21, 1715.38, 195.0, 1716.65, 191.65, 1717.51, + 188.23, 1717.95, 184.77, 1717.95, 181.35, 1717.51, 178.0, 1716.65, + 174.79, 1715.38, 171.76, 1713.72, 168.97, 1711.69, 166.45, 1709.33, + 164.25, 1706.66, 162.4, 1703.75, 160.93, 1700.62, 159.86, 1697.34, + 159.22, 1693.95, 159.0, 1690.5, 159.22, 1687.05, 159.86, 1683.66, + 160.93, 1680.38, 162.4, 1677.25, 164.25, 1674.34, 166.45, 1671.67, + 168.97, 1669.31, 171.76, 1667.28, 174.79, 1665.62, 178.0, 1664.35, + 181.35, 1663.49, 184.77, 1663.05, 188.23, 1663.05, 191.65, 1663.49, + 195.0, 1664.35, 198.21, 1665.62, 201.24, 1667.28, 204.03, 1669.31, + 206.55, 1671.67, 208.75, 1674.34, 210.6, 1677.25, 212.07, 1680.38, + 213.14, 1683.66, 213.78, 1687.05 + ] + ], + "area": 2375.0, + "bbox": [159.0, 1663.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 39, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 120.0, 1236.0, 217.0, 1236.0, 217.0, 1323.0, 120.0, 1323.0, 120.0, + 1236.0 + ] + ], + "area": 8439.0, + "bbox": [120.0, 1236.0, 97.0, 87.0], + "iscrowd": 0 + }, + { + "id": 40, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1654.0, 2721.0, 1727.0, 2721.0, 1727.0, 2784.0, 1654.0, 2784.0, + 1654.0, 2721.0 + ] + ], + "area": 4599.0, + "bbox": [1654.0, 2721.0, 73.0, 63.0], + "iscrowd": 0 + }, + { + "id": 41, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1102.0, 115.0, 1175.0, 115.0, 1175.0, 199.0, 1102.0, 199.0, 1102.0, + 115.0 + ] + ], + "area": 6132.0, + "bbox": [1102.0, 115.0, 73.0, 84.0], + "iscrowd": 0 + }, + { + "id": 42, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 619.0, 1348.5, 618.63, 1354.45, 617.51, 1360.31, 615.66, 1365.99, + 613.12, 1371.38, 609.93, 1376.42, 606.13, 1381.02, 601.78, 1385.1, + 596.95, 1388.61, 591.72, 1391.48, 586.18, 1393.68, 580.4, 1395.16, + 574.48, 1395.91, 568.52, 1395.91, 562.6, 1395.16, 556.82, 1393.68, + 551.28, 1391.48, 546.05, 1388.61, 541.22, 1385.1, 536.87, 1381.02, + 533.07, 1376.42, 529.88, 1371.38, 527.34, 1365.99, 525.49, 1360.31, + 524.37, 1354.45, 524.0, 1348.5, 524.37, 1342.55, 525.49, 1336.69, + 527.34, 1331.01, 529.88, 1325.62, 533.07, 1320.58, 536.87, 1315.98, + 541.22, 1311.9, 546.05, 1308.39, 551.28, 1305.52, 556.82, 1303.32, + 562.6, 1301.84, 568.52, 1301.09, 574.48, 1301.09, 580.4, 1301.84, + 586.18, 1303.32, 591.72, 1305.52, 596.95, 1308.39, 601.78, 1311.9, + 606.13, 1315.98, 609.93, 1320.58, 613.12, 1325.62, 615.66, 1331.01, + 617.51, 1336.69, 618.63, 1342.55 + ] + ], + "area": 7083.0, + "bbox": [524.0, 1301.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 43, + "image_id": 8, + "category_id": 3, + "segmentation": [[382.0, 694.0, 349.0, 752.0, 415.0, 752.0]], + "area": 1920.0, + "bbox": [349.0, 694.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 44, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2755.5, 971.0, 2759.32, 970.76, 2763.09, 970.04, 2766.73, 968.86, + 2770.19, 967.23, 2773.43, 965.18, 2776.38, 962.73, 2779.0, 959.94, + 2781.25, 956.84, 2783.1, 953.49, 2784.51, 949.93, 2785.46, 946.22, + 2785.94, 942.42, 2785.94, 938.58, 2785.46, 934.78, 2784.51, 931.07, + 2783.1, 927.51, 2781.25, 924.16, 2779.0, 921.06, 2776.38, 918.27, + 2773.43, 915.82, 2770.19, 913.77, 2766.73, 912.14, 2763.09, 910.96, + 2759.32, 910.24, 2755.5, 910.0, 2751.68, 910.24, 2747.91, 910.96, + 2744.27, 912.14, 2740.81, 913.77, 2737.57, 915.82, 2734.62, 918.27, + 2732.0, 921.06, 2729.75, 924.16, 2727.9, 927.51, 2726.49, 931.07, + 2725.54, 934.78, 2725.06, 938.58, 2725.06, 942.42, 2725.54, 946.22, + 2726.49, 949.93, 2727.9, 953.49, 2729.75, 956.84, 2732.0, 959.94, + 2734.62, 962.73, 2737.57, 965.18, 2740.81, 967.23, 2744.27, 968.86, + 2747.91, 970.04, 2751.68, 970.76 + ] + ], + "area": 2916.0, + "bbox": [2725.06, 910.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 45, + "image_id": 8, + "category_id": 3, + "segmentation": [[2231.5, 2165.0, 2200.0, 2220.0, 2263.0, 2220.0]], + "area": 1739.0, + "bbox": [2200.0, 2165.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 46, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 876.0, 1395.5, 875.71, 1400.07, 874.85, 1404.58, 873.44, 1408.94, + 871.49, 1413.08, 869.03, 1416.95, 866.11, 1420.49, 862.77, 1423.62, + 859.06, 1426.32, 855.04, 1428.53, 850.78, 1430.21, 846.34, 1431.35, + 841.79, 1431.93, 837.21, 1431.93, 832.66, 1431.35, 828.22, 1430.21, + 823.96, 1428.53, 819.94, 1426.32, 816.23, 1423.62, 812.89, 1420.49, + 809.97, 1416.95, 807.51, 1413.08, 805.56, 1408.94, 804.15, 1404.58, + 803.29, 1400.07, 803.0, 1395.5, 803.29, 1390.93, 804.15, 1386.42, + 805.56, 1382.06, 807.51, 1377.92, 809.97, 1374.05, 812.89, 1370.51, + 816.23, 1367.38, 819.94, 1364.68, 823.96, 1362.47, 828.22, 1360.79, + 832.66, 1359.65, 837.21, 1359.07, 841.79, 1359.07, 846.34, 1359.65, + 850.78, 1360.79, 855.04, 1362.47, 859.06, 1364.68, 862.77, 1367.38, + 866.11, 1370.51, 869.03, 1374.05, 871.49, 1377.92, 873.44, 1382.06, + 874.85, 1386.42, 875.71, 1390.93 + ] + ], + "area": 4187.0, + "bbox": [803.0, 1359.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 47, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2120.0, 104.0, 2190.0, 104.0, 2190.0, 199.0, 2120.0, 199.0, 2120.0, + 104.0 + ] + ], + "area": 6650.0, + "bbox": [2120.0, 104.0, 70.0, 95.0], + "iscrowd": 0 + }, + { + "id": 48, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [793.0, 573.0, 875.0, 573.0, 875.0, 671.0, 793.0, 671.0, 793.0, 573.0] + ], + "area": 8036.0, + "bbox": [793.0, 573.0, 82.0, 98.0], + "iscrowd": 0 + }, + { + "id": 49, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3316.0, 1801.0, 3377.0, 1801.0, 3377.0, 1888.0, 3316.0, 1888.0, + 3316.0, 1801.0 + ] + ], + "area": 5307.0, + "bbox": [3316.0, 1801.0, 61.0, 87.0], + "iscrowd": 0 + }, + { + "id": 50, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2245.0, 1009.0, 2316.0, 1009.0, 2316.0, 1074.0, 2245.0, 1074.0, + 2245.0, 1009.0 + ] + ], + "area": 4615.0, + "bbox": [2245.0, 1009.0, 71.0, 65.0], + "iscrowd": 0 + }, + { + "id": 51, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2290.0, 1448.0, 2369.0, 1448.0, 2369.0, 1524.0, 2290.0, 1524.0, + 2290.0, 1448.0 + ] + ], + "area": 6004.0, + "bbox": [2290.0, 1448.0, 79.0, 76.0], + "iscrowd": 0 + }, + { + "id": 52, + "image_id": 8, + "category_id": 3, + "segmentation": [[991.5, 335.0, 952.0, 404.0, 1031.0, 404.0]], + "area": 2734.0, + "bbox": [952.0, 335.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 53, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [233.0, 770.0, 294.0, 770.0, 294.0, 859.0, 233.0, 859.0, 233.0, 770.0] + ], + "area": 5429.0, + "bbox": [233.0, 770.0, 61.0, 89.0], + "iscrowd": 0 + }, + { + "id": 54, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1480.0, 130.0, 1561.0, 130.0, 1561.0, 202.0, 1480.0, 202.0, 1480.0, + 130.0 + ] + ], + "area": 5832.0, + "bbox": [1480.0, 130.0, 81.0, 72.0], + "iscrowd": 0 + }, + { + "id": 55, + "image_id": 8, + "category_id": 3, + "segmentation": [[1120.0, 1977.0, 1081.0, 2045.0, 1159.0, 2045.0]], + "area": 2660.0, + "bbox": [1081.0, 1977.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 56, + "image_id": 8, + "category_id": 3, + "segmentation": [[2939.0, 2903.0, 2902.0, 2968.0, 2976.0, 2968.0]], + "area": 2412.0, + "bbox": [2902.0, 2903.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 57, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1578.0, 2577.0, 1644.0, 2577.0, 1644.0, 2634.0, 1578.0, 2634.0, + 1578.0, 2577.0 + ] + ], + "area": 3762.0, + "bbox": [1578.0, 2577.0, 66.0, 57.0], + "iscrowd": 0 + }, + { + "id": 58, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3044.0, 405.0, 3127.0, 405.0, 3127.0, 460.0, 3044.0, 460.0, 3044.0, + 405.0 + ] + ], + "area": 4565.0, + "bbox": [3044.0, 405.0, 83.0, 55.0], + "iscrowd": 0 + }, + { + "id": 59, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1064.0, 1057.0, 1126.0, 1057.0, 1126.0, 1113.0, 1064.0, 1113.0, + 1064.0, 1057.0 + ] + ], + "area": 3472.0, + "bbox": [1064.0, 1057.0, 62.0, 56.0], + "iscrowd": 0 + }, + { + "id": 60, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [249.0, 119.0, 308.0, 119.0, 308.0, 188.0, 249.0, 188.0, 249.0, 119.0] + ], + "area": 4071.0, + "bbox": [249.0, 119.0, 59.0, 69.0], + "iscrowd": 0 + }, + { + "id": 61, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1291.0, 2040.0, 1370.0, 2040.0, 1370.0, 2103.0, 1291.0, 2103.0, + 1291.0, 2040.0 + ] + ], + "area": 4977.0, + "bbox": [1291.0, 2040.0, 79.0, 63.0], + "iscrowd": 0 + }, + { + "id": 62, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2899.5, 1529.0, 2903.2, 1528.77, 2906.84, 1528.07, 2910.36, 1526.93, + 2913.71, 1525.35, 2916.84, 1523.37, 2919.69, 1521.0, 2922.23, 1518.3, + 2924.41, 1515.31, 2926.19, 1512.06, 2927.56, 1508.62, 2928.48, + 1505.03, 2928.94, 1501.35, 2928.94, 1497.65, 2928.48, 1493.97, + 2927.56, 1490.38, 2926.19, 1486.94, 2924.41, 1483.69, 2922.23, 1480.7, + 2919.69, 1478.0, 2916.84, 1475.63, 2913.71, 1473.65, 2910.36, 1472.07, + 2906.84, 1470.93, 2903.2, 1470.23, 2899.5, 1470.0, 2895.8, 1470.23, + 2892.16, 1470.93, 2888.64, 1472.07, 2885.29, 1473.65, 2882.16, + 1475.63, 2879.31, 1478.0, 2876.77, 1480.7, 2874.59, 1483.69, 2872.81, + 1486.94, 2871.44, 1490.38, 2870.52, 1493.97, 2870.06, 1497.65, + 2870.06, 1501.35, 2870.52, 1505.03, 2871.44, 1508.62, 2872.81, + 1512.06, 2874.59, 1515.31, 2876.77, 1518.3, 2879.31, 1521.0, 2882.16, + 1523.37, 2885.29, 1525.35, 2888.64, 1526.93, 2892.16, 1528.07, 2895.8, + 1528.77 + ] + ], + "area": 2732.0, + "bbox": [2870.06, 1470.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 63, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 985.0, 3009.0, 1080.0, 3009.0, 1080.0, 3064.0, 985.0, 3064.0, 985.0, + 3009.0 + ] + ], + "area": 5225.0, + "bbox": [985.0, 3009.0, 95.0, 55.0], + "iscrowd": 0 + }, + { + "id": 64, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3206.0, 1776.5, 3205.63, 1782.45, 3204.51, 1788.31, 3202.66, 1793.99, + 3200.12, 1799.38, 3196.93, 1804.42, 3193.13, 1809.02, 3188.78, 1813.1, + 3183.95, 1816.61, 3178.72, 1819.48, 3173.18, 1821.68, 3167.4, 1823.16, + 3161.48, 1823.91, 3155.52, 1823.91, 3149.6, 1823.16, 3143.82, 1821.68, + 3138.28, 1819.48, 3133.05, 1816.61, 3128.22, 1813.1, 3123.87, 1809.02, + 3120.07, 1804.42, 3116.88, 1799.38, 3114.34, 1793.99, 3112.49, + 1788.31, 3111.37, 1782.45, 3111.0, 1776.5, 3111.37, 1770.55, 3112.49, + 1764.69, 3114.34, 1759.01, 3116.88, 1753.62, 3120.07, 1748.58, + 3123.87, 1743.98, 3128.22, 1739.9, 3133.05, 1736.39, 3138.28, 1733.52, + 3143.82, 1731.32, 3149.6, 1729.84, 3155.52, 1729.09, 3161.48, 1729.09, + 3167.4, 1729.84, 3173.18, 1731.32, 3178.72, 1733.52, 3183.95, 1736.39, + 3188.78, 1739.9, 3193.13, 1743.98, 3196.93, 1748.58, 3200.12, 1753.62, + 3202.66, 1759.01, 3204.51, 1764.69, 3205.63, 1770.55 + ] + ], + "area": 7083.0, + "bbox": [3111.0, 1729.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 65, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 245.0, 2225.0, 324.0, 2225.0, 324.0, 2290.0, 245.0, 2290.0, 245.0, + 2225.0 + ] + ], + "area": 5135.0, + "bbox": [245.0, 2225.0, 79.0, 65.0], + "iscrowd": 0 + }, + { + "id": 66, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1536.0, 1146.0, 1635.0, 1146.0, 1635.0, 1247.0, 1536.0, 1247.0, + 1536.0, 1146.0 + ] + ], + "area": 9999.0, + "bbox": [1536.0, 1146.0, 99.0, 101.0], + "iscrowd": 0 + }, + { + "id": 67, + "image_id": 8, + "category_id": 3, + "segmentation": [[2229.0, 785.0, 2198.0, 839.0, 2260.0, 839.0]], + "area": 1680.0, + "bbox": [2198.0, 785.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 68, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1064.0, 2230.0, 1148.0, 2230.0, 1148.0, 2297.0, 1064.0, 2297.0, + 1064.0, 2230.0 + ] + ], + "area": 5628.0, + "bbox": [1064.0, 2230.0, 84.0, 67.0], + "iscrowd": 0 + }, + { + "id": 69, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2366.0, 1563.0, 2419.0, 1563.0, 2419.0, 1638.0, 2366.0, 1638.0, + 2366.0, 1563.0 + ] + ], + "area": 3975.0, + "bbox": [2366.0, 1563.0, 53.0, 75.0], + "iscrowd": 0 + }, + { + "id": 70, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1629.0, 837.0, 1700.0, 837.0, 1700.0, 914.0, 1629.0, 914.0, 1629.0, + 837.0 + ] + ], + "area": 5467.0, + "bbox": [1629.0, 837.0, 71.0, 77.0], + "iscrowd": 0 + }, + { + "id": 71, + "image_id": 8, + "category_id": 3, + "segmentation": [[1531.0, 0.0, 1506.0, 20.0, 1556.0, 20.0]], + "area": 500.0, + "bbox": [1506.0, 0.0, 50.0, 20.0], + "iscrowd": 0 + }, + { + "id": 72, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 289.5, 304.0, 295.58, 303.62, 301.56, 302.48, 307.35, 300.59, 312.87, + 298.0, 318.01, 294.74, 322.7, 290.85, 326.87, 286.42, 330.45, 281.49, + 333.38, 276.15, 335.63, 270.49, 337.14, 264.59, 337.9, 258.55, 337.9, + 252.45, 337.14, 246.41, 335.63, 240.51, 333.38, 234.85, 330.45, + 229.51, 326.87, 224.58, 322.7, 220.15, 318.01, 216.26, 312.87, 213.0, + 307.35, 210.41, 301.56, 208.52, 295.58, 207.38, 289.5, 207.0, 283.42, + 207.38, 277.44, 208.52, 271.65, 210.41, 266.13, 213.0, 260.99, 216.26, + 256.3, 220.15, 252.13, 224.58, 248.55, 229.51, 245.62, 234.85, 243.37, + 240.51, 241.86, 246.41, 241.1, 252.45, 241.1, 258.55, 241.86, 264.59, + 243.37, 270.49, 245.62, 276.15, 248.55, 281.49, 252.13, 286.42, 256.3, + 290.85, 260.99, 294.74, 266.13, 298.0, 271.65, 300.59, 277.44, 302.48, + 283.42, 303.62 + ] + ], + "area": 7380.0, + "bbox": [241.1, 207.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 73, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2643.0, 102.5, 2642.63, 108.45, 2641.51, 114.31, 2639.66, 119.99, + 2637.12, 125.38, 2633.93, 130.42, 2630.13, 135.02, 2625.78, 139.1, + 2620.95, 142.61, 2615.72, 145.48, 2610.18, 147.68, 2604.4, 149.16, + 2598.48, 149.91, 2592.52, 149.91, 2586.6, 149.16, 2580.82, 147.68, + 2575.28, 145.48, 2570.05, 142.61, 2565.22, 139.1, 2560.87, 135.02, + 2557.07, 130.42, 2553.88, 125.38, 2551.34, 119.99, 2549.49, 114.31, + 2548.37, 108.45, 2548.0, 102.5, 2548.37, 96.55, 2549.49, 90.69, + 2551.34, 85.01, 2553.88, 79.62, 2557.07, 74.58, 2560.87, 69.98, + 2565.22, 65.9, 2570.05, 62.39, 2575.28, 59.52, 2580.82, 57.32, 2586.6, + 55.84, 2592.52, 55.09, 2598.48, 55.09, 2604.4, 55.84, 2610.18, 57.32, + 2615.72, 59.52, 2620.95, 62.39, 2625.78, 65.9, 2630.13, 69.98, + 2633.93, 74.58, 2637.12, 79.62, 2639.66, 85.01, 2641.51, 90.69, + 2642.63, 96.55 + ] + ], + "area": 7083.0, + "bbox": [2548.0, 55.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 74, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1973.0, 1773.0, 2048.0, 1773.0, 2048.0, 1838.0, 1973.0, 1838.0, + 1973.0, 1773.0 + ] + ], + "area": 4875.0, + "bbox": [1973.0, 1773.0, 75.0, 65.0], + "iscrowd": 0 + }, + { + "id": 75, + "image_id": 8, + "category_id": 3, + "segmentation": [[2996.5, 3168.0, 2948.0, 3253.0, 3045.0, 3253.0]], + "area": 4129.0, + "bbox": [2948.0, 3168.0, 97.0, 85.0], + "iscrowd": 0 + }, + { + "id": 76, + "image_id": 8, + "category_id": 3, + "segmentation": [[547.0, 1586.0, 502.0, 1665.0, 592.0, 1665.0]], + "area": 3564.0, + "bbox": [502.0, 1586.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 77, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2046.0, 2341.0, 2105.0, 2341.0, 2105.0, 2392.0, 2046.0, 2392.0, + 2046.0, 2341.0 + ] + ], + "area": 3009.0, + "bbox": [2046.0, 2341.0, 59.0, 51.0], + "iscrowd": 0 + }, + { + "id": 78, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 373.0, 2843.0, 448.0, 2843.0, 448.0, 2924.0, 373.0, 2924.0, 373.0, + 2843.0 + ] + ], + "area": 6075.0, + "bbox": [373.0, 2843.0, 75.0, 81.0], + "iscrowd": 0 + }, + { + "id": 79, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1242.0, 620.0, 1303.0, 620.0, 1303.0, 679.0, 1242.0, 679.0, 1242.0, + 620.0 + ] + ], + "area": 3599.0, + "bbox": [1242.0, 620.0, 61.0, 59.0], + "iscrowd": 0 + }, + { + "id": 80, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1466.0, 1412.0, 1545.0, 1412.0, 1545.0, 1509.0, 1466.0, 1509.0, + 1466.0, 1412.0 + ] + ], + "area": 7663.0, + "bbox": [1466.0, 1412.0, 79.0, 97.0], + "iscrowd": 0 + }, + { + "id": 81, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1606.5, 266.0, 1611.83, 265.66, 1617.07, 264.66, 1622.15, 263.02, + 1626.97, 260.74, 1631.48, 257.88, 1635.59, 254.48, 1639.25, 250.59, + 1642.38, 246.27, 1644.96, 241.6, 1646.92, 236.63, 1648.25, 231.46, + 1648.92, 226.17, 1648.92, 220.83, 1648.25, 215.54, 1646.92, 210.37, + 1644.96, 205.4, 1642.38, 200.73, 1639.25, 196.41, 1635.59, 192.52, + 1631.48, 189.12, 1626.97, 186.26, 1622.15, 183.98, 1617.07, 182.34, + 1611.83, 181.34, 1606.5, 181.0, 1601.17, 181.34, 1595.93, 182.34, + 1590.85, 183.98, 1586.03, 186.26, 1581.52, 189.12, 1577.41, 192.52, + 1573.75, 196.41, 1570.62, 200.73, 1568.04, 205.4, 1566.08, 210.37, + 1564.75, 215.54, 1564.08, 220.83, 1564.08, 226.17, 1564.75, 231.46, + 1566.08, 236.63, 1568.04, 241.6, 1570.62, 246.27, 1573.75, 250.59, + 1577.41, 254.48, 1581.52, 257.88, 1586.03, 260.74, 1590.85, 263.02, + 1595.93, 264.66, 1601.17, 265.66 + ] + ], + "area": 5651.0, + "bbox": [1564.08, 181.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 82, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2384.5, 424.0, 2389.95, 423.66, 2395.32, 422.63, 2400.51, 420.95, + 2405.46, 418.62, 2410.07, 415.69, 2414.28, 412.21, 2418.02, 408.23, + 2421.23, 403.81, 2423.86, 399.02, 2425.87, 393.94, 2427.23, 388.65, + 2427.91, 383.23, 2427.91, 377.77, 2427.23, 372.35, 2425.87, 367.06, + 2423.86, 361.98, 2421.23, 357.19, 2418.02, 352.77, 2414.28, 348.79, + 2410.07, 345.31, 2405.46, 342.38, 2400.51, 340.05, 2395.32, 338.37, + 2389.95, 337.34, 2384.5, 337.0, 2379.05, 337.34, 2373.68, 338.37, + 2368.49, 340.05, 2363.54, 342.38, 2358.93, 345.31, 2354.72, 348.79, + 2350.98, 352.77, 2347.77, 357.19, 2345.14, 361.98, 2343.13, 367.06, + 2341.77, 372.35, 2341.09, 377.77, 2341.09, 383.23, 2341.77, 388.65, + 2343.13, 393.94, 2345.14, 399.02, 2347.77, 403.81, 2350.98, 408.23, + 2354.72, 412.21, 2358.93, 415.69, 2363.54, 418.62, 2368.49, 420.95, + 2373.68, 422.63, 2379.05, 423.66 + ] + ], + "area": 5930.0, + "bbox": [2341.09, 337.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 83, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1292.0, 3390.0, 1389.0, 3390.0, 1389.0, 3484.0, 1292.0, 3484.0, + 1292.0, 3390.0 + ] + ], + "area": 9118.0, + "bbox": [1292.0, 3390.0, 97.0, 94.0], + "iscrowd": 0 + }, + { + "id": 84, + "image_id": 8, + "category_id": 3, + "segmentation": [[1635.5, 1870.0, 1602.0, 1929.0, 1669.0, 1929.0]], + "area": 1985.0, + "bbox": [1602.0, 1870.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 85, + "image_id": 8, + "category_id": 3, + "segmentation": [[209.5, 1735.0, 179.0, 1788.0, 240.0, 1788.0]], + "area": 1623.0, + "bbox": [179.0, 1735.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 86, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 350.0, 2657.0, 435.0, 2657.0, 435.0, 2724.0, 350.0, 2724.0, 350.0, + 2657.0 + ] + ], + "area": 5695.0, + "bbox": [350.0, 2657.0, 85.0, 67.0], + "iscrowd": 0 + }, + { + "id": 87, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1087.0, 2885.0, 1156.0, 2885.0, 1156.0, 2948.0, 1087.0, 2948.0, + 1087.0, 2885.0 + ] + ], + "area": 4347.0, + "bbox": [1087.0, 2885.0, 69.0, 63.0], + "iscrowd": 0 + }, + { + "id": 88, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 830.5, 2306.0, 834.95, 2305.72, 839.33, 2304.88, 843.57, 2303.51, + 847.6, 2301.61, 851.37, 2299.22, 854.8, 2296.38, 857.85, 2293.13, + 860.47, 2289.52, 862.62, 2285.62, 864.26, 2281.47, 865.37, 2277.15, + 865.93, 2272.73, 865.93, 2268.27, 865.37, 2263.85, 864.26, 2259.53, + 862.62, 2255.38, 860.47, 2251.48, 857.85, 2247.87, 854.8, 2244.62, + 851.37, 2241.78, 847.6, 2239.39, 843.57, 2237.49, 839.33, 2236.12, + 834.95, 2235.28, 830.5, 2235.0, 826.05, 2235.28, 821.67, 2236.12, + 817.43, 2237.49, 813.4, 2239.39, 809.63, 2241.78, 806.2, 2244.62, + 803.15, 2247.87, 800.53, 2251.48, 798.38, 2255.38, 796.74, 2259.53, + 795.63, 2263.85, 795.07, 2268.27, 795.07, 2272.73, 795.63, 2277.15, + 796.74, 2281.47, 798.38, 2285.62, 800.53, 2289.52, 803.15, 2293.13, + 806.2, 2296.38, 809.63, 2299.22, 813.4, 2301.61, 817.43, 2303.51, + 821.67, 2304.88, 826.05, 2305.72 + ] + ], + "area": 3956.0, + "bbox": [795.07, 2235.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 89, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2776.0, 1783.0, 2863.0, 1783.0, 2863.0, 1870.0, 2776.0, 1870.0, + 2776.0, 1783.0 + ] + ], + "area": 7569.0, + "bbox": [2776.0, 1783.0, 87.0, 87.0], + "iscrowd": 0 + }, + { + "id": 90, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2759.0, 3351.0, 2844.0, 3351.0, 2844.0, 3418.0, 2759.0, 3418.0, + 2759.0, 3351.0 + ] + ], + "area": 5695.0, + "bbox": [2759.0, 3351.0, 85.0, 67.0], + "iscrowd": 0 + }, + { + "id": 91, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [126.0, 933.0, 205.0, 933.0, 205.0, 1010.0, 126.0, 1010.0, 126.0, 933.0] + ], + "area": 6083.0, + "bbox": [126.0, 933.0, 79.0, 77.0], + "iscrowd": 0 + }, + { + "id": 92, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2917.0, 698.0, 2978.0, 698.0, 2978.0, 758.0, 2917.0, 758.0, 2917.0, + 698.0 + ] + ], + "area": 3660.0, + "bbox": [2917.0, 698.0, 61.0, 60.0], + "iscrowd": 0 + }, + { + "id": 93, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1617.0, 2444.0, 1680.0, 2444.0, 1680.0, 2519.0, 1617.0, 2519.0, + 1617.0, 2444.0 + ] + ], + "area": 4725.0, + "bbox": [1617.0, 2444.0, 63.0, 75.0], + "iscrowd": 0 + }, + { + "id": 94, + "image_id": 8, + "category_id": 3, + "segmentation": [[3035.5, 481.0, 3005.0, 534.0, 3066.0, 534.0]], + "area": 1623.0, + "bbox": [3005.0, 481.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 95, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1494.0, 3399.5, 1493.75, 3403.45, 1493.01, 3407.33, 1491.79, 3411.1, + 1490.1, 3414.68, 1487.98, 3418.02, 1485.46, 3421.06, 1482.58, 3423.77, + 1479.38, 3426.1, 1475.91, 3428.0, 1472.23, 3429.46, 1468.4, 3430.44, + 1464.48, 3430.94, 1460.52, 3430.94, 1456.6, 3430.44, 1452.77, 3429.46, + 1449.09, 3428.0, 1445.62, 3426.1, 1442.42, 3423.77, 1439.54, 3421.06, + 1437.02, 3418.02, 1434.9, 3414.68, 1433.21, 3411.1, 1431.99, 3407.33, + 1431.25, 3403.45, 1431.0, 3399.5, 1431.25, 3395.55, 1431.99, 3391.67, + 1433.21, 3387.9, 1434.9, 3384.32, 1437.02, 3380.98, 1439.54, 3377.94, + 1442.42, 3375.23, 1445.62, 3372.9, 1449.09, 3371.0, 1452.77, 3369.54, + 1456.6, 3368.56, 1460.52, 3368.06, 1464.48, 3368.06, 1468.4, 3368.56, + 1472.23, 3369.54, 1475.91, 3371.0, 1479.38, 3372.9, 1482.58, 3375.23, + 1485.46, 3377.94, 1487.98, 3380.98, 1490.1, 3384.32, 1491.79, 3387.9, + 1493.01, 3391.67, 1493.75, 3395.55 + ] + ], + "area": 3122.0, + "bbox": [1431.0, 3368.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 96, + "image_id": 8, + "category_id": 3, + "segmentation": [[2740.0, 3123.0, 2705.0, 3184.0, 2775.0, 3184.0]], + "area": 2142.0, + "bbox": [2705.0, 3123.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 97, + "image_id": 8, + "category_id": 3, + "segmentation": [[485.5, 3113.0, 438.0, 3196.0, 533.0, 3196.0]], + "area": 3952.0, + "bbox": [438.0, 3113.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 98, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2194.0, 1937.5, 2193.63, 1943.45, 2192.51, 1949.31, 2190.66, 1954.99, + 2188.12, 1960.38, 2184.93, 1965.42, 2181.13, 1970.02, 2176.78, 1974.1, + 2171.95, 1977.61, 2166.72, 1980.48, 2161.18, 1982.68, 2155.4, 1984.16, + 2149.48, 1984.91, 2143.52, 1984.91, 2137.6, 1984.16, 2131.82, 1982.68, + 2126.28, 1980.48, 2121.05, 1977.61, 2116.22, 1974.1, 2111.87, 1970.02, + 2108.07, 1965.42, 2104.88, 1960.38, 2102.34, 1954.99, 2100.49, + 1949.31, 2099.37, 1943.45, 2099.0, 1937.5, 2099.37, 1931.55, 2100.49, + 1925.69, 2102.34, 1920.01, 2104.88, 1914.62, 2108.07, 1909.58, + 2111.87, 1904.98, 2116.22, 1900.9, 2121.05, 1897.39, 2126.28, 1894.52, + 2131.82, 1892.32, 2137.6, 1890.84, 2143.52, 1890.09, 2149.48, 1890.09, + 2155.4, 1890.84, 2161.18, 1892.32, 2166.72, 1894.52, 2171.95, 1897.39, + 2176.78, 1900.9, 2181.13, 1904.98, 2184.93, 1909.58, 2188.12, 1914.62, + 2190.66, 1920.01, 2192.51, 1925.69, 2193.63, 1931.55 + ] + ], + "area": 7083.0, + "bbox": [2099.0, 1890.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 99, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3310.0, 3246.0, 3360.0, 3246.0, 3360.0, 3335.0, 3310.0, 3335.0, + 3310.0, 3246.0 + ] + ], + "area": 4450.0, + "bbox": [3310.0, 3246.0, 50.0, 89.0], + "iscrowd": 0 + }, + { + "id": 100, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2081.0, 2438.5, 2080.78, 2441.95, 2080.14, 2445.34, 2079.07, 2448.62, + 2077.6, 2451.75, 2075.75, 2454.66, 2073.55, 2457.33, 2071.03, 2459.69, + 2068.24, 2461.72, 2065.21, 2463.38, 2062.0, 2464.65, 2058.65, 2465.51, + 2055.23, 2465.95, 2051.77, 2465.95, 2048.35, 2465.51, 2045.0, 2464.65, + 2041.79, 2463.38, 2038.76, 2461.72, 2035.97, 2459.69, 2033.45, + 2457.33, 2031.25, 2454.66, 2029.4, 2451.75, 2027.93, 2448.62, 2026.86, + 2445.34, 2026.22, 2441.95, 2026.0, 2438.5, 2026.22, 2435.05, 2026.86, + 2431.66, 2027.93, 2428.38, 2029.4, 2425.25, 2031.25, 2422.34, 2033.45, + 2419.67, 2035.97, 2417.31, 2038.76, 2415.28, 2041.79, 2413.62, 2045.0, + 2412.35, 2048.35, 2411.49, 2051.77, 2411.05, 2055.23, 2411.05, + 2058.65, 2411.49, 2062.0, 2412.35, 2065.21, 2413.62, 2068.24, 2415.28, + 2071.03, 2417.31, 2073.55, 2419.67, 2075.75, 2422.34, 2077.6, 2425.25, + 2079.07, 2428.38, 2080.14, 2431.66, 2080.78, 2435.05 + ] + ], + "area": 2375.0, + "bbox": [2026.0, 2411.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 101, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2242.0, 566.0, 2335.0, 566.0, 2335.0, 639.0, 2242.0, 639.0, 2242.0, + 566.0 + ] + ], + "area": 6789.0, + "bbox": [2242.0, 566.0, 93.0, 73.0], + "iscrowd": 0 + }, + { + "id": 102, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1896.5, 746.0, 1900.32, 745.76, 1904.09, 745.04, 1907.73, 743.86, + 1911.19, 742.23, 1914.43, 740.18, 1917.38, 737.73, 1920.0, 734.94, + 1922.25, 731.84, 1924.1, 728.49, 1925.51, 724.93, 1926.46, 721.22, + 1926.94, 717.42, 1926.94, 713.58, 1926.46, 709.78, 1925.51, 706.07, + 1924.1, 702.51, 1922.25, 699.16, 1920.0, 696.06, 1917.38, 693.27, + 1914.43, 690.82, 1911.19, 688.77, 1907.73, 687.14, 1904.09, 685.96, + 1900.32, 685.24, 1896.5, 685.0, 1892.68, 685.24, 1888.91, 685.96, + 1885.27, 687.14, 1881.81, 688.77, 1878.57, 690.82, 1875.62, 693.27, + 1873.0, 696.06, 1870.75, 699.16, 1868.9, 702.51, 1867.49, 706.07, + 1866.54, 709.78, 1866.06, 713.58, 1866.06, 717.42, 1866.54, 721.22, + 1867.49, 724.93, 1868.9, 728.49, 1870.75, 731.84, 1873.0, 734.94, + 1875.62, 737.73, 1878.57, 740.18, 1881.81, 742.23, 1885.27, 743.86, + 1888.91, 745.04, 1892.68, 745.76 + ] + ], + "area": 2916.0, + "bbox": [1866.06, 685.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 103, + "image_id": 8, + "category_id": 3, + "segmentation": [[1186.5, 1974.0, 1158.0, 2024.0, 1215.0, 2024.0]], + "area": 1430.0, + "bbox": [1158.0, 1974.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 104, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2633.0, 613.0, 2718.0, 613.0, 2718.0, 686.0, 2633.0, 686.0, 2633.0, + 613.0 + ] + ], + "area": 6205.0, + "bbox": [2633.0, 613.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 105, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3046.0, 1121.0, 3099.0, 1121.0, 3099.0, 1215.0, 3046.0, 1215.0, + 3046.0, 1121.0 + ] + ], + "area": 4982.0, + "bbox": [3046.0, 1121.0, 53.0, 94.0], + "iscrowd": 0 + }, + { + "id": 106, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2521.0, 3065.5, 2520.63, 3071.45, 2519.51, 3077.31, 2517.66, 3082.99, + 2515.12, 3088.38, 2511.93, 3093.42, 2508.13, 3098.02, 2503.78, 3102.1, + 2498.95, 3105.61, 2493.72, 3108.48, 2488.18, 3110.68, 2482.4, 3112.16, + 2476.48, 3112.91, 2470.52, 3112.91, 2464.6, 3112.16, 2458.82, 3110.68, + 2453.28, 3108.48, 2448.05, 3105.61, 2443.22, 3102.1, 2438.87, 3098.02, + 2435.07, 3093.42, 2431.88, 3088.38, 2429.34, 3082.99, 2427.49, + 3077.31, 2426.37, 3071.45, 2426.0, 3065.5, 2426.37, 3059.55, 2427.49, + 3053.69, 2429.34, 3048.01, 2431.88, 3042.62, 2435.07, 3037.58, + 2438.87, 3032.98, 2443.22, 3028.9, 2448.05, 3025.39, 2453.28, 3022.52, + 2458.82, 3020.32, 2464.6, 3018.84, 2470.52, 3018.09, 2476.48, 3018.09, + 2482.4, 3018.84, 2488.18, 3020.32, 2493.72, 3022.52, 2498.95, 3025.39, + 2503.78, 3028.9, 2508.13, 3032.98, 2511.93, 3037.58, 2515.12, 3042.62, + 2517.66, 3048.01, 2519.51, 3053.69, 2520.63, 3059.55 + ] + ], + "area": 7083.0, + "bbox": [2426.0, 3018.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 107, + "image_id": 8, + "category_id": 3, + "segmentation": [[558.0, 1052.0, 528.0, 1105.0, 588.0, 1105.0]], + "area": 1596.0, + "bbox": [528.0, 1052.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 108, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1133.0, 2105.0, 1222.0, 2105.0, 1222.0, 2189.0, 1133.0, 2189.0, + 1133.0, 2105.0 + ] + ], + "area": 7476.0, + "bbox": [1133.0, 2105.0, 89.0, 84.0], + "iscrowd": 0 + }, + { + "id": 109, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2488.0, 1437.0, 2545.0, 1437.0, 2545.0, 1513.0, 2488.0, 1513.0, + 2488.0, 1437.0 + ] + ], + "area": 4332.0, + "bbox": [2488.0, 1437.0, 57.0, 76.0], + "iscrowd": 0 + }, + { + "id": 110, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2318.5, 2834.0, 2321.82, 2833.79, 2325.09, 2833.17, 2328.26, 2832.14, + 2331.27, 2830.72, 2334.08, 2828.94, 2336.64, 2826.82, 2338.92, + 2824.39, 2340.87, 2821.7, 2342.48, 2818.78, 2343.7, 2815.69, 2344.53, + 2812.47, 2344.95, 2809.16, 2344.95, 2805.84, 2344.53, 2802.53, 2343.7, + 2799.31, 2342.48, 2796.22, 2340.87, 2793.3, 2338.92, 2790.61, 2336.64, + 2788.18, 2334.08, 2786.06, 2331.27, 2784.28, 2328.26, 2782.86, + 2325.09, 2781.83, 2321.82, 2781.21, 2318.5, 2781.0, 2315.18, 2781.21, + 2311.91, 2781.83, 2308.74, 2782.86, 2305.73, 2784.28, 2302.92, + 2786.06, 2300.36, 2788.18, 2298.08, 2790.61, 2296.13, 2793.3, 2294.52, + 2796.22, 2293.3, 2799.31, 2292.47, 2802.53, 2292.05, 2805.84, 2292.05, + 2809.16, 2292.47, 2812.47, 2293.3, 2815.69, 2294.52, 2818.78, 2296.13, + 2821.7, 2298.08, 2824.39, 2300.36, 2826.82, 2302.92, 2828.94, 2305.73, + 2830.72, 2308.74, 2832.14, 2311.91, 2833.17, 2315.18, 2833.79 + ] + ], + "area": 2205.0, + "bbox": [2292.05, 2781.0, 52.9, 53.0], + "iscrowd": 0 + }, + { + "id": 111, + "image_id": 8, + "category_id": 3, + "segmentation": [[501.0, 3379.0, 467.0, 3439.0, 535.0, 3439.0]], + "area": 2048.0, + "bbox": [467.0, 3379.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 112, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1214.5, 91.0, 1219.58, 90.68, 1224.57, 89.73, 1229.41, 88.16, 1234.01, + 85.99, 1238.31, 83.27, 1242.22, 80.02, 1245.71, 76.32, 1248.7, 72.2, + 1251.15, 67.74, 1253.02, 63.02, 1254.28, 58.09, 1254.92, 53.04, + 1254.92, 47.96, 1254.28, 42.91, 1253.02, 37.98, 1251.15, 33.26, + 1248.7, 28.8, 1245.71, 24.68, 1242.22, 20.98, 1238.31, 17.73, 1234.01, + 15.01, 1229.41, 12.84, 1224.57, 11.27, 1219.58, 10.32, 1214.5, 10.0, + 1209.42, 10.32, 1204.43, 11.27, 1199.59, 12.84, 1194.99, 15.01, + 1190.69, 17.73, 1186.78, 20.98, 1183.29, 24.68, 1180.3, 28.8, 1177.85, + 33.26, 1175.98, 37.98, 1174.72, 42.91, 1174.08, 47.96, 1174.08, 53.04, + 1174.72, 58.09, 1175.98, 63.02, 1177.85, 67.74, 1180.3, 72.2, 1183.29, + 76.32, 1186.78, 80.02, 1190.69, 83.27, 1194.99, 85.99, 1199.59, 88.16, + 1204.43, 89.73, 1209.42, 90.68 + ] + ], + "area": 5150.0, + "bbox": [1174.08, 10.0, 80.84, 81.0], + "iscrowd": 0 + }, + { + "id": 113, + "image_id": 8, + "category_id": 3, + "segmentation": [[2345.0, 3161.0, 2303.0, 3234.0, 2387.0, 3234.0]], + "area": 3074.0, + "bbox": [2303.0, 3161.0, 84.0, 73.0], + "iscrowd": 0 + }, + { + "id": 114, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 488.0, 2566.0, 567.0, 2566.0, 567.0, 2623.0, 488.0, 2623.0, 488.0, + 2566.0 + ] + ], + "area": 4503.0, + "bbox": [488.0, 2566.0, 79.0, 57.0], + "iscrowd": 0 + }, + { + "id": 115, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 367.0, 1863.0, 434.0, 1863.0, 434.0, 1930.0, 367.0, 1930.0, 367.0, + 1863.0 + ] + ], + "area": 4489.0, + "bbox": [367.0, 1863.0, 67.0, 67.0], + "iscrowd": 0 + }, + { + "id": 116, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 693.0, 1015.0, 765.0, 1015.0, 765.0, 1108.0, 693.0, 1108.0, 693.0, + 1015.0 + ] + ], + "area": 6696.0, + "bbox": [693.0, 1015.0, 72.0, 93.0], + "iscrowd": 0 + }, + { + "id": 117, + "image_id": 8, + "category_id": 3, + "segmentation": [[680.5, 1155.0, 646.0, 1215.0, 715.0, 1215.0]], + "area": 2078.0, + "bbox": [646.0, 1155.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 118, + "image_id": 8, + "category_id": 3, + "segmentation": [[1459.0, 1856.0, 1412.0, 1938.0, 1506.0, 1938.0]], + "area": 3864.0, + "bbox": [1412.0, 1856.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 119, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3410.0, 1954.0, 3477.0, 1954.0, 3477.0, 2005.0, 3410.0, 2005.0, + 3410.0, 1954.0 + ] + ], + "area": 3417.0, + "bbox": [3410.0, 1954.0, 67.0, 51.0], + "iscrowd": 0 + }, + { + "id": 120, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3353.0, 2558.5, 3352.77, 2562.2, 3352.07, 2565.84, 3350.93, 2569.36, + 3349.35, 2572.71, 3347.37, 2575.84, 3345.0, 2578.69, 3342.3, 2581.23, + 3339.31, 2583.41, 3336.06, 2585.19, 3332.62, 2586.56, 3329.03, + 2587.48, 3325.35, 2587.94, 3321.65, 2587.94, 3317.97, 2587.48, + 3314.38, 2586.56, 3310.94, 2585.19, 3307.69, 2583.41, 3304.7, 2581.23, + 3302.0, 2578.69, 3299.63, 2575.84, 3297.65, 2572.71, 3296.07, 2569.36, + 3294.93, 2565.84, 3294.23, 2562.2, 3294.0, 2558.5, 3294.23, 2554.8, + 3294.93, 2551.16, 3296.07, 2547.64, 3297.65, 2544.29, 3299.63, + 2541.16, 3302.0, 2538.31, 3304.7, 2535.77, 3307.69, 2533.59, 3310.94, + 2531.81, 3314.38, 2530.44, 3317.97, 2529.52, 3321.65, 2529.06, + 3325.35, 2529.06, 3329.03, 2529.52, 3332.62, 2530.44, 3336.06, + 2531.81, 3339.31, 2533.59, 3342.3, 2535.77, 3345.0, 2538.31, 3347.37, + 2541.16, 3349.35, 2544.29, 3350.93, 2547.64, 3352.07, 2551.16, + 3352.77, 2554.8 + ] + ], + "area": 2729.0, + "bbox": [3294.0, 2529.06, 59.0, 58.88], + "iscrowd": 0 + }, + { + "id": 121, + "image_id": 8, + "category_id": 3, + "segmentation": [[977.0, 2182.0, 929.0, 2266.0, 1025.0, 2266.0]], + "area": 4032.0, + "bbox": [929.0, 2182.0, 96.0, 84.0], + "iscrowd": 0 + }, + { + "id": 122, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1298.0, 2848.0, 1348.0, 2848.0, 1348.0, 2945.0, 1298.0, 2945.0, + 1298.0, 2848.0 + ] + ], + "area": 4850.0, + "bbox": [1298.0, 2848.0, 50.0, 97.0], + "iscrowd": 0 + }, + { + "id": 123, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 921.0, 2664.0, 988.0, 2664.0, 988.0, 2737.0, 921.0, 2737.0, 921.0, + 2664.0 + ] + ], + "area": 4891.0, + "bbox": [921.0, 2664.0, 67.0, 73.0], + "iscrowd": 0 + }, + { + "id": 124, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3055.0, 2499.0, 3126.0, 2499.0, 3126.0, 2595.0, 3055.0, 2595.0, + 3055.0, 2499.0 + ] + ], + "area": 6816.0, + "bbox": [3055.0, 2499.0, 71.0, 96.0], + "iscrowd": 0 + }, + { + "id": 125, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2527.0, 2853.0, 2620.0, 2853.0, 2620.0, 2945.0, 2527.0, 2945.0, + 2527.0, 2853.0 + ] + ], + "area": 8556.0, + "bbox": [2527.0, 2853.0, 93.0, 92.0], + "iscrowd": 0 + }, + { + "id": 126, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2647.0, 2375.5, 2646.71, 2380.07, 2645.85, 2384.58, 2644.44, 2388.94, + 2642.49, 2393.08, 2640.03, 2396.95, 2637.11, 2400.49, 2633.77, + 2403.62, 2630.06, 2406.32, 2626.04, 2408.53, 2621.78, 2410.21, + 2617.34, 2411.35, 2612.79, 2411.93, 2608.21, 2411.93, 2603.66, + 2411.35, 2599.22, 2410.21, 2594.96, 2408.53, 2590.94, 2406.32, + 2587.23, 2403.62, 2583.89, 2400.49, 2580.97, 2396.95, 2578.51, + 2393.08, 2576.56, 2388.94, 2575.15, 2384.58, 2574.29, 2380.07, 2574.0, + 2375.5, 2574.29, 2370.93, 2575.15, 2366.42, 2576.56, 2362.06, 2578.51, + 2357.92, 2580.97, 2354.05, 2583.89, 2350.51, 2587.23, 2347.38, + 2590.94, 2344.68, 2594.96, 2342.47, 2599.22, 2340.79, 2603.66, + 2339.65, 2608.21, 2339.07, 2612.79, 2339.07, 2617.34, 2339.65, + 2621.78, 2340.79, 2626.04, 2342.47, 2630.06, 2344.68, 2633.77, + 2347.38, 2637.11, 2350.51, 2640.03, 2354.05, 2642.49, 2357.92, + 2644.44, 2362.06, 2645.85, 2366.42, 2646.71, 2370.93 + ] + ], + "area": 4187.0, + "bbox": [2574.0, 2339.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 127, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1668.0, 199.0, 1752.0, 199.0, 1752.0, 279.0, 1668.0, 279.0, 1668.0, + 199.0 + ] + ], + "area": 6720.0, + "bbox": [1668.0, 199.0, 84.0, 80.0], + "iscrowd": 0 + }, + { + "id": 128, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2522.0, 1856.5, 2521.67, 1861.7, 2520.7, 1866.82, 2519.09, 1871.78, + 2516.87, 1876.49, 2514.07, 1880.89, 2510.75, 1884.91, 2506.95, + 1888.48, 2502.74, 1891.54, 2498.17, 1894.05, 2493.32, 1895.97, + 2488.28, 1897.26, 2483.11, 1897.92, 2477.89, 1897.92, 2472.72, + 1897.26, 2467.68, 1895.97, 2462.83, 1894.05, 2458.26, 1891.54, + 2454.05, 1888.48, 2450.25, 1884.91, 2446.93, 1880.89, 2444.13, + 1876.49, 2441.91, 1871.78, 2440.3, 1866.82, 2439.33, 1861.7, 2439.0, + 1856.5, 2439.33, 1851.3, 2440.3, 1846.18, 2441.91, 1841.22, 2444.13, + 1836.51, 2446.93, 1832.11, 2450.25, 1828.09, 2454.05, 1824.52, + 2458.26, 1821.46, 2462.83, 1818.95, 2467.68, 1817.03, 2472.72, + 1815.74, 2477.89, 1815.08, 2483.11, 1815.08, 2488.28, 1815.74, + 2493.32, 1817.03, 2498.17, 1818.95, 2502.74, 1821.46, 2506.95, + 1824.52, 2510.75, 1828.09, 2514.07, 1832.11, 2516.87, 1836.51, + 2519.09, 1841.22, 2520.7, 1846.18, 2521.67, 1851.3 + ] + ], + "area": 5394.0, + "bbox": [2439.0, 1815.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 129, + "image_id": 8, + "category_id": 3, + "segmentation": [[3429.5, 1072.0, 3391.0, 1139.0, 3468.0, 1139.0]], + "area": 2588.0, + "bbox": [3391.0, 1072.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 130, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2146.0, 1194.5, 2145.63, 1200.33, 2144.54, 1206.06, 2142.73, 1211.62, + 2140.25, 1216.9, 2137.12, 1221.83, 2133.4, 1226.33, 2129.14, 1230.33, + 2124.42, 1233.76, 2119.3, 1236.57, 2113.87, 1238.72, 2108.21, 1240.18, + 2102.42, 1240.91, 2096.58, 1240.91, 2090.79, 1240.18, 2085.13, + 1238.72, 2079.7, 1236.57, 2074.58, 1233.76, 2069.86, 1230.33, 2065.6, + 1226.33, 2061.88, 1221.83, 2058.75, 1216.9, 2056.27, 1211.62, 2054.46, + 1206.06, 2053.37, 1200.33, 2053.0, 1194.5, 2053.37, 1188.67, 2054.46, + 1182.94, 2056.27, 1177.38, 2058.75, 1172.1, 2061.88, 1167.17, 2065.6, + 1162.67, 2069.86, 1158.67, 2074.58, 1155.24, 2079.7, 1152.43, 2085.13, + 1150.28, 2090.79, 1148.82, 2096.58, 1148.09, 2102.42, 1148.09, + 2108.21, 1148.82, 2113.87, 1150.28, 2119.3, 1152.43, 2124.42, 1155.24, + 2129.14, 1158.67, 2133.4, 1162.67, 2137.12, 1167.17, 2140.25, 1172.1, + 2142.73, 1177.38, 2144.54, 1182.94, 2145.63, 1188.67 + ] + ], + "area": 6782.0, + "bbox": [2053.0, 1148.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 131, + "image_id": 8, + "category_id": 3, + "segmentation": [[2571.0, 2974.0, 2535.0, 3037.0, 2607.0, 3037.0]], + "area": 2268.0, + "bbox": [2535.0, 2974.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 132, + "image_id": 8, + "category_id": 3, + "segmentation": [[2736.0, 2203.0, 2702.0, 2263.0, 2770.0, 2263.0]], + "area": 2048.0, + "bbox": [2702.0, 2203.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 133, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3191.5, 3474.0, 3195.95, 3473.72, 3200.33, 3472.88, 3204.57, 3471.51, + 3208.6, 3469.61, 3212.37, 3467.22, 3215.8, 3464.38, 3218.85, 3461.13, + 3221.47, 3457.52, 3223.62, 3453.62, 3225.26, 3449.47, 3226.37, + 3445.15, 3226.93, 3440.73, 3226.93, 3436.27, 3226.37, 3431.85, + 3225.26, 3427.53, 3223.62, 3423.38, 3221.47, 3419.48, 3218.85, + 3415.87, 3215.8, 3412.62, 3212.37, 3409.78, 3208.6, 3407.39, 3204.57, + 3405.49, 3200.33, 3404.12, 3195.95, 3403.28, 3191.5, 3403.0, 3187.05, + 3403.28, 3182.67, 3404.12, 3178.43, 3405.49, 3174.4, 3407.39, 3170.63, + 3409.78, 3167.2, 3412.62, 3164.15, 3415.87, 3161.53, 3419.48, 3159.38, + 3423.38, 3157.74, 3427.53, 3156.63, 3431.85, 3156.07, 3436.27, + 3156.07, 3440.73, 3156.63, 3445.15, 3157.74, 3449.47, 3159.38, + 3453.62, 3161.53, 3457.52, 3164.15, 3461.13, 3167.2, 3464.38, 3170.63, + 3467.22, 3174.4, 3469.61, 3178.43, 3471.51, 3182.67, 3472.88, 3187.05, + 3473.72 + ] + ], + "area": 3956.0, + "bbox": [3156.07, 3403.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 134, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 325.0, 2736.0, 416.0, 2736.0, 416.0, 2817.0, 325.0, 2817.0, 325.0, + 2736.0 + ] + ], + "area": 7371.0, + "bbox": [325.0, 2736.0, 91.0, 81.0], + "iscrowd": 0 + }, + { + "id": 135, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 432.0, 1150.0, 503.0, 1150.0, 503.0, 1213.0, 432.0, 1213.0, 432.0, + 1150.0 + ] + ], + "area": 4473.0, + "bbox": [432.0, 1150.0, 71.0, 63.0], + "iscrowd": 0 + }, + { + "id": 136, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 268.0, 1618.0, 349.0, 1618.0, 349.0, 1699.0, 268.0, 1699.0, 268.0, + 1618.0 + ] + ], + "area": 6561.0, + "bbox": [268.0, 1618.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 137, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1067.0, 965.0, 1132.0, 965.0, 1132.0, 1028.0, 1067.0, 1028.0, 1067.0, + 965.0 + ] + ], + "area": 4095.0, + "bbox": [1067.0, 965.0, 65.0, 63.0], + "iscrowd": 0 + }, + { + "id": 138, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2230.0, 601.5, 2229.65, 607.08, 2228.6, 612.57, 2226.88, 617.88, + 2224.5, 622.94, 2221.5, 627.66, 2217.94, 631.96, 2213.87, 635.79, + 2209.34, 639.07, 2204.45, 641.76, 2199.25, 643.82, 2193.84, 645.21, + 2188.29, 645.91, 2182.71, 645.91, 2177.16, 645.21, 2171.75, 643.82, + 2166.55, 641.76, 2161.66, 639.07, 2157.13, 635.79, 2153.06, 631.96, + 2149.5, 627.66, 2146.5, 622.94, 2144.12, 617.88, 2142.4, 612.57, + 2141.35, 607.08, 2141.0, 601.5, 2141.35, 595.92, 2142.4, 590.43, + 2144.12, 585.12, 2146.5, 580.06, 2149.5, 575.34, 2153.06, 571.04, + 2157.13, 567.21, 2161.66, 563.93, 2166.55, 561.24, 2171.75, 559.18, + 2177.16, 557.79, 2182.71, 557.09, 2188.29, 557.09, 2193.84, 557.79, + 2199.25, 559.18, 2204.45, 561.24, 2209.34, 563.93, 2213.87, 567.21, + 2217.94, 571.04, 2221.5, 575.34, 2224.5, 580.06, 2226.88, 585.12, + 2228.6, 590.43, 2229.65, 595.92 + ] + ], + "area": 6208.0, + "bbox": [2141.0, 557.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 139, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1642.0, 46.5, 1641.74, 50.7, 1640.95, 54.83, 1639.65, 58.83, 1637.86, + 62.64, 1635.6, 66.19, 1632.92, 69.43, 1629.85, 72.31, 1626.45, 74.78, + 1622.76, 76.81, 1618.85, 78.36, 1614.78, 79.41, 1610.6, 79.93, 1606.4, + 79.93, 1602.22, 79.41, 1598.15, 78.36, 1594.24, 76.81, 1590.55, 74.78, + 1587.15, 72.31, 1584.08, 69.43, 1581.4, 66.19, 1579.14, 62.64, + 1577.35, 58.83, 1576.05, 54.83, 1575.26, 50.7, 1575.0, 46.5, 1575.26, + 42.3, 1576.05, 38.17, 1577.35, 34.17, 1579.14, 30.36, 1581.4, 26.81, + 1584.08, 23.57, 1587.15, 20.69, 1590.55, 18.22, 1594.24, 16.19, + 1598.15, 14.64, 1602.22, 13.59, 1606.4, 13.07, 1610.6, 13.07, 1614.78, + 13.59, 1618.85, 14.64, 1622.76, 16.19, 1626.45, 18.22, 1629.85, 20.69, + 1632.92, 23.57, 1635.6, 26.81, 1637.86, 30.36, 1639.65, 34.17, + 1640.95, 38.17, 1641.74, 42.3 + ] + ], + "area": 3519.0, + "bbox": [1575.0, 13.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 140, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1702.0, 773.0, 1795.0, 773.0, 1795.0, 872.0, 1702.0, 872.0, 1702.0, + 773.0 + ] + ], + "area": 9207.0, + "bbox": [1702.0, 773.0, 93.0, 99.0], + "iscrowd": 0 + }, + { + "id": 141, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2118.0, 1528.0, 2181.0, 1528.0, 2181.0, 1587.0, 2118.0, 1587.0, + 2118.0, 1528.0 + ] + ], + "area": 3717.0, + "bbox": [2118.0, 1528.0, 63.0, 59.0], + "iscrowd": 0 + }, + { + "id": 142, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3208.0, 575.5, 3207.68, 580.58, 3206.73, 585.57, 3205.16, 590.41, + 3202.99, 595.01, 3200.27, 599.31, 3197.02, 603.22, 3193.32, 606.71, + 3189.2, 609.7, 3184.74, 612.15, 3180.02, 614.02, 3175.09, 615.28, + 3170.04, 615.92, 3164.96, 615.92, 3159.91, 615.28, 3154.98, 614.02, + 3150.26, 612.15, 3145.8, 609.7, 3141.68, 606.71, 3137.98, 603.22, + 3134.73, 599.31, 3132.01, 595.01, 3129.84, 590.41, 3128.27, 585.57, + 3127.32, 580.58, 3127.0, 575.5, 3127.32, 570.42, 3128.27, 565.43, + 3129.84, 560.59, 3132.01, 555.99, 3134.73, 551.69, 3137.98, 547.78, + 3141.68, 544.29, 3145.8, 541.3, 3150.26, 538.85, 3154.98, 536.98, + 3159.91, 535.72, 3164.96, 535.08, 3170.04, 535.08, 3175.09, 535.72, + 3180.02, 536.98, 3184.74, 538.85, 3189.2, 541.3, 3193.32, 544.29, + 3197.02, 547.78, 3200.27, 551.69, 3202.99, 555.99, 3205.16, 560.59, + 3206.73, 565.43, 3207.68, 570.42 + ] + ], + "area": 5149.0, + "bbox": [3127.0, 535.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 143, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1545.0, 749.0, 1641.0, 749.0, 1641.0, 847.0, 1545.0, 847.0, 1545.0, + 749.0 + ] + ], + "area": 9408.0, + "bbox": [1545.0, 749.0, 96.0, 98.0], + "iscrowd": 0 + }, + { + "id": 144, + "image_id": 8, + "category_id": 3, + "segmentation": [[934.5, 1120.0, 909.0, 1165.0, 960.0, 1165.0]], + "area": 1154.0, + "bbox": [909.0, 1120.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 145, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3422.0, 3182.0, 3482.0, 3182.0, 3482.0, 3232.0, 3422.0, 3232.0, + 3422.0, 3182.0 + ] + ], + "area": 3000.0, + "bbox": [3422.0, 3182.0, 60.0, 50.0], + "iscrowd": 0 + }, + { + "id": 146, + "image_id": 8, + "category_id": 3, + "segmentation": [[2436.5, 2088.0, 2397.0, 2157.0, 2476.0, 2157.0]], + "area": 2734.0, + "bbox": [2397.0, 2088.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 147, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2643.0, 519.0, 2734.0, 519.0, 2734.0, 594.0, 2643.0, 594.0, 2643.0, + 519.0 + ] + ], + "area": 6825.0, + "bbox": [2643.0, 519.0, 91.0, 75.0], + "iscrowd": 0 + }, + { + "id": 148, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1222.0, 370.0, 1293.0, 370.0, 1293.0, 451.0, 1222.0, 451.0, 1222.0, + 370.0 + ] + ], + "area": 5751.0, + "bbox": [1222.0, 370.0, 71.0, 81.0], + "iscrowd": 0 + }, + { + "id": 149, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3342.0, 2242.5, 3341.66, 2247.95, 3340.63, 2253.32, 3338.95, 2258.51, + 3336.62, 2263.46, 3333.69, 2268.07, 3330.21, 2272.28, 3326.23, + 2276.02, 3321.81, 2279.23, 3317.02, 2281.86, 3311.94, 2283.87, + 3306.65, 2285.23, 3301.23, 2285.91, 3295.77, 2285.91, 3290.35, + 2285.23, 3285.06, 2283.87, 3279.98, 2281.86, 3275.19, 2279.23, + 3270.77, 2276.02, 3266.79, 2272.28, 3263.31, 2268.07, 3260.38, + 2263.46, 3258.05, 2258.51, 3256.37, 2253.32, 3255.34, 2247.95, 3255.0, + 2242.5, 3255.34, 2237.05, 3256.37, 2231.68, 3258.05, 2226.49, 3260.38, + 2221.54, 3263.31, 2216.93, 3266.79, 2212.72, 3270.77, 2208.98, + 3275.19, 2205.77, 3279.98, 2203.14, 3285.06, 2201.13, 3290.35, + 2199.77, 3295.77, 2199.09, 3301.23, 2199.09, 3306.65, 2199.77, + 3311.94, 2201.13, 3317.02, 2203.14, 3321.81, 2205.77, 3326.23, + 2208.98, 3330.21, 2212.72, 3333.69, 2216.93, 3336.62, 2221.54, + 3338.95, 2226.49, 3340.63, 2231.68, 3341.66, 2237.05 + ] + ], + "area": 5927.0, + "bbox": [3255.0, 2199.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 150, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1091.0, 1764.0, 1180.0, 1764.0, 1180.0, 1838.0, 1091.0, 1838.0, + 1091.0, 1764.0 + ] + ], + "area": 6586.0, + "bbox": [1091.0, 1764.0, 89.0, 74.0], + "iscrowd": 0 + }, + { + "id": 151, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2594.0, 1583.0, 2667.0, 1583.0, 2667.0, 1676.0, 2594.0, 1676.0, + 2594.0, 1583.0 + ] + ], + "area": 6789.0, + "bbox": [2594.0, 1583.0, 73.0, 93.0], + "iscrowd": 0 + }, + { + "id": 152, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1898.0, 344.0, 1965.0, 344.0, 1965.0, 428.0, 1898.0, 428.0, 1898.0, + 344.0 + ] + ], + "area": 5628.0, + "bbox": [1898.0, 344.0, 67.0, 84.0], + "iscrowd": 0 + }, + { + "id": 153, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 575.5, 3135.0, 580.7, 3134.67, 585.82, 3133.7, 590.78, 3132.09, + 595.49, 3129.87, 599.89, 3127.07, 603.91, 3123.75, 607.48, 3119.95, + 610.54, 3115.74, 613.05, 3111.17, 614.97, 3106.32, 616.26, 3101.28, + 616.92, 3096.11, 616.92, 3090.89, 616.26, 3085.72, 614.97, 3080.68, + 613.05, 3075.83, 610.54, 3071.26, 607.48, 3067.05, 603.91, 3063.25, + 599.89, 3059.93, 595.49, 3057.13, 590.78, 3054.91, 585.82, 3053.3, + 580.7, 3052.33, 575.5, 3052.0, 570.3, 3052.33, 565.18, 3053.3, 560.22, + 3054.91, 555.51, 3057.13, 551.11, 3059.93, 547.09, 3063.25, 543.52, + 3067.05, 540.46, 3071.26, 537.95, 3075.83, 536.03, 3080.68, 534.74, + 3085.72, 534.08, 3090.89, 534.08, 3096.11, 534.74, 3101.28, 536.03, + 3106.32, 537.95, 3111.17, 540.46, 3115.74, 543.52, 3119.95, 547.09, + 3123.75, 551.11, 3127.07, 555.51, 3129.87, 560.22, 3132.09, 565.18, + 3133.7, 570.3, 3134.67 + ] + ], + "area": 5392.0, + "bbox": [534.08, 3052.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 154, + "image_id": 8, + "category_id": 3, + "segmentation": [[1939.0, 197.0, 1908.0, 251.0, 1970.0, 251.0]], + "area": 1680.0, + "bbox": [1908.0, 197.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 155, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2691.0, 1060.5, 2690.8, 1063.7, 2690.2, 1066.84, 2689.21, 1069.89, + 2687.85, 1072.78, 2686.13, 1075.49, 2684.09, 1077.96, 2681.75, + 1080.15, 2679.16, 1082.03, 2676.36, 1083.57, 2673.38, 1084.75, + 2670.28, 1085.55, 2667.1, 1085.95, 2663.9, 1085.95, 2660.72, 1085.55, + 2657.62, 1084.75, 2654.64, 1083.57, 2651.84, 1082.03, 2649.25, + 1080.15, 2646.91, 1077.96, 2644.87, 1075.49, 2643.15, 1072.78, + 2641.79, 1069.89, 2640.8, 1066.84, 2640.2, 1063.7, 2640.0, 1060.5, + 2640.2, 1057.3, 2640.8, 1054.16, 2641.79, 1051.11, 2643.15, 1048.22, + 2644.87, 1045.51, 2646.91, 1043.04, 2649.25, 1040.85, 2651.84, + 1038.97, 2654.64, 1037.43, 2657.62, 1036.25, 2660.72, 1035.45, 2663.9, + 1035.05, 2667.1, 1035.05, 2670.28, 1035.45, 2673.38, 1036.25, 2676.36, + 1037.43, 2679.16, 1038.97, 2681.75, 1040.85, 2684.09, 1043.04, + 2686.13, 1045.51, 2687.85, 1048.22, 2689.21, 1051.11, 2690.2, 1054.16, + 2690.8, 1057.3 + ] + ], + "area": 2037.0, + "bbox": [2640.0, 1035.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 156, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1803.0, 1889.0, 1870.0, 1889.0, 1870.0, 1966.0, 1803.0, 1966.0, + 1803.0, 1889.0 + ] + ], + "area": 5159.0, + "bbox": [1803.0, 1889.0, 67.0, 77.0], + "iscrowd": 0 + }, + { + "id": 157, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2791.0, 1531.5, 2790.8, 1534.7, 2790.2, 1537.84, 2789.21, 1540.89, + 2787.85, 1543.78, 2786.13, 1546.49, 2784.09, 1548.96, 2781.75, + 1551.15, 2779.16, 1553.03, 2776.36, 1554.57, 2773.38, 1555.75, + 2770.28, 1556.55, 2767.1, 1556.95, 2763.9, 1556.95, 2760.72, 1556.55, + 2757.62, 1555.75, 2754.64, 1554.57, 2751.84, 1553.03, 2749.25, + 1551.15, 2746.91, 1548.96, 2744.87, 1546.49, 2743.15, 1543.78, + 2741.79, 1540.89, 2740.8, 1537.84, 2740.2, 1534.7, 2740.0, 1531.5, + 2740.2, 1528.3, 2740.8, 1525.16, 2741.79, 1522.11, 2743.15, 1519.22, + 2744.87, 1516.51, 2746.91, 1514.04, 2749.25, 1511.85, 2751.84, + 1509.97, 2754.64, 1508.43, 2757.62, 1507.25, 2760.72, 1506.45, 2763.9, + 1506.05, 2767.1, 1506.05, 2770.28, 1506.45, 2773.38, 1507.25, 2776.36, + 1508.43, 2779.16, 1509.97, 2781.75, 1511.85, 2784.09, 1514.04, + 2786.13, 1516.51, 2787.85, 1519.22, 2789.21, 1522.11, 2790.2, 1525.16, + 2790.8, 1528.3 + ] + ], + "area": 2037.0, + "bbox": [2740.0, 1506.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 158, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1853.0, 2393.0, 1950.0, 2393.0, 1950.0, 2490.0, 1853.0, 2490.0, + 1853.0, 2393.0 + ] + ], + "area": 9409.0, + "bbox": [1853.0, 2393.0, 97.0, 97.0], + "iscrowd": 0 + }, + { + "id": 159, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2081.0, 1948.5, 2080.76, 1952.32, 2080.04, 1956.09, 2078.86, 1959.73, + 2077.23, 1963.19, 2075.18, 1966.43, 2072.73, 1969.38, 2069.94, 1972.0, + 2066.84, 1974.25, 2063.49, 1976.1, 2059.93, 1977.51, 2056.22, 1978.46, + 2052.42, 1978.94, 2048.58, 1978.94, 2044.78, 1978.46, 2041.07, + 1977.51, 2037.51, 1976.1, 2034.16, 1974.25, 2031.06, 1972.0, 2028.27, + 1969.38, 2025.82, 1966.43, 2023.77, 1963.19, 2022.14, 1959.73, + 2020.96, 1956.09, 2020.24, 1952.32, 2020.0, 1948.5, 2020.24, 1944.68, + 2020.96, 1940.91, 2022.14, 1937.27, 2023.77, 1933.81, 2025.82, + 1930.57, 2028.27, 1927.62, 2031.06, 1925.0, 2034.16, 1922.75, 2037.51, + 1920.9, 2041.07, 1919.49, 2044.78, 1918.54, 2048.58, 1918.06, 2052.42, + 1918.06, 2056.22, 1918.54, 2059.93, 1919.49, 2063.49, 1920.9, 2066.84, + 1922.75, 2069.94, 1925.0, 2072.73, 1927.62, 2075.18, 1930.57, 2077.23, + 1933.81, 2078.86, 1937.27, 2080.04, 1940.91, 2080.76, 1944.68 + ] + ], + "area": 2915.0, + "bbox": [2020.0, 1918.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 160, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [1982.0, 39.0, 2083.0, 39.0, 2083.0, 138.0, 1982.0, 138.0, 1982.0, 39.0] + ], + "area": 9999.0, + "bbox": [1982.0, 39.0, 101.0, 99.0], + "iscrowd": 0 + }, + { + "id": 161, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 905.0, 2061.0, 958.0, 2061.0, 958.0, 2114.0, 905.0, 2114.0, 905.0, + 2061.0 + ] + ], + "area": 2809.0, + "bbox": [905.0, 2061.0, 53.0, 53.0], + "iscrowd": 0 + }, + { + "id": 162, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1176.0, 1619.0, 1243.0, 1619.0, 1243.0, 1688.0, 1176.0, 1688.0, + 1176.0, 1619.0 + ] + ], + "area": 4623.0, + "bbox": [1176.0, 1619.0, 67.0, 69.0], + "iscrowd": 0 + }, + { + "id": 163, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2894.0, 1345.5, 2893.74, 1349.7, 2892.95, 1353.83, 2891.65, 1357.83, + 2889.86, 1361.64, 2887.6, 1365.19, 2884.92, 1368.43, 2881.85, 1371.31, + 2878.45, 1373.78, 2874.76, 1375.81, 2870.85, 1377.36, 2866.78, + 1378.41, 2862.6, 1378.93, 2858.4, 1378.93, 2854.22, 1378.41, 2850.15, + 1377.36, 2846.24, 1375.81, 2842.55, 1373.78, 2839.15, 1371.31, + 2836.08, 1368.43, 2833.4, 1365.19, 2831.14, 1361.64, 2829.35, 1357.83, + 2828.05, 1353.83, 2827.26, 1349.7, 2827.0, 1345.5, 2827.26, 1341.3, + 2828.05, 1337.17, 2829.35, 1333.17, 2831.14, 1329.36, 2833.4, 1325.81, + 2836.08, 1322.57, 2839.15, 1319.69, 2842.55, 1317.22, 2846.24, + 1315.19, 2850.15, 1313.64, 2854.22, 1312.59, 2858.4, 1312.07, 2862.6, + 1312.07, 2866.78, 1312.59, 2870.85, 1313.64, 2874.76, 1315.19, + 2878.45, 1317.22, 2881.85, 1319.69, 2884.92, 1322.57, 2887.6, 1325.81, + 2889.86, 1329.36, 2891.65, 1333.17, 2892.95, 1337.17, 2893.74, 1341.3 + ] + ], + "area": 3519.0, + "bbox": [2827.0, 1312.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 164, + "image_id": 8, + "category_id": 3, + "segmentation": [[1105.5, 519.0, 1071.0, 579.0, 1140.0, 579.0]], + "area": 2078.0, + "bbox": [1071.0, 519.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 165, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1116.0, 306.0, 1179.0, 306.0, 1179.0, 378.0, 1116.0, 378.0, 1116.0, + 306.0 + ] + ], + "area": 4536.0, + "bbox": [1116.0, 306.0, 63.0, 72.0], + "iscrowd": 0 + }, + { + "id": 166, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1991.0, 3051.5, 1990.63, 3057.45, 1989.51, 3063.31, 1987.66, 3068.99, + 1985.12, 3074.38, 1981.93, 3079.42, 1978.13, 3084.02, 1973.78, 3088.1, + 1968.95, 3091.61, 1963.72, 3094.48, 1958.18, 3096.68, 1952.4, 3098.16, + 1946.48, 3098.91, 1940.52, 3098.91, 1934.6, 3098.16, 1928.82, 3096.68, + 1923.28, 3094.48, 1918.05, 3091.61, 1913.22, 3088.1, 1908.87, 3084.02, + 1905.07, 3079.42, 1901.88, 3074.38, 1899.34, 3068.99, 1897.49, + 3063.31, 1896.37, 3057.45, 1896.0, 3051.5, 1896.37, 3045.55, 1897.49, + 3039.69, 1899.34, 3034.01, 1901.88, 3028.62, 1905.07, 3023.58, + 1908.87, 3018.98, 1913.22, 3014.9, 1918.05, 3011.39, 1923.28, 3008.52, + 1928.82, 3006.32, 1934.6, 3004.84, 1940.52, 3004.09, 1946.48, 3004.09, + 1952.4, 3004.84, 1958.18, 3006.32, 1963.72, 3008.52, 1968.95, 3011.39, + 1973.78, 3014.9, 1978.13, 3018.98, 1981.93, 3023.58, 1985.12, 3028.62, + 1987.66, 3034.01, 1989.51, 3039.69, 1990.63, 3045.55 + ] + ], + "area": 7083.0, + "bbox": [1896.0, 3004.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 167, + "image_id": 8, + "category_id": 3, + "segmentation": [[3195.5, 2669.0, 3151.0, 2747.0, 3240.0, 2747.0]], + "area": 3477.0, + "bbox": [3151.0, 2669.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 168, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 614.0, 2718.0, 677.0, 2718.0, 677.0, 2775.0, 614.0, 2775.0, 614.0, + 2718.0 + ] + ], + "area": 3591.0, + "bbox": [614.0, 2718.0, 63.0, 57.0], + "iscrowd": 0 + }, + { + "id": 169, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3168.0, 3112.5, 3167.78, 3116.07, 3167.1, 3119.59, 3166.0, 3122.99, + 3164.47, 3126.23, 3162.56, 3129.25, 3160.28, 3132.01, 3157.67, + 3134.46, 3154.77, 3136.56, 3151.63, 3138.29, 3148.31, 3139.61, + 3144.84, 3140.5, 3141.29, 3140.94, 3137.71, 3140.94, 3134.16, 3140.5, + 3130.69, 3139.61, 3127.37, 3138.29, 3124.23, 3136.56, 3121.33, + 3134.46, 3118.72, 3132.01, 3116.44, 3129.25, 3114.53, 3126.23, 3113.0, + 3122.99, 3111.9, 3119.59, 3111.22, 3116.07, 3111.0, 3112.5, 3111.22, + 3108.93, 3111.9, 3105.41, 3113.0, 3102.01, 3114.53, 3098.77, 3116.44, + 3095.75, 3118.72, 3092.99, 3121.33, 3090.54, 3124.23, 3088.44, + 3127.37, 3086.71, 3130.69, 3085.39, 3134.16, 3084.5, 3137.71, 3084.06, + 3141.29, 3084.06, 3144.84, 3084.5, 3148.31, 3085.39, 3151.63, 3086.71, + 3154.77, 3088.44, 3157.67, 3090.54, 3160.28, 3092.99, 3162.56, + 3095.75, 3164.47, 3098.77, 3166.0, 3102.01, 3167.1, 3105.41, 3167.78, + 3108.93 + ] + ], + "area": 2548.0, + "bbox": [3111.0, 3084.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 170, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1839.0, 958.0, 1936.0, 958.0, 1936.0, 1029.0, 1839.0, 1029.0, 1839.0, + 958.0 + ] + ], + "area": 6887.0, + "bbox": [1839.0, 958.0, 97.0, 71.0], + "iscrowd": 0 + }, + { + "id": 171, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 582.0, 1013.0, 648.0, 1013.0, 648.0, 1095.0, 582.0, 1095.0, 582.0, + 1013.0 + ] + ], + "area": 5412.0, + "bbox": [582.0, 1013.0, 66.0, 82.0], + "iscrowd": 0 + }, + { + "id": 172, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1517.0, 1524.0, 1578.0, 1524.0, 1578.0, 1617.0, 1517.0, 1617.0, + 1517.0, 1524.0 + ] + ], + "area": 5673.0, + "bbox": [1517.0, 1524.0, 61.0, 93.0], + "iscrowd": 0 + }, + { + "id": 173, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [25.0, 413.0, 113.0, 413.0, 113.0, 476.0, 25.0, 476.0, 25.0, 413.0] + ], + "area": 5544.0, + "bbox": [25.0, 413.0, 88.0, 63.0], + "iscrowd": 0 + }, + { + "id": 174, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1176.0, 993.0, 1259.0, 993.0, 1259.0, 1078.0, 1176.0, 1078.0, 1176.0, + 993.0 + ] + ], + "area": 7055.0, + "bbox": [1176.0, 993.0, 83.0, 85.0], + "iscrowd": 0 + }, + { + "id": 175, + "image_id": 8, + "category_id": 3, + "segmentation": [[2230.0, 2484.0, 2195.0, 2545.0, 2265.0, 2545.0]], + "area": 2142.0, + "bbox": [2195.0, 2484.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 176, + "image_id": 8, + "category_id": 3, + "segmentation": [[1896.5, 1754.0, 1861.0, 1816.0, 1932.0, 1816.0]], + "area": 2209.0, + "bbox": [1861.0, 1754.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 177, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 201.0, 2492.0, 267.0, 2492.0, 267.0, 2588.0, 201.0, 2588.0, 201.0, + 2492.0 + ] + ], + "area": 6336.0, + "bbox": [201.0, 2492.0, 66.0, 96.0], + "iscrowd": 0 + }, + { + "id": 178, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2825.0, 840.5, 2824.64, 846.2, 2823.57, 851.82, 2821.8, 857.25, + 2819.37, 862.42, 2816.31, 867.24, 2812.67, 871.65, 2808.5, 875.56, + 2803.88, 878.92, 2798.87, 881.67, 2793.56, 883.77, 2788.03, 885.19, + 2782.36, 885.91, 2776.64, 885.91, 2770.97, 885.19, 2765.44, 883.77, + 2760.13, 881.67, 2755.12, 878.92, 2750.5, 875.56, 2746.33, 871.65, + 2742.69, 867.24, 2739.63, 862.42, 2737.2, 857.25, 2735.43, 851.82, + 2734.36, 846.2, 2734.0, 840.5, 2734.36, 834.8, 2735.43, 829.18, + 2737.2, 823.75, 2739.63, 818.58, 2742.69, 813.76, 2746.33, 809.35, + 2750.5, 805.44, 2755.12, 802.08, 2760.13, 799.33, 2765.44, 797.23, + 2770.97, 795.81, 2776.64, 795.09, 2782.36, 795.09, 2788.03, 795.81, + 2793.56, 797.23, 2798.87, 799.33, 2803.88, 802.08, 2808.5, 805.44, + 2812.67, 809.35, 2816.31, 813.76, 2819.37, 818.58, 2821.8, 823.75, + 2823.57, 829.18, 2824.64, 834.8 + ] + ], + "area": 6498.0, + "bbox": [2734.0, 795.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 179, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 667.5, 145.0, 673.58, 144.62, 679.56, 143.48, 685.35, 141.59, 690.87, + 139.0, 696.01, 135.74, 700.7, 131.85, 704.87, 127.42, 708.45, 122.49, + 711.38, 117.15, 713.63, 111.49, 715.14, 105.59, 715.9, 99.55, 715.9, + 93.45, 715.14, 87.41, 713.63, 81.51, 711.38, 75.85, 708.45, 70.51, + 704.87, 65.58, 700.7, 61.15, 696.01, 57.26, 690.87, 54.0, 685.35, + 51.41, 679.56, 49.52, 673.58, 48.38, 667.5, 48.0, 661.42, 48.38, + 655.44, 49.52, 649.65, 51.41, 644.13, 54.0, 638.99, 57.26, 634.3, + 61.15, 630.13, 65.58, 626.55, 70.51, 623.62, 75.85, 621.37, 81.51, + 619.86, 87.41, 619.1, 93.45, 619.1, 99.55, 619.86, 105.59, 621.37, + 111.49, 623.62, 117.15, 626.55, 122.49, 630.13, 127.42, 634.3, 131.85, + 638.99, 135.74, 644.13, 139.0, 649.65, 141.59, 655.44, 143.48, 661.42, + 144.62 + ] + ], + "area": 7380.0, + "bbox": [619.1, 48.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 180, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2789.0, 1336.5, 2788.79, 1339.82, 2788.17, 1343.09, 2787.14, 1346.26, + 2785.72, 1349.27, 2783.94, 1352.08, 2781.82, 1354.64, 2779.39, + 1356.92, 2776.7, 1358.87, 2773.78, 1360.48, 2770.69, 1361.7, 2767.47, + 1362.53, 2764.16, 1362.95, 2760.84, 1362.95, 2757.53, 1362.53, + 2754.31, 1361.7, 2751.22, 1360.48, 2748.3, 1358.87, 2745.61, 1356.92, + 2743.18, 1354.64, 2741.06, 1352.08, 2739.28, 1349.27, 2737.86, + 1346.26, 2736.83, 1343.09, 2736.21, 1339.82, 2736.0, 1336.5, 2736.21, + 1333.18, 2736.83, 1329.91, 2737.86, 1326.74, 2739.28, 1323.73, + 2741.06, 1320.92, 2743.18, 1318.36, 2745.61, 1316.08, 2748.3, 1314.13, + 2751.22, 1312.52, 2754.31, 1311.3, 2757.53, 1310.47, 2760.84, 1310.05, + 2764.16, 1310.05, 2767.47, 1310.47, 2770.69, 1311.3, 2773.78, 1312.52, + 2776.7, 1314.13, 2779.39, 1316.08, 2781.82, 1318.36, 2783.94, 1320.92, + 2785.72, 1323.73, 2787.14, 1326.74, 2788.17, 1329.91, 2788.79, 1333.18 + ] + ], + "area": 2207.0, + "bbox": [2736.0, 1310.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 181, + "image_id": 8, + "category_id": 3, + "segmentation": [[3250.5, 384.0, 3213.0, 450.0, 3288.0, 450.0]], + "area": 2485.0, + "bbox": [3213.0, 384.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 182, + "image_id": 8, + "category_id": 3, + "segmentation": [[1188.5, 489.0, 1148.0, 560.0, 1229.0, 560.0]], + "area": 2881.0, + "bbox": [1148.0, 489.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 183, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1302.0, 3112.0, 1376.0, 3112.0, 1376.0, 3206.0, 1302.0, 3206.0, + 1302.0, 3112.0 + ] + ], + "area": 6956.0, + "bbox": [1302.0, 3112.0, 74.0, 94.0], + "iscrowd": 0 + }, + { + "id": 184, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 480.0, 2958.0, 570.0, 2958.0, 570.0, 3050.0, 480.0, 3050.0, 480.0, + 2958.0 + ] + ], + "area": 8280.0, + "bbox": [480.0, 2958.0, 90.0, 92.0], + "iscrowd": 0 + }, + { + "id": 185, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1756.0, 3360.0, 1807.0, 3360.0, 1807.0, 3420.0, 1756.0, 3420.0, + 1756.0, 3360.0 + ] + ], + "area": 3060.0, + "bbox": [1756.0, 3360.0, 51.0, 60.0], + "iscrowd": 0 + }, + { + "id": 186, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2044.0, 2223.0, 2105.0, 2223.0, 2105.0, 2298.0, 2044.0, 2298.0, + 2044.0, 2223.0 + ] + ], + "area": 4575.0, + "bbox": [2044.0, 2223.0, 61.0, 75.0], + "iscrowd": 0 + }, + { + "id": 187, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1669.0, 2790.0, 1762.0, 2790.0, 1762.0, 2885.0, 1669.0, 2885.0, + 1669.0, 2790.0 + ] + ], + "area": 8835.0, + "bbox": [1669.0, 2790.0, 93.0, 95.0], + "iscrowd": 0 + }, + { + "id": 188, + "image_id": 8, + "category_id": 3, + "segmentation": [[594.5, 2134.0, 562.0, 2191.0, 627.0, 2191.0]], + "area": 1857.0, + "bbox": [562.0, 2134.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 189, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2064.0, 1285.5, 2063.69, 1290.45, 2062.76, 1295.32, 2061.23, 1300.04, + 2059.11, 1304.53, 2056.46, 1308.72, 2053.29, 1312.54, 2049.68, + 1315.94, 2045.67, 1318.85, 2041.32, 1321.24, 2036.71, 1323.07, 2031.9, + 1324.3, 2026.98, 1324.92, 2022.02, 1324.92, 2017.1, 1324.3, 2012.29, + 1323.07, 2007.68, 1321.24, 2003.33, 1318.85, 1999.32, 1315.94, + 1995.71, 1312.54, 1992.54, 1308.72, 1989.89, 1304.53, 1987.77, + 1300.04, 1986.24, 1295.32, 1985.31, 1290.45, 1985.0, 1285.5, 1985.31, + 1280.55, 1986.24, 1275.68, 1987.77, 1270.96, 1989.89, 1266.47, + 1992.54, 1262.28, 1995.71, 1258.46, 1999.32, 1255.06, 2003.33, + 1252.15, 2007.68, 1249.76, 2012.29, 1247.93, 2017.1, 1246.7, 2022.02, + 1246.08, 2026.98, 1246.08, 2031.9, 1246.7, 2036.71, 1247.93, 2041.32, + 1249.76, 2045.67, 1252.15, 2049.68, 1255.06, 2053.29, 1258.46, + 2056.46, 1262.28, 2059.11, 1266.47, 2061.23, 1270.96, 2062.76, + 1275.68, 2063.69, 1280.55 + ] + ], + "area": 4893.0, + "bbox": [1985.0, 1246.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 190, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3209.0, 2170.5, 3208.63, 2176.45, 3207.51, 2182.31, 3205.66, 2187.99, + 3203.12, 2193.38, 3199.93, 2198.42, 3196.13, 2203.02, 3191.78, 2207.1, + 3186.95, 2210.61, 3181.72, 2213.48, 3176.18, 2215.68, 3170.4, 2217.16, + 3164.48, 2217.91, 3158.52, 2217.91, 3152.6, 2217.16, 3146.82, 2215.68, + 3141.28, 2213.48, 3136.05, 2210.61, 3131.22, 2207.1, 3126.87, 2203.02, + 3123.07, 2198.42, 3119.88, 2193.38, 3117.34, 2187.99, 3115.49, + 2182.31, 3114.37, 2176.45, 3114.0, 2170.5, 3114.37, 2164.55, 3115.49, + 2158.69, 3117.34, 2153.01, 3119.88, 2147.62, 3123.07, 2142.58, + 3126.87, 2137.98, 3131.22, 2133.9, 3136.05, 2130.39, 3141.28, 2127.52, + 3146.82, 2125.32, 3152.6, 2123.84, 3158.52, 2123.09, 3164.48, 2123.09, + 3170.4, 2123.84, 3176.18, 2125.32, 3181.72, 2127.52, 3186.95, 2130.39, + 3191.78, 2133.9, 3196.13, 2137.98, 3199.93, 2142.58, 3203.12, 2147.62, + 3205.66, 2153.01, 3207.51, 2158.69, 3208.63, 2164.55 + ] + ], + "area": 7083.0, + "bbox": [3114.0, 2123.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 191, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3017.0, 3339.0, 3098.0, 3339.0, 3098.0, 3416.0, 3017.0, 3416.0, + 3017.0, 3339.0 + ] + ], + "area": 6237.0, + "bbox": [3017.0, 3339.0, 81.0, 77.0], + "iscrowd": 0 + }, + { + "id": 192, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [889.0, 290.0, 958.0, 290.0, 958.0, 346.0, 889.0, 346.0, 889.0, 290.0] + ], + "area": 3864.0, + "bbox": [889.0, 290.0, 69.0, 56.0], + "iscrowd": 0 + }, + { + "id": 193, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3421.0, 1591.5, 3420.74, 1595.7, 3419.95, 1599.83, 3418.65, 1603.83, + 3416.86, 1607.64, 3414.6, 1611.19, 3411.92, 1614.43, 3408.85, 1617.31, + 3405.45, 1619.78, 3401.76, 1621.81, 3397.85, 1623.36, 3393.78, + 1624.41, 3389.6, 1624.93, 3385.4, 1624.93, 3381.22, 1624.41, 3377.15, + 1623.36, 3373.24, 1621.81, 3369.55, 1619.78, 3366.15, 1617.31, + 3363.08, 1614.43, 3360.4, 1611.19, 3358.14, 1607.64, 3356.35, 1603.83, + 3355.05, 1599.83, 3354.26, 1595.7, 3354.0, 1591.5, 3354.26, 1587.3, + 3355.05, 1583.17, 3356.35, 1579.17, 3358.14, 1575.36, 3360.4, 1571.81, + 3363.08, 1568.57, 3366.15, 1565.69, 3369.55, 1563.22, 3373.24, + 1561.19, 3377.15, 1559.64, 3381.22, 1558.59, 3385.4, 1558.07, 3389.6, + 1558.07, 3393.78, 1558.59, 3397.85, 1559.64, 3401.76, 1561.19, + 3405.45, 1563.22, 3408.85, 1565.69, 3411.92, 1568.57, 3414.6, 1571.81, + 3416.86, 1575.36, 3418.65, 1579.17, 3419.95, 1583.17, 3420.74, 1587.3 + ] + ], + "area": 3519.0, + "bbox": [3354.0, 1558.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 194, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1383.0, 3132.0, 1477.0, 3132.0, 1477.0, 3198.0, 1383.0, 3198.0, + 1383.0, 3132.0 + ] + ], + "area": 6204.0, + "bbox": [1383.0, 3132.0, 94.0, 66.0], + "iscrowd": 0 + }, + { + "id": 195, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 653.0, 1317.0, 745.0, 1317.0, 745.0, 1379.0, 653.0, 1379.0, 653.0, + 1317.0 + ] + ], + "area": 5704.0, + "bbox": [653.0, 1317.0, 92.0, 62.0], + "iscrowd": 0 + }, + { + "id": 196, + "image_id": 8, + "category_id": 3, + "segmentation": [[3107.0, 602.0, 3062.0, 681.0, 3152.0, 681.0]], + "area": 3564.0, + "bbox": [3062.0, 602.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 197, + "image_id": 8, + "category_id": 3, + "segmentation": [[145.5, 1100.0, 102.0, 1176.0, 189.0, 1176.0]], + "area": 3315.0, + "bbox": [102.0, 1100.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 198, + "image_id": 8, + "category_id": 3, + "segmentation": [[1833.5, 1395.0, 1789.0, 1473.0, 1878.0, 1473.0]], + "area": 3477.0, + "bbox": [1789.0, 1395.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 199, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1577.0, 2132.0, 1660.0, 2132.0, 1660.0, 2215.0, 1577.0, 2215.0, + 1577.0, 2132.0 + ] + ], + "area": 6889.0, + "bbox": [1577.0, 2132.0, 83.0, 83.0], + "iscrowd": 0 + }, + { + "id": 200, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [12.0, 1979.0, 83.0, 1979.0, 83.0, 2052.0, 12.0, 2052.0, 12.0, 1979.0] + ], + "area": 5183.0, + "bbox": [12.0, 1979.0, 71.0, 73.0], + "iscrowd": 0 + }, + { + "id": 201, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [14.0, 764.0, 101.0, 764.0, 101.0, 821.0, 14.0, 821.0, 14.0, 764.0] + ], + "area": 4959.0, + "bbox": [14.0, 764.0, 87.0, 57.0], + "iscrowd": 0 + }, + { + "id": 202, + "image_id": 8, + "category_id": 3, + "segmentation": [[3106.0, 2336.0, 3076.0, 2389.0, 3136.0, 2389.0]], + "area": 1596.0, + "bbox": [3076.0, 2336.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 203, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2320.0, 1637.0, 2413.0, 1637.0, 2413.0, 1720.0, 2320.0, 1720.0, + 2320.0, 1637.0 + ] + ], + "area": 7719.0, + "bbox": [2320.0, 1637.0, 93.0, 83.0], + "iscrowd": 0 + }, + { + "id": 204, + "image_id": 8, + "category_id": 3, + "segmentation": [[719.0, 1510.0, 687.0, 1566.0, 751.0, 1566.0]], + "area": 1792.0, + "bbox": [687.0, 1510.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 205, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2301.0, 3285.0, 2368.0, 3285.0, 2368.0, 3352.0, 2301.0, 3352.0, + 2301.0, 3285.0 + ] + ], + "area": 4489.0, + "bbox": [2301.0, 3285.0, 67.0, 67.0], + "iscrowd": 0 + }, + { + "id": 206, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3351.0, 3010.0, 3429.0, 3010.0, 3429.0, 3099.0, 3351.0, 3099.0, + 3351.0, 3010.0 + ] + ], + "area": 6942.0, + "bbox": [3351.0, 3010.0, 78.0, 89.0], + "iscrowd": 0 + }, + { + "id": 207, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2075.0, 2103.5, 2074.74, 2107.57, 2073.98, 2111.58, 2072.72, 2115.46, + 2070.98, 2119.16, 2068.79, 2122.6, 2066.19, 2125.75, 2063.22, 2128.54, + 2059.91, 2130.94, 2056.34, 2132.91, 2052.54, 2134.41, 2048.59, + 2135.42, 2044.54, 2135.94, 2040.46, 2135.94, 2036.41, 2135.42, + 2032.46, 2134.41, 2028.66, 2132.91, 2025.09, 2130.94, 2021.78, + 2128.54, 2018.81, 2125.75, 2016.21, 2122.6, 2014.02, 2119.16, 2012.28, + 2115.46, 2011.02, 2111.58, 2010.26, 2107.57, 2010.0, 2103.5, 2010.26, + 2099.43, 2011.02, 2095.42, 2012.28, 2091.54, 2014.02, 2087.84, + 2016.21, 2084.4, 2018.81, 2081.25, 2021.78, 2078.46, 2025.09, 2076.06, + 2028.66, 2074.09, 2032.46, 2072.59, 2036.41, 2071.58, 2040.46, + 2071.06, 2044.54, 2071.06, 2048.59, 2071.58, 2052.54, 2072.59, + 2056.34, 2074.09, 2059.91, 2076.06, 2063.22, 2078.46, 2066.19, + 2081.25, 2068.79, 2084.4, 2070.98, 2087.84, 2072.72, 2091.54, 2073.98, + 2095.42, 2074.74, 2099.43 + ] + ], + "area": 3315.0, + "bbox": [2010.0, 2071.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 208, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 342.0, 3026.5, 341.74, 3030.57, 340.98, 3034.58, 339.72, 3038.46, + 337.98, 3042.16, 335.79, 3045.6, 333.19, 3048.75, 330.22, 3051.54, + 326.91, 3053.94, 323.34, 3055.91, 319.54, 3057.41, 315.59, 3058.42, + 311.54, 3058.94, 307.46, 3058.94, 303.41, 3058.42, 299.46, 3057.41, + 295.66, 3055.91, 292.09, 3053.94, 288.78, 3051.54, 285.81, 3048.75, + 283.21, 3045.6, 281.02, 3042.16, 279.28, 3038.46, 278.02, 3034.58, + 277.26, 3030.57, 277.0, 3026.5, 277.26, 3022.43, 278.02, 3018.42, + 279.28, 3014.54, 281.02, 3010.84, 283.21, 3007.4, 285.81, 3004.25, + 288.78, 3001.46, 292.09, 2999.06, 295.66, 2997.09, 299.46, 2995.59, + 303.41, 2994.58, 307.46, 2994.06, 311.54, 2994.06, 315.59, 2994.58, + 319.54, 2995.59, 323.34, 2997.09, 326.91, 2999.06, 330.22, 3001.46, + 333.19, 3004.25, 335.79, 3007.4, 337.98, 3010.84, 339.72, 3014.54, + 340.98, 3018.42, 341.74, 3022.43 + ] + ], + "area": 3315.0, + "bbox": [277.0, 2994.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 209, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1189.0, 822.5, 1188.75, 826.45, 1188.01, 830.33, 1186.79, 834.1, + 1185.1, 837.68, 1182.98, 841.02, 1180.46, 844.06, 1177.58, 846.77, + 1174.38, 849.1, 1170.91, 851.0, 1167.23, 852.46, 1163.4, 853.44, + 1159.48, 853.94, 1155.52, 853.94, 1151.6, 853.44, 1147.77, 852.46, + 1144.09, 851.0, 1140.62, 849.1, 1137.42, 846.77, 1134.54, 844.06, + 1132.02, 841.02, 1129.9, 837.68, 1128.21, 834.1, 1126.99, 830.33, + 1126.25, 826.45, 1126.0, 822.5, 1126.25, 818.55, 1126.99, 814.67, + 1128.21, 810.9, 1129.9, 807.32, 1132.02, 803.98, 1134.54, 800.94, + 1137.42, 798.23, 1140.62, 795.9, 1144.09, 794.0, 1147.77, 792.54, + 1151.6, 791.56, 1155.52, 791.06, 1159.48, 791.06, 1163.4, 791.56, + 1167.23, 792.54, 1170.91, 794.0, 1174.38, 795.9, 1177.58, 798.23, + 1180.46, 800.94, 1182.98, 803.98, 1185.1, 807.32, 1186.79, 810.9, + 1188.01, 814.67, 1188.75, 818.55 + ] + ], + "area": 3122.0, + "bbox": [1126.0, 791.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 210, + "image_id": 8, + "category_id": 3, + "segmentation": [[2856.5, 2311.0, 2828.0, 2361.0, 2885.0, 2361.0]], + "area": 1430.0, + "bbox": [2828.0, 2311.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 211, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 367.0, 2405.5, 366.66, 2410.95, 365.63, 2416.32, 363.95, 2421.51, + 361.62, 2426.46, 358.69, 2431.07, 355.21, 2435.28, 351.23, 2439.02, + 346.81, 2442.23, 342.02, 2444.86, 336.94, 2446.87, 331.65, 2448.23, + 326.23, 2448.91, 320.77, 2448.91, 315.35, 2448.23, 310.06, 2446.87, + 304.98, 2444.86, 300.19, 2442.23, 295.77, 2439.02, 291.79, 2435.28, + 288.31, 2431.07, 285.38, 2426.46, 283.05, 2421.51, 281.37, 2416.32, + 280.34, 2410.95, 280.0, 2405.5, 280.34, 2400.05, 281.37, 2394.68, + 283.05, 2389.49, 285.38, 2384.54, 288.31, 2379.93, 291.79, 2375.72, + 295.77, 2371.98, 300.19, 2368.77, 304.98, 2366.14, 310.06, 2364.13, + 315.35, 2362.77, 320.77, 2362.09, 326.23, 2362.09, 331.65, 2362.77, + 336.94, 2364.13, 342.02, 2366.14, 346.81, 2368.77, 351.23, 2371.98, + 355.21, 2375.72, 358.69, 2379.93, 361.62, 2384.54, 363.95, 2389.49, + 365.63, 2394.68, 366.66, 2400.05 + ] + ], + "area": 5927.0, + "bbox": [280.0, 2362.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 212, + "image_id": 8, + "category_id": 3, + "segmentation": [[1169.0, 1849.0, 1123.0, 1929.0, 1215.0, 1929.0]], + "area": 3688.0, + "bbox": [1123.0, 1849.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 213, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 592.0, 2957.0, 670.0, 2957.0, 670.0, 3017.0, 592.0, 3017.0, 592.0, + 2957.0 + ] + ], + "area": 4680.0, + "bbox": [592.0, 2957.0, 78.0, 60.0], + "iscrowd": 0 + }, + { + "id": 214, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2224.0, 381.0, 2293.0, 381.0, 2293.0, 437.0, 2224.0, 437.0, 2224.0, + 381.0 + ] + ], + "area": 3864.0, + "bbox": [2224.0, 381.0, 69.0, 56.0], + "iscrowd": 0 + }, + { + "id": 215, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2400.0, 2164.0, 2488.0, 2164.0, 2488.0, 2233.0, 2400.0, 2233.0, + 2400.0, 2164.0 + ] + ], + "area": 6072.0, + "bbox": [2400.0, 2164.0, 88.0, 69.0], + "iscrowd": 0 + }, + { + "id": 216, + "image_id": 8, + "category_id": 3, + "segmentation": [[2032.5, 2535.0, 1994.0, 2602.0, 2071.0, 2602.0]], + "area": 2588.0, + "bbox": [1994.0, 2535.0, 77.0, 67.0], + "iscrowd": 0 + } + ] +} diff --git a/data/small_objects/annotations/stuff_test.json b/data/small_objects/annotations/stuff_test.json new file mode 100644 index 00000000000..3a0efb025a9 --- /dev/null +++ b/data/small_objects/annotations/stuff_test.json @@ -0,0 +1,4631 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { "id": 1, "name": "rectangle", "supercategory": "" }, + { "id": 2, "name": "ellipse", "supercategory": "" }, + { "id": 3, "name": "triangle", "supercategory": "" } + ], + "images": [ + { + "id": 9, + "width": 3500, + "height": 3500, + "file_name": "sample_0.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 10, + "width": 3500, + "height": 3500, + "file_name": "sample_1.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [ + { + "id": 1, + "image_id": 9, + "category_id": 3, + "segmentation": [[1261.5, 1415.0, 1234.0, 1463.0, 1289.0, 1463.0]], + "area": 1326.0, + "bbox": [1234.0, 1415.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 2, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3356.0, 2286.5, 3355.7, 2291.33, 3354.79, 2296.07, 3353.3, 2300.67, + 3351.24, 2305.05, 3348.65, 2309.13, 3345.57, 2312.86, 3342.04, + 2316.16, 3338.13, 2319.01, 3333.89, 2321.34, 3329.4, 2323.12, 3324.71, + 2324.32, 3319.92, 2324.92, 3315.08, 2324.92, 3310.29, 2324.32, 3305.6, + 2323.12, 3301.11, 2321.34, 3296.87, 2319.01, 3292.96, 2316.16, + 3289.43, 2312.86, 3286.35, 2309.13, 3283.76, 2305.05, 3281.7, 2300.67, + 3280.21, 2296.07, 3279.3, 2291.33, 3279.0, 2286.5, 3279.3, 2281.67, + 3280.21, 2276.93, 3281.7, 2272.33, 3283.76, 2267.95, 3286.35, 2263.87, + 3289.43, 2260.14, 3292.96, 2256.84, 3296.87, 2253.99, 3301.11, + 2251.66, 3305.6, 2249.88, 3310.29, 2248.68, 3315.08, 2248.08, 3319.92, + 2248.08, 3324.71, 2248.68, 3329.4, 2249.88, 3333.89, 2251.66, 3338.13, + 2253.99, 3342.04, 2256.84, 3345.57, 2260.14, 3348.65, 2263.87, + 3351.24, 2267.95, 3353.3, 2272.33, 3354.79, 2276.93, 3355.7, 2281.67 + ] + ], + "area": 4653.0, + "bbox": [3279.0, 2248.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 3, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1417.0, 197.0, 1483.0, 197.0, 1483.0, 276.0, 1417.0, 276.0, 1417.0, + 197.0 + ] + ], + "area": 5214.0, + "bbox": [1417.0, 197.0, 66.0, 79.0], + "iscrowd": 0 + }, + { + "id": 4, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1760.5, 487.0, 1764.82, 486.73, 1769.08, 485.92, 1773.2, 484.58, + 1777.12, 482.73, 1780.78, 480.41, 1784.12, 477.65, 1787.08, 474.49, + 1789.63, 470.99, 1791.72, 467.19, 1793.31, 463.16, 1794.39, 458.96, + 1794.93, 454.67, 1794.93, 450.33, 1794.39, 446.04, 1793.31, 441.84, + 1791.72, 437.81, 1789.63, 434.01, 1787.08, 430.51, 1784.12, 427.35, + 1780.78, 424.59, 1777.12, 422.27, 1773.2, 420.42, 1769.08, 419.08, + 1764.82, 418.27, 1760.5, 418.0, 1756.18, 418.27, 1751.92, 419.08, + 1747.8, 420.42, 1743.88, 422.27, 1740.22, 424.59, 1736.88, 427.35, + 1733.92, 430.51, 1731.37, 434.01, 1729.28, 437.81, 1727.69, 441.84, + 1726.61, 446.04, 1726.07, 450.33, 1726.07, 454.67, 1726.61, 458.96, + 1727.69, 463.16, 1729.28, 467.19, 1731.37, 470.99, 1733.92, 474.49, + 1736.88, 477.65, 1740.22, 480.41, 1743.88, 482.73, 1747.8, 484.58, + 1751.92, 485.92, 1756.18, 486.73 + ] + ], + "area": 3743.0, + "bbox": [1726.07, 418.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 5, + "image_id": 9, + "category_id": 3, + "segmentation": [[1173.5, 1820.0, 1127.0, 1901.0, 1220.0, 1901.0]], + "area": 3776.0, + "bbox": [1127.0, 1820.0, 93.0, 81.0], + "iscrowd": 0 + }, + { + "id": 6, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1694.0, 2585.0, 1754.0, 2585.0, 1754.0, 2642.0, 1694.0, 2642.0, + 1694.0, 2585.0 + ] + ], + "area": 3420.0, + "bbox": [1694.0, 2585.0, 60.0, 57.0], + "iscrowd": 0 + }, + { + "id": 7, + "image_id": 9, + "category_id": 3, + "segmentation": [[1824.5, 1282.0, 1781.0, 1358.0, 1868.0, 1358.0]], + "area": 3315.0, + "bbox": [1781.0, 1282.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 8, + "image_id": 9, + "category_id": 3, + "segmentation": [[132.0, 1149.0, 98.0, 1209.0, 166.0, 1209.0]], + "area": 2048.0, + "bbox": [98.0, 1149.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 9, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1930.0, 1158.0, 2021.0, 1158.0, 2021.0, 1247.0, 1930.0, 1247.0, + 1930.0, 1158.0 + ] + ], + "area": 8099.0, + "bbox": [1930.0, 1158.0, 91.0, 89.0], + "iscrowd": 0 + }, + { + "id": 10, + "image_id": 9, + "category_id": 3, + "segmentation": [[1190.0, 3008.0, 1147.0, 3083.0, 1233.0, 3083.0]], + "area": 3234.0, + "bbox": [1147.0, 3008.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 11, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [12.0, 1147.0, 83.0, 1147.0, 83.0, 1229.0, 12.0, 1229.0, 12.0, 1147.0] + ], + "area": 5822.0, + "bbox": [12.0, 1147.0, 71.0, 82.0], + "iscrowd": 0 + }, + { + "id": 12, + "image_id": 9, + "category_id": 3, + "segmentation": [[1268.0, 157.0, 1221.0, 239.0, 1315.0, 239.0]], + "area": 3864.0, + "bbox": [1221.0, 157.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 13, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1091.0, 1533.0, 1148.0, 1533.0, 1148.0, 1588.0, 1091.0, 1588.0, + 1091.0, 1533.0 + ] + ], + "area": 3135.0, + "bbox": [1091.0, 1533.0, 57.0, 55.0], + "iscrowd": 0 + }, + { + "id": 14, + "image_id": 9, + "category_id": 3, + "segmentation": [[102.0, 137.0, 55.0, 219.0, 149.0, 219.0]], + "area": 3864.0, + "bbox": [55.0, 137.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 15, + "image_id": 9, + "category_id": 3, + "segmentation": [[509.0, 424.0, 481.0, 473.0, 537.0, 473.0]], + "area": 1372.0, + "bbox": [481.0, 424.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 16, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 134.0, 1884.0, 206.0, 1884.0, 206.0, 1958.0, 134.0, 1958.0, 134.0, + 1884.0 + ] + ], + "area": 5328.0, + "bbox": [134.0, 1884.0, 72.0, 74.0], + "iscrowd": 0 + }, + { + "id": 17, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1477.0, 1646.0, 1536.0, 1646.0, 1536.0, 1745.0, 1477.0, 1745.0, + 1477.0, 1646.0 + ] + ], + "area": 5841.0, + "bbox": [1477.0, 1646.0, 59.0, 99.0], + "iscrowd": 0 + }, + { + "id": 18, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1221.0, 2152.5, 1220.74, 2156.7, 1219.95, 2160.83, 1218.65, 2164.83, + 1216.86, 2168.64, 1214.6, 2172.19, 1211.92, 2175.43, 1208.85, 2178.31, + 1205.45, 2180.78, 1201.76, 2182.81, 1197.85, 2184.36, 1193.78, + 2185.41, 1189.6, 2185.93, 1185.4, 2185.93, 1181.22, 2185.41, 1177.15, + 2184.36, 1173.24, 2182.81, 1169.55, 2180.78, 1166.15, 2178.31, + 1163.08, 2175.43, 1160.4, 2172.19, 1158.14, 2168.64, 1156.35, 2164.83, + 1155.05, 2160.83, 1154.26, 2156.7, 1154.0, 2152.5, 1154.26, 2148.3, + 1155.05, 2144.17, 1156.35, 2140.17, 1158.14, 2136.36, 1160.4, 2132.81, + 1163.08, 2129.57, 1166.15, 2126.69, 1169.55, 2124.22, 1173.24, + 2122.19, 1177.15, 2120.64, 1181.22, 2119.59, 1185.4, 2119.07, 1189.6, + 2119.07, 1193.78, 2119.59, 1197.85, 2120.64, 1201.76, 2122.19, + 1205.45, 2124.22, 1208.85, 2126.69, 1211.92, 2129.57, 1214.6, 2132.81, + 1216.86, 2136.36, 1218.65, 2140.17, 1219.95, 2144.17, 1220.74, 2148.3 + ] + ], + "area": 3519.0, + "bbox": [1154.0, 2119.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 19, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 628.0, 2525.5, 627.65, 2531.08, 626.6, 2536.57, 624.88, 2541.88, + 622.5, 2546.94, 619.5, 2551.66, 615.94, 2555.96, 611.87, 2559.79, + 607.34, 2563.07, 602.45, 2565.76, 597.25, 2567.82, 591.84, 2569.21, + 586.29, 2569.91, 580.71, 2569.91, 575.16, 2569.21, 569.75, 2567.82, + 564.55, 2565.76, 559.66, 2563.07, 555.13, 2559.79, 551.06, 2555.96, + 547.5, 2551.66, 544.5, 2546.94, 542.12, 2541.88, 540.4, 2536.57, + 539.35, 2531.08, 539.0, 2525.5, 539.35, 2519.92, 540.4, 2514.43, + 542.12, 2509.12, 544.5, 2504.06, 547.5, 2499.34, 551.06, 2495.04, + 555.13, 2491.21, 559.66, 2487.93, 564.55, 2485.24, 569.75, 2483.18, + 575.16, 2481.79, 580.71, 2481.09, 586.29, 2481.09, 591.84, 2481.79, + 597.25, 2483.18, 602.45, 2485.24, 607.34, 2487.93, 611.87, 2491.21, + 615.94, 2495.04, 619.5, 2499.34, 622.5, 2504.06, 624.88, 2509.12, + 626.6, 2514.43, 627.65, 2519.92 + ] + ], + "area": 6208.0, + "bbox": [539.0, 2481.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 20, + "image_id": 9, + "category_id": 3, + "segmentation": [[2493.5, 2550.0, 2468.0, 2595.0, 2519.0, 2595.0]], + "area": 1154.0, + "bbox": [2468.0, 2550.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 21, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 902.0, 1477.0, 987.0, 1477.0, 987.0, 1550.0, 902.0, 1550.0, 902.0, + 1477.0 + ] + ], + "area": 6205.0, + "bbox": [902.0, 1477.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 22, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2996.0, 1249.5, 2995.73, 1253.82, 2994.92, 1258.08, 2993.58, 1262.2, + 2991.73, 1266.12, 2989.41, 1269.78, 2986.65, 1273.12, 2983.49, + 1276.08, 2979.99, 1278.63, 2976.19, 1280.72, 2972.16, 1282.31, + 2967.96, 1283.39, 2963.67, 1283.93, 2959.33, 1283.93, 2955.04, + 1283.39, 2950.84, 1282.31, 2946.81, 1280.72, 2943.01, 1278.63, + 2939.51, 1276.08, 2936.35, 1273.12, 2933.59, 1269.78, 2931.27, + 1266.12, 2929.42, 1262.2, 2928.08, 1258.08, 2927.27, 1253.82, 2927.0, + 1249.5, 2927.27, 1245.18, 2928.08, 1240.92, 2929.42, 1236.8, 2931.27, + 1232.88, 2933.59, 1229.22, 2936.35, 1225.88, 2939.51, 1222.92, + 2943.01, 1220.37, 2946.81, 1218.28, 2950.84, 1216.69, 2955.04, + 1215.61, 2959.33, 1215.07, 2963.67, 1215.07, 2967.96, 1215.61, + 2972.16, 1216.69, 2976.19, 1218.28, 2979.99, 1220.37, 2983.49, + 1222.92, 2986.65, 1225.88, 2989.41, 1229.22, 2991.73, 1232.88, + 2993.58, 1236.8, 2994.92, 1240.92, 2995.73, 1245.18 + ] + ], + "area": 3743.0, + "bbox": [2927.0, 1215.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 23, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 534.5, 2460.0, 539.07, 2459.71, 543.58, 2458.85, 547.94, 2457.44, + 552.08, 2455.49, 555.95, 2453.03, 559.49, 2450.11, 562.62, 2446.77, + 565.32, 2443.06, 567.53, 2439.04, 569.21, 2434.78, 570.35, 2430.34, + 570.93, 2425.79, 570.93, 2421.21, 570.35, 2416.66, 569.21, 2412.22, + 567.53, 2407.96, 565.32, 2403.94, 562.62, 2400.23, 559.49, 2396.89, + 555.95, 2393.97, 552.08, 2391.51, 547.94, 2389.56, 543.58, 2388.15, + 539.07, 2387.29, 534.5, 2387.0, 529.93, 2387.29, 525.42, 2388.15, + 521.06, 2389.56, 516.92, 2391.51, 513.05, 2393.97, 509.51, 2396.89, + 506.38, 2400.23, 503.68, 2403.94, 501.47, 2407.96, 499.79, 2412.22, + 498.65, 2416.66, 498.07, 2421.21, 498.07, 2425.79, 498.65, 2430.34, + 499.79, 2434.78, 501.47, 2439.04, 503.68, 2443.06, 506.38, 2446.77, + 509.51, 2450.11, 513.05, 2453.03, 516.92, 2455.49, 521.06, 2457.44, + 525.42, 2458.85, 529.93, 2459.71 + ] + ], + "area": 4187.0, + "bbox": [498.07, 2387.0, 72.86, 73.0], + "iscrowd": 0 + }, + { + "id": 24, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1070.0, 327.0, 1163.0, 327.0, 1163.0, 407.0, 1070.0, 407.0, 1070.0, + 327.0 + ] + ], + "area": 7440.0, + "bbox": [1070.0, 327.0, 93.0, 80.0], + "iscrowd": 0 + }, + { + "id": 25, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2261.0, 2427.0, 2356.0, 2427.0, 2356.0, 2497.0, 2261.0, 2497.0, + 2261.0, 2427.0 + ] + ], + "area": 6650.0, + "bbox": [2261.0, 2427.0, 95.0, 70.0], + "iscrowd": 0 + }, + { + "id": 26, + "image_id": 9, + "category_id": 3, + "segmentation": [[552.0, 1852.0, 511.0, 1924.0, 593.0, 1924.0]], + "area": 2960.0, + "bbox": [511.0, 1852.0, 82.0, 72.0], + "iscrowd": 0 + }, + { + "id": 27, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1766.0, 2573.0, 1862.0, 2573.0, 1862.0, 2664.0, 1766.0, 2664.0, + 1766.0, 2573.0 + ] + ], + "area": 8736.0, + "bbox": [1766.0, 2573.0, 96.0, 91.0], + "iscrowd": 0 + }, + { + "id": 28, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1505.0, 2061.0, 1590.0, 2061.0, 1590.0, 2132.0, 1505.0, 2132.0, + 1505.0, 2061.0 + ] + ], + "area": 6035.0, + "bbox": [1505.0, 2061.0, 85.0, 71.0], + "iscrowd": 0 + }, + { + "id": 29, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2785.0, 570.0, 2835.0, 570.0, 2835.0, 668.0, 2785.0, 668.0, 2785.0, + 570.0 + ] + ], + "area": 4900.0, + "bbox": [2785.0, 570.0, 50.0, 98.0], + "iscrowd": 0 + }, + { + "id": 30, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2437.5, 79.0, 2440.57, 78.81, 2443.59, 78.23, 2446.52, 77.28, 2449.3, + 75.97, 2451.9, 74.32, 2454.27, 72.36, 2456.38, 70.12, 2458.19, 67.63, + 2459.67, 64.93, 2460.8, 62.07, 2461.57, 59.09, 2461.95, 56.04, + 2461.95, 52.96, 2461.57, 49.91, 2460.8, 46.93, 2459.67, 44.07, + 2458.19, 41.37, 2456.38, 38.88, 2454.27, 36.64, 2451.9, 34.68, 2449.3, + 33.03, 2446.52, 31.72, 2443.59, 30.77, 2440.57, 30.19, 2437.5, 30.0, + 2434.43, 30.19, 2431.41, 30.77, 2428.48, 31.72, 2425.7, 33.03, 2423.1, + 34.68, 2420.73, 36.64, 2418.62, 38.88, 2416.81, 41.37, 2415.33, 44.07, + 2414.2, 46.93, 2413.43, 49.91, 2413.05, 52.96, 2413.05, 56.04, + 2413.43, 59.09, 2414.2, 62.07, 2415.33, 64.93, 2416.81, 67.63, + 2418.62, 70.12, 2420.73, 72.36, 2423.1, 74.32, 2425.7, 75.97, 2428.48, + 77.28, 2431.41, 78.23, 2434.43, 78.81 + ] + ], + "area": 1885.0, + "bbox": [2413.05, 30.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 31, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 344.0, 3002.0, 433.0, 3002.0, 433.0, 3068.0, 344.0, 3068.0, 344.0, + 3002.0 + ] + ], + "area": 5874.0, + "bbox": [344.0, 3002.0, 89.0, 66.0], + "iscrowd": 0 + }, + { + "id": 32, + "image_id": 9, + "category_id": 3, + "segmentation": [[2593.5, 115.0, 2563.0, 168.0, 2624.0, 168.0]], + "area": 1623.0, + "bbox": [2563.0, 115.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 33, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2553.0, 2876.5, 2552.63, 2882.45, 2551.51, 2888.31, 2549.66, 2893.99, + 2547.12, 2899.38, 2543.93, 2904.42, 2540.13, 2909.02, 2535.78, 2913.1, + 2530.95, 2916.61, 2525.72, 2919.48, 2520.18, 2921.68, 2514.4, 2923.16, + 2508.48, 2923.91, 2502.52, 2923.91, 2496.6, 2923.16, 2490.82, 2921.68, + 2485.28, 2919.48, 2480.05, 2916.61, 2475.22, 2913.1, 2470.87, 2909.02, + 2467.07, 2904.42, 2463.88, 2899.38, 2461.34, 2893.99, 2459.49, + 2888.31, 2458.37, 2882.45, 2458.0, 2876.5, 2458.37, 2870.55, 2459.49, + 2864.69, 2461.34, 2859.01, 2463.88, 2853.62, 2467.07, 2848.58, + 2470.87, 2843.98, 2475.22, 2839.9, 2480.05, 2836.39, 2485.28, 2833.52, + 2490.82, 2831.32, 2496.6, 2829.84, 2502.52, 2829.09, 2508.48, 2829.09, + 2514.4, 2829.84, 2520.18, 2831.32, 2525.72, 2833.52, 2530.95, 2836.39, + 2535.78, 2839.9, 2540.13, 2843.98, 2543.93, 2848.58, 2547.12, 2853.62, + 2549.66, 2859.01, 2551.51, 2864.69, 2552.63, 2870.55 + ] + ], + "area": 7083.0, + "bbox": [2458.0, 2829.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 34, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [422.0, 566.0, 509.0, 566.0, 509.0, 628.0, 422.0, 628.0, 422.0, 566.0] + ], + "area": 5394.0, + "bbox": [422.0, 566.0, 87.0, 62.0], + "iscrowd": 0 + }, + { + "id": 35, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2394.0, 2266.5, 2393.7, 2271.33, 2392.79, 2276.07, 2391.3, 2280.67, + 2389.24, 2285.05, 2386.65, 2289.13, 2383.57, 2292.86, 2380.04, + 2296.16, 2376.13, 2299.01, 2371.89, 2301.34, 2367.4, 2303.12, 2362.71, + 2304.32, 2357.92, 2304.92, 2353.08, 2304.92, 2348.29, 2304.32, 2343.6, + 2303.12, 2339.11, 2301.34, 2334.87, 2299.01, 2330.96, 2296.16, + 2327.43, 2292.86, 2324.35, 2289.13, 2321.76, 2285.05, 2319.7, 2280.67, + 2318.21, 2276.07, 2317.3, 2271.33, 2317.0, 2266.5, 2317.3, 2261.67, + 2318.21, 2256.93, 2319.7, 2252.33, 2321.76, 2247.95, 2324.35, 2243.87, + 2327.43, 2240.14, 2330.96, 2236.84, 2334.87, 2233.99, 2339.11, + 2231.66, 2343.6, 2229.88, 2348.29, 2228.68, 2353.08, 2228.08, 2357.92, + 2228.08, 2362.71, 2228.68, 2367.4, 2229.88, 2371.89, 2231.66, 2376.13, + 2233.99, 2380.04, 2236.84, 2383.57, 2240.14, 2386.65, 2243.87, + 2389.24, 2247.95, 2391.3, 2252.33, 2392.79, 2256.93, 2393.7, 2261.67 + ] + ], + "area": 4653.0, + "bbox": [2317.0, 2228.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 36, + "image_id": 9, + "category_id": 3, + "segmentation": [[525.0, 3045.0, 495.0, 3098.0, 555.0, 3098.0]], + "area": 1596.0, + "bbox": [495.0, 3045.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 37, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2686.0, 1405.0, 2757.0, 1405.0, 2757.0, 1479.0, 2686.0, 1479.0, + 2686.0, 1405.0 + ] + ], + "area": 5254.0, + "bbox": [2686.0, 1405.0, 71.0, 74.0], + "iscrowd": 0 + }, + { + "id": 38, + "image_id": 9, + "category_id": 3, + "segmentation": [[1204.0, 3174.0, 1178.0, 3220.0, 1230.0, 3220.0]], + "area": 1202.0, + "bbox": [1178.0, 3174.0, 52.0, 46.0], + "iscrowd": 0 + }, + { + "id": 39, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2913.0, 1354.0, 2983.0, 1354.0, 2983.0, 1419.0, 2913.0, 1419.0, + 2913.0, 1354.0 + ] + ], + "area": 4550.0, + "bbox": [2913.0, 1354.0, 70.0, 65.0], + "iscrowd": 0 + }, + { + "id": 40, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1020.0, 1900.0, 1077.0, 1900.0, 1077.0, 1960.0, 1020.0, 1960.0, + 1020.0, 1900.0 + ] + ], + "area": 3420.0, + "bbox": [1020.0, 1900.0, 57.0, 60.0], + "iscrowd": 0 + }, + { + "id": 41, + "image_id": 9, + "category_id": 3, + "segmentation": [[1033.5, 1599.0, 995.0, 1666.0, 1072.0, 1666.0]], + "area": 2588.0, + "bbox": [995.0, 1599.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 42, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2665.0, 1197.0, 2748.0, 1197.0, 2748.0, 1288.0, 2665.0, 1288.0, + 2665.0, 1197.0 + ] + ], + "area": 7553.0, + "bbox": [2665.0, 1197.0, 83.0, 91.0], + "iscrowd": 0 + }, + { + "id": 43, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1844.0, 1566.0, 1903.0, 1566.0, 1903.0, 1663.0, 1844.0, 1663.0, + 1844.0, 1566.0 + ] + ], + "area": 5723.0, + "bbox": [1844.0, 1566.0, 59.0, 97.0], + "iscrowd": 0 + }, + { + "id": 44, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2658.0, 3079.5, 2657.81, 3082.57, 2657.23, 3085.59, 2656.28, 3088.52, + 2654.97, 3091.3, 2653.32, 3093.9, 2651.36, 3096.27, 2649.12, 3098.38, + 2646.63, 3100.19, 2643.93, 3101.67, 2641.07, 3102.8, 2638.09, 3103.57, + 2635.04, 3103.95, 2631.96, 3103.95, 2628.91, 3103.57, 2625.93, 3102.8, + 2623.07, 3101.67, 2620.37, 3100.19, 2617.88, 3098.38, 2615.64, + 3096.27, 2613.68, 3093.9, 2612.03, 3091.3, 2610.72, 3088.52, 2609.77, + 3085.59, 2609.19, 3082.57, 2609.0, 3079.5, 2609.19, 3076.43, 2609.77, + 3073.41, 2610.72, 3070.48, 2612.03, 3067.7, 2613.68, 3065.1, 2615.64, + 3062.73, 2617.88, 3060.62, 2620.37, 3058.81, 2623.07, 3057.33, + 2625.93, 3056.2, 2628.91, 3055.43, 2631.96, 3055.05, 2635.04, 3055.05, + 2638.09, 3055.43, 2641.07, 3056.2, 2643.93, 3057.33, 2646.63, 3058.81, + 2649.12, 3060.62, 2651.36, 3062.73, 2653.32, 3065.1, 2654.97, 3067.7, + 2656.28, 3070.48, 2657.23, 3073.41, 2657.81, 3076.43 + ] + ], + "area": 1885.0, + "bbox": [2609.0, 3055.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 45, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2909.0, 1024.0, 2980.0, 1024.0, 2980.0, 1101.0, 2909.0, 1101.0, + 2909.0, 1024.0 + ] + ], + "area": 5467.0, + "bbox": [2909.0, 1024.0, 71.0, 77.0], + "iscrowd": 0 + }, + { + "id": 46, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [61.0, 1762.0, 152.0, 1762.0, 152.0, 1825.0, 61.0, 1825.0, 61.0, 1762.0] + ], + "area": 5733.0, + "bbox": [61.0, 1762.0, 91.0, 63.0], + "iscrowd": 0 + }, + { + "id": 47, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2257.5, 96.0, 2262.2, 95.7, 2266.83, 94.82, 2271.3, 93.37, 2275.57, + 91.36, 2279.54, 88.84, 2283.17, 85.84, 2286.39, 82.4, 2289.16, 78.59, + 2291.43, 74.47, 2293.16, 70.09, 2294.34, 65.53, 2294.93, 60.85, + 2294.93, 56.15, 2294.34, 51.47, 2293.16, 46.91, 2291.43, 42.53, + 2289.16, 38.41, 2286.39, 34.6, 2283.17, 31.16, 2279.54, 28.16, + 2275.57, 25.64, 2271.3, 23.63, 2266.83, 22.18, 2262.2, 21.3, 2257.5, + 21.0, 2252.8, 21.3, 2248.17, 22.18, 2243.7, 23.63, 2239.43, 25.64, + 2235.46, 28.16, 2231.83, 31.16, 2228.61, 34.6, 2225.84, 38.41, + 2223.57, 42.53, 2221.84, 46.91, 2220.66, 51.47, 2220.07, 56.15, + 2220.07, 60.85, 2220.66, 65.53, 2221.84, 70.09, 2223.57, 74.47, + 2225.84, 78.59, 2228.61, 82.4, 2231.83, 85.84, 2235.46, 88.84, + 2239.43, 91.36, 2243.7, 93.37, 2248.17, 94.82, 2252.8, 95.7 + ] + ], + "area": 4409.0, + "bbox": [2220.07, 21.0, 74.86, 75.0], + "iscrowd": 0 + }, + { + "id": 48, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 801.0, 1200.5, 800.72, 1204.95, 799.88, 1209.33, 798.51, 1213.57, + 796.61, 1217.6, 794.22, 1221.37, 791.38, 1224.8, 788.13, 1227.85, + 784.52, 1230.47, 780.62, 1232.62, 776.47, 1234.26, 772.15, 1235.37, + 767.73, 1235.93, 763.27, 1235.93, 758.85, 1235.37, 754.53, 1234.26, + 750.38, 1232.62, 746.48, 1230.47, 742.87, 1227.85, 739.62, 1224.8, + 736.78, 1221.37, 734.39, 1217.6, 732.49, 1213.57, 731.12, 1209.33, + 730.28, 1204.95, 730.0, 1200.5, 730.28, 1196.05, 731.12, 1191.67, + 732.49, 1187.43, 734.39, 1183.4, 736.78, 1179.63, 739.62, 1176.2, + 742.87, 1173.15, 746.48, 1170.53, 750.38, 1168.38, 754.53, 1166.74, + 758.85, 1165.63, 763.27, 1165.07, 767.73, 1165.07, 772.15, 1165.63, + 776.47, 1166.74, 780.62, 1168.38, 784.52, 1170.53, 788.13, 1173.15, + 791.38, 1176.2, 794.22, 1179.63, 796.61, 1183.4, 798.51, 1187.43, + 799.88, 1191.67, 800.72, 1196.05 + ] + ], + "area": 3957.0, + "bbox": [730.0, 1165.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 49, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 337.0, 2418.0, 416.0, 2418.0, 416.0, 2505.0, 337.0, 2505.0, 337.0, + 2418.0 + ] + ], + "area": 6873.0, + "bbox": [337.0, 2418.0, 79.0, 87.0], + "iscrowd": 0 + }, + { + "id": 50, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2871.0, 320.0, 2954.0, 320.0, 2954.0, 414.0, 2871.0, 414.0, 2871.0, + 320.0 + ] + ], + "area": 7802.0, + "bbox": [2871.0, 320.0, 83.0, 94.0], + "iscrowd": 0 + }, + { + "id": 51, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1657.0, 142.0, 1752.0, 142.0, 1752.0, 235.0, 1657.0, 235.0, 1657.0, + 142.0 + ] + ], + "area": 8835.0, + "bbox": [1657.0, 142.0, 95.0, 93.0], + "iscrowd": 0 + }, + { + "id": 52, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [78.0, 513.0, 145.0, 513.0, 145.0, 594.0, 78.0, 594.0, 78.0, 513.0] + ], + "area": 5427.0, + "bbox": [78.0, 513.0, 67.0, 81.0], + "iscrowd": 0 + }, + { + "id": 53, + "image_id": 9, + "category_id": 3, + "segmentation": [[2432.0, 1907.0, 2402.0, 1960.0, 2462.0, 1960.0]], + "area": 1596.0, + "bbox": [2402.0, 1907.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 54, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1436.0, 357.0, 1493.0, 357.0, 1493.0, 412.0, 1436.0, 412.0, 1436.0, + 357.0 + ] + ], + "area": 3135.0, + "bbox": [1436.0, 357.0, 57.0, 55.0], + "iscrowd": 0 + }, + { + "id": 55, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3268.0, 2811.5, 3267.77, 2815.2, 3267.07, 2818.84, 3265.93, 2822.36, + 3264.35, 2825.71, 3262.37, 2828.84, 3260.0, 2831.69, 3257.3, 2834.23, + 3254.31, 2836.41, 3251.06, 2838.19, 3247.62, 2839.56, 3244.03, + 2840.48, 3240.35, 2840.94, 3236.65, 2840.94, 3232.97, 2840.48, + 3229.38, 2839.56, 3225.94, 2838.19, 3222.69, 2836.41, 3219.7, 2834.23, + 3217.0, 2831.69, 3214.63, 2828.84, 3212.65, 2825.71, 3211.07, 2822.36, + 3209.93, 2818.84, 3209.23, 2815.2, 3209.0, 2811.5, 3209.23, 2807.8, + 3209.93, 2804.16, 3211.07, 2800.64, 3212.65, 2797.29, 3214.63, + 2794.16, 3217.0, 2791.31, 3219.7, 2788.77, 3222.69, 2786.59, 3225.94, + 2784.81, 3229.38, 2783.44, 3232.97, 2782.52, 3236.65, 2782.06, + 3240.35, 2782.06, 3244.03, 2782.52, 3247.62, 2783.44, 3251.06, + 2784.81, 3254.31, 2786.59, 3257.3, 2788.77, 3260.0, 2791.31, 3262.37, + 2794.16, 3264.35, 2797.29, 3265.93, 2800.64, 3267.07, 2804.16, + 3267.77, 2807.8 + ] + ], + "area": 2729.0, + "bbox": [3209.0, 2782.06, 59.0, 58.88], + "iscrowd": 0 + }, + { + "id": 56, + "image_id": 9, + "category_id": 3, + "segmentation": [[3048.5, 1201.0, 3004.0, 1279.0, 3093.0, 1279.0]], + "area": 3477.0, + "bbox": [3004.0, 1201.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 57, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1755.0, 1007.5, 1754.8, 1010.7, 1754.2, 1013.84, 1753.21, 1016.89, + 1751.85, 1019.78, 1750.13, 1022.49, 1748.09, 1024.96, 1745.75, + 1027.15, 1743.16, 1029.03, 1740.36, 1030.57, 1737.38, 1031.75, + 1734.28, 1032.55, 1731.1, 1032.95, 1727.9, 1032.95, 1724.72, 1032.55, + 1721.62, 1031.75, 1718.64, 1030.57, 1715.84, 1029.03, 1713.25, + 1027.15, 1710.91, 1024.96, 1708.87, 1022.49, 1707.15, 1019.78, + 1705.79, 1016.89, 1704.8, 1013.84, 1704.2, 1010.7, 1704.0, 1007.5, + 1704.2, 1004.3, 1704.8, 1001.16, 1705.79, 998.11, 1707.15, 995.22, + 1708.87, 992.51, 1710.91, 990.04, 1713.25, 987.85, 1715.84, 985.97, + 1718.64, 984.43, 1721.62, 983.25, 1724.72, 982.45, 1727.9, 982.05, + 1731.1, 982.05, 1734.28, 982.45, 1737.38, 983.25, 1740.36, 984.43, + 1743.16, 985.97, 1745.75, 987.85, 1748.09, 990.04, 1750.13, 992.51, + 1751.85, 995.22, 1753.21, 998.11, 1754.2, 1001.16, 1754.8, 1004.3 + ] + ], + "area": 2037.0, + "bbox": [1704.0, 982.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 58, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1644.0, 2704.5, 1643.73, 2708.82, 1642.92, 2713.08, 1641.58, 2717.2, + 1639.73, 2721.12, 1637.41, 2724.78, 1634.65, 2728.12, 1631.49, + 2731.08, 1627.99, 2733.63, 1624.19, 2735.72, 1620.16, 2737.31, + 1615.96, 2738.39, 1611.67, 2738.93, 1607.33, 2738.93, 1603.04, + 2738.39, 1598.84, 2737.31, 1594.81, 2735.72, 1591.01, 2733.63, + 1587.51, 2731.08, 1584.35, 2728.12, 1581.59, 2724.78, 1579.27, + 2721.12, 1577.42, 2717.2, 1576.08, 2713.08, 1575.27, 2708.82, 1575.0, + 2704.5, 1575.27, 2700.18, 1576.08, 2695.92, 1577.42, 2691.8, 1579.27, + 2687.88, 1581.59, 2684.22, 1584.35, 2680.88, 1587.51, 2677.92, + 1591.01, 2675.37, 1594.81, 2673.28, 1598.84, 2671.69, 1603.04, + 2670.61, 1607.33, 2670.07, 1611.67, 2670.07, 1615.96, 2670.61, + 1620.16, 2671.69, 1624.19, 2673.28, 1627.99, 2675.37, 1631.49, + 2677.92, 1634.65, 2680.88, 1637.41, 2684.22, 1639.73, 2687.88, + 1641.58, 2691.8, 1642.92, 2695.92, 1643.73, 2700.18 + ] + ], + "area": 3743.0, + "bbox": [1575.0, 2670.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 59, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1945.5, 1476.0, 1949.2, 1475.77, 1952.84, 1475.07, 1956.36, 1473.93, + 1959.71, 1472.35, 1962.84, 1470.37, 1965.69, 1468.0, 1968.23, 1465.3, + 1970.41, 1462.31, 1972.19, 1459.06, 1973.56, 1455.62, 1974.48, + 1452.03, 1974.94, 1448.35, 1974.94, 1444.65, 1974.48, 1440.97, + 1973.56, 1437.38, 1972.19, 1433.94, 1970.41, 1430.69, 1968.23, 1427.7, + 1965.69, 1425.0, 1962.84, 1422.63, 1959.71, 1420.65, 1956.36, 1419.07, + 1952.84, 1417.93, 1949.2, 1417.23, 1945.5, 1417.0, 1941.8, 1417.23, + 1938.16, 1417.93, 1934.64, 1419.07, 1931.29, 1420.65, 1928.16, + 1422.63, 1925.31, 1425.0, 1922.77, 1427.7, 1920.59, 1430.69, 1918.81, + 1433.94, 1917.44, 1437.38, 1916.52, 1440.97, 1916.06, 1444.65, + 1916.06, 1448.35, 1916.52, 1452.03, 1917.44, 1455.62, 1918.81, + 1459.06, 1920.59, 1462.31, 1922.77, 1465.3, 1925.31, 1468.0, 1928.16, + 1470.37, 1931.29, 1472.35, 1934.64, 1473.93, 1938.16, 1475.07, 1941.8, + 1475.77 + ] + ], + "area": 2732.0, + "bbox": [1916.06, 1417.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 60, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1761.0, 824.0, 1822.0, 824.0, 1822.0, 915.0, 1761.0, 915.0, 1761.0, + 824.0 + ] + ], + "area": 5551.0, + "bbox": [1761.0, 824.0, 61.0, 91.0], + "iscrowd": 0 + }, + { + "id": 61, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1664.5, 379.0, 1669.33, 378.7, 1674.07, 377.79, 1678.67, 376.3, + 1683.05, 374.24, 1687.13, 371.65, 1690.86, 368.57, 1694.16, 365.04, + 1697.01, 361.13, 1699.34, 356.89, 1701.12, 352.4, 1702.32, 347.71, + 1702.92, 342.92, 1702.92, 338.08, 1702.32, 333.29, 1701.12, 328.6, + 1699.34, 324.11, 1697.01, 319.87, 1694.16, 315.96, 1690.86, 312.43, + 1687.13, 309.35, 1683.05, 306.76, 1678.67, 304.7, 1674.07, 303.21, + 1669.33, 302.3, 1664.5, 302.0, 1659.67, 302.3, 1654.93, 303.21, + 1650.33, 304.7, 1645.95, 306.76, 1641.87, 309.35, 1638.14, 312.43, + 1634.84, 315.96, 1631.99, 319.87, 1629.66, 324.11, 1627.88, 328.6, + 1626.68, 333.29, 1626.08, 338.08, 1626.08, 342.92, 1626.68, 347.71, + 1627.88, 352.4, 1629.66, 356.89, 1631.99, 361.13, 1634.84, 365.04, + 1638.14, 368.57, 1641.87, 371.65, 1645.95, 374.24, 1650.33, 376.3, + 1654.93, 377.79, 1659.67, 378.7 + ] + ], + "area": 4651.0, + "bbox": [1626.08, 302.0, 76.84, 77.0], + "iscrowd": 0 + }, + { + "id": 62, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2444.0, 2756.0, 2514.0, 2756.0, 2514.0, 2807.0, 2444.0, 2807.0, + 2444.0, 2756.0 + ] + ], + "area": 3570.0, + "bbox": [2444.0, 2756.0, 70.0, 51.0], + "iscrowd": 0 + }, + { + "id": 63, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3299.0, 811.5, 3298.8, 814.7, 3298.2, 817.84, 3297.21, 820.89, + 3295.85, 823.78, 3294.13, 826.49, 3292.09, 828.96, 3289.75, 831.15, + 3287.16, 833.03, 3284.36, 834.57, 3281.38, 835.75, 3278.28, 836.55, + 3275.1, 836.95, 3271.9, 836.95, 3268.72, 836.55, 3265.62, 835.75, + 3262.64, 834.57, 3259.84, 833.03, 3257.25, 831.15, 3254.91, 828.96, + 3252.87, 826.49, 3251.15, 823.78, 3249.79, 820.89, 3248.8, 817.84, + 3248.2, 814.7, 3248.0, 811.5, 3248.2, 808.3, 3248.8, 805.16, 3249.79, + 802.11, 3251.15, 799.22, 3252.87, 796.51, 3254.91, 794.04, 3257.25, + 791.85, 3259.84, 789.97, 3262.64, 788.43, 3265.62, 787.25, 3268.72, + 786.45, 3271.9, 786.05, 3275.1, 786.05, 3278.28, 786.45, 3281.38, + 787.25, 3284.36, 788.43, 3287.16, 789.97, 3289.75, 791.85, 3292.09, + 794.04, 3294.13, 796.51, 3295.85, 799.22, 3297.21, 802.11, 3298.2, + 805.16, 3298.8, 808.3 + ] + ], + "area": 2037.0, + "bbox": [3248.0, 786.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 64, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 919.0, 2700.0, 986.0, 2700.0, 986.0, 2781.0, 919.0, 2781.0, 919.0, + 2700.0 + ] + ], + "area": 5427.0, + "bbox": [919.0, 2700.0, 67.0, 81.0], + "iscrowd": 0 + }, + { + "id": 65, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2513.0, 3048.5, 2512.73, 3052.82, 2511.92, 3057.08, 2510.58, 3061.2, + 2508.73, 3065.12, 2506.41, 3068.78, 2503.65, 3072.12, 2500.49, + 3075.08, 2496.99, 3077.63, 2493.19, 3079.72, 2489.16, 3081.31, + 2484.96, 3082.39, 2480.67, 3082.93, 2476.33, 3082.93, 2472.04, + 3082.39, 2467.84, 3081.31, 2463.81, 3079.72, 2460.01, 3077.63, + 2456.51, 3075.08, 2453.35, 3072.12, 2450.59, 3068.78, 2448.27, + 3065.12, 2446.42, 3061.2, 2445.08, 3057.08, 2444.27, 3052.82, 2444.0, + 3048.5, 2444.27, 3044.18, 2445.08, 3039.92, 2446.42, 3035.8, 2448.27, + 3031.88, 2450.59, 3028.22, 2453.35, 3024.88, 2456.51, 3021.92, + 2460.01, 3019.37, 2463.81, 3017.28, 2467.84, 3015.69, 2472.04, + 3014.61, 2476.33, 3014.07, 2480.67, 3014.07, 2484.96, 3014.61, + 2489.16, 3015.69, 2493.19, 3017.28, 2496.99, 3019.37, 2500.49, + 3021.92, 2503.65, 3024.88, 2506.41, 3028.22, 2508.73, 3031.88, + 2510.58, 3035.8, 2511.92, 3039.92, 2512.73, 3044.18 + ] + ], + "area": 3743.0, + "bbox": [2444.0, 3014.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 66, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 519.0, 2318.0, 597.0, 2318.0, 597.0, 2382.0, 519.0, 2382.0, 519.0, + 2318.0 + ] + ], + "area": 4992.0, + "bbox": [519.0, 2318.0, 78.0, 64.0], + "iscrowd": 0 + }, + { + "id": 67, + "image_id": 9, + "category_id": 3, + "segmentation": [[750.0, 1344.0, 725.0, 1388.0, 775.0, 1388.0]], + "area": 1105.0, + "bbox": [725.0, 1344.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 68, + "image_id": 9, + "category_id": 3, + "segmentation": [[713.5, 2155.0, 684.0, 2207.0, 743.0, 2207.0]], + "area": 1542.0, + "bbox": [684.0, 2155.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 69, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2721.5, 2274.0, 2726.95, 2273.66, 2732.32, 2272.63, 2737.51, 2270.95, + 2742.46, 2268.62, 2747.07, 2265.69, 2751.28, 2262.21, 2755.02, + 2258.23, 2758.23, 2253.81, 2760.86, 2249.02, 2762.87, 2243.94, + 2764.23, 2238.65, 2764.91, 2233.23, 2764.91, 2227.77, 2764.23, + 2222.35, 2762.87, 2217.06, 2760.86, 2211.98, 2758.23, 2207.19, + 2755.02, 2202.77, 2751.28, 2198.79, 2747.07, 2195.31, 2742.46, + 2192.38, 2737.51, 2190.05, 2732.32, 2188.37, 2726.95, 2187.34, 2721.5, + 2187.0, 2716.05, 2187.34, 2710.68, 2188.37, 2705.49, 2190.05, 2700.54, + 2192.38, 2695.93, 2195.31, 2691.72, 2198.79, 2687.98, 2202.77, + 2684.77, 2207.19, 2682.14, 2211.98, 2680.13, 2217.06, 2678.77, + 2222.35, 2678.09, 2227.77, 2678.09, 2233.23, 2678.77, 2238.65, + 2680.13, 2243.94, 2682.14, 2249.02, 2684.77, 2253.81, 2687.98, + 2258.23, 2691.72, 2262.21, 2695.93, 2265.69, 2700.54, 2268.62, + 2705.49, 2270.95, 2710.68, 2272.63, 2716.05, 2273.66 + ] + ], + "area": 5930.0, + "bbox": [2678.09, 2187.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 70, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1690.0, 3196.0, 1749.0, 3196.0, 1749.0, 3284.0, 1690.0, 3284.0, + 1690.0, 3196.0 + ] + ], + "area": 5192.0, + "bbox": [1690.0, 3196.0, 59.0, 88.0], + "iscrowd": 0 + }, + { + "id": 71, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2858.0, 2469.5, 2857.8, 2472.7, 2857.2, 2475.84, 2856.21, 2478.89, + 2854.85, 2481.78, 2853.13, 2484.49, 2851.09, 2486.96, 2848.75, + 2489.15, 2846.16, 2491.03, 2843.36, 2492.57, 2840.38, 2493.75, + 2837.28, 2494.55, 2834.1, 2494.95, 2830.9, 2494.95, 2827.72, 2494.55, + 2824.62, 2493.75, 2821.64, 2492.57, 2818.84, 2491.03, 2816.25, + 2489.15, 2813.91, 2486.96, 2811.87, 2484.49, 2810.15, 2481.78, + 2808.79, 2478.89, 2807.8, 2475.84, 2807.2, 2472.7, 2807.0, 2469.5, + 2807.2, 2466.3, 2807.8, 2463.16, 2808.79, 2460.11, 2810.15, 2457.22, + 2811.87, 2454.51, 2813.91, 2452.04, 2816.25, 2449.85, 2818.84, + 2447.97, 2821.64, 2446.43, 2824.62, 2445.25, 2827.72, 2444.45, 2830.9, + 2444.05, 2834.1, 2444.05, 2837.28, 2444.45, 2840.38, 2445.25, 2843.36, + 2446.43, 2846.16, 2447.97, 2848.75, 2449.85, 2851.09, 2452.04, + 2853.13, 2454.51, 2854.85, 2457.22, 2856.21, 2460.11, 2857.2, 2463.16, + 2857.8, 2466.3 + ] + ], + "area": 2037.0, + "bbox": [2807.0, 2444.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 72, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2006.0, 346.0, 2083.0, 346.0, 2083.0, 413.0, 2006.0, 413.0, 2006.0, + 346.0 + ] + ], + "area": 5159.0, + "bbox": [2006.0, 346.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 73, + "image_id": 9, + "category_id": 3, + "segmentation": [[547.5, 3372.0, 522.0, 3417.0, 573.0, 3417.0]], + "area": 1154.0, + "bbox": [522.0, 3372.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 74, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 914.0, 1705.0, 990.0, 1705.0, 990.0, 1756.0, 914.0, 1756.0, 914.0, + 1705.0 + ] + ], + "area": 3876.0, + "bbox": [914.0, 1705.0, 76.0, 51.0], + "iscrowd": 0 + }, + { + "id": 75, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1595.0, 872.0, 1667.0, 872.0, 1667.0, 933.0, 1595.0, 933.0, 1595.0, + 872.0 + ] + ], + "area": 4392.0, + "bbox": [1595.0, 872.0, 72.0, 61.0], + "iscrowd": 0 + }, + { + "id": 76, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1261.0, 2626.5, 1260.62, 2632.58, 1259.48, 2638.56, 1257.59, 2644.35, + 1255.0, 2649.87, 1251.74, 2655.01, 1247.85, 2659.7, 1243.42, 2663.87, + 1238.49, 2667.45, 1233.15, 2670.38, 1227.49, 2672.63, 1221.59, + 2674.14, 1215.55, 2674.9, 1209.45, 2674.9, 1203.41, 2674.14, 1197.51, + 2672.63, 1191.85, 2670.38, 1186.51, 2667.45, 1181.58, 2663.87, + 1177.15, 2659.7, 1173.26, 2655.01, 1170.0, 2649.87, 1167.41, 2644.35, + 1165.52, 2638.56, 1164.38, 2632.58, 1164.0, 2626.5, 1164.38, 2620.42, + 1165.52, 2614.44, 1167.41, 2608.65, 1170.0, 2603.13, 1173.26, 2597.99, + 1177.15, 2593.3, 1181.58, 2589.13, 1186.51, 2585.55, 1191.85, 2582.62, + 1197.51, 2580.37, 1203.41, 2578.86, 1209.45, 2578.1, 1215.55, 2578.1, + 1221.59, 2578.86, 1227.49, 2580.37, 1233.15, 2582.62, 1238.49, + 2585.55, 1243.42, 2589.13, 1247.85, 2593.3, 1251.74, 2597.99, 1255.0, + 2603.13, 1257.59, 2608.65, 1259.48, 2614.44, 1260.62, 2620.42 + ] + ], + "area": 7381.0, + "bbox": [1164.0, 2578.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 77, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [941.0, 494.0, 1016.0, 494.0, 1016.0, 567.0, 941.0, 567.0, 941.0, 494.0] + ], + "area": 5475.0, + "bbox": [941.0, 494.0, 75.0, 73.0], + "iscrowd": 0 + }, + { + "id": 78, + "image_id": 9, + "category_id": 3, + "segmentation": [[3301.0, 1652.0, 3269.0, 1708.0, 3333.0, 1708.0]], + "area": 1792.0, + "bbox": [3269.0, 1652.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 79, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3310.0, 839.0, 3405.0, 839.0, 3405.0, 902.0, 3310.0, 902.0, 3310.0, + 839.0 + ] + ], + "area": 5985.0, + "bbox": [3310.0, 839.0, 95.0, 63.0], + "iscrowd": 0 + }, + { + "id": 80, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 412.0, 1027.0, 472.0, 1027.0, 472.0, 1085.0, 412.0, 1085.0, 412.0, + 1027.0 + ] + ], + "area": 3480.0, + "bbox": [412.0, 1027.0, 60.0, 58.0], + "iscrowd": 0 + }, + { + "id": 81, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1064.0, 910.0, 1145.0, 910.0, 1145.0, 991.0, 1064.0, 991.0, 1064.0, + 910.0 + ] + ], + "area": 6561.0, + "bbox": [1064.0, 910.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 82, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 624.0, 1566.0, 685.0, 1566.0, 685.0, 1657.0, 624.0, 1657.0, 624.0, + 1566.0 + ] + ], + "area": 5551.0, + "bbox": [624.0, 1566.0, 61.0, 91.0], + "iscrowd": 0 + }, + { + "id": 83, + "image_id": 9, + "category_id": 3, + "segmentation": [[1356.5, 2730.0, 1329.0, 2778.0, 1384.0, 2778.0]], + "area": 1326.0, + "bbox": [1329.0, 2730.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 84, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [7.0, 1644.0, 74.0, 1644.0, 74.0, 1705.0, 7.0, 1705.0, 7.0, 1644.0] + ], + "area": 4087.0, + "bbox": [7.0, 1644.0, 67.0, 61.0], + "iscrowd": 0 + }, + { + "id": 85, + "image_id": 9, + "category_id": 3, + "segmentation": [[3232.0, 1682.0, 3189.0, 1757.0, 3275.0, 1757.0]], + "area": 3234.0, + "bbox": [3189.0, 1682.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 86, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 652.0, 979.5, 651.74, 983.57, 650.98, 987.58, 649.72, 991.46, 647.98, + 995.16, 645.79, 998.6, 643.19, 1001.75, 640.22, 1004.54, 636.91, + 1006.94, 633.34, 1008.91, 629.54, 1010.41, 625.59, 1011.42, 621.54, + 1011.94, 617.46, 1011.94, 613.41, 1011.42, 609.46, 1010.41, 605.66, + 1008.91, 602.09, 1006.94, 598.78, 1004.54, 595.81, 1001.75, 593.21, + 998.6, 591.02, 995.16, 589.28, 991.46, 588.02, 987.58, 587.26, 983.57, + 587.0, 979.5, 587.26, 975.43, 588.02, 971.42, 589.28, 967.54, 591.02, + 963.84, 593.21, 960.4, 595.81, 957.25, 598.78, 954.46, 602.09, 952.06, + 605.66, 950.09, 609.46, 948.59, 613.41, 947.58, 617.46, 947.06, + 621.54, 947.06, 625.59, 947.58, 629.54, 948.59, 633.34, 950.09, + 636.91, 952.06, 640.22, 954.46, 643.19, 957.25, 645.79, 960.4, 647.98, + 963.84, 649.72, 967.54, 650.98, 971.42, 651.74, 975.43 + ] + ], + "area": 3315.0, + "bbox": [587.0, 947.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 87, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2119.0, 1934.5, 2118.66, 1939.95, 2117.63, 1945.32, 2115.95, 1950.51, + 2113.62, 1955.46, 2110.69, 1960.07, 2107.21, 1964.28, 2103.23, + 1968.02, 2098.81, 1971.23, 2094.02, 1973.86, 2088.94, 1975.87, + 2083.65, 1977.23, 2078.23, 1977.91, 2072.77, 1977.91, 2067.35, + 1977.23, 2062.06, 1975.87, 2056.98, 1973.86, 2052.19, 1971.23, + 2047.77, 1968.02, 2043.79, 1964.28, 2040.31, 1960.07, 2037.38, + 1955.46, 2035.05, 1950.51, 2033.37, 1945.32, 2032.34, 1939.95, 2032.0, + 1934.5, 2032.34, 1929.05, 2033.37, 1923.68, 2035.05, 1918.49, 2037.38, + 1913.54, 2040.31, 1908.93, 2043.79, 1904.72, 2047.77, 1900.98, + 2052.19, 1897.77, 2056.98, 1895.14, 2062.06, 1893.13, 2067.35, + 1891.77, 2072.77, 1891.09, 2078.23, 1891.09, 2083.65, 1891.77, + 2088.94, 1893.13, 2094.02, 1895.14, 2098.81, 1897.77, 2103.23, + 1900.98, 2107.21, 1904.72, 2110.69, 1908.93, 2113.62, 1913.54, + 2115.95, 1918.49, 2117.63, 1923.68, 2118.66, 1929.05 + ] + ], + "area": 5927.0, + "bbox": [2032.0, 1891.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 88, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2329.5, 1594.0, 2335.08, 1593.65, 2340.57, 1592.6, 2345.88, 1590.88, + 2350.94, 1588.5, 2355.66, 1585.5, 2359.96, 1581.94, 2363.79, 1577.87, + 2367.07, 1573.34, 2369.76, 1568.45, 2371.82, 1563.25, 2373.21, + 1557.84, 2373.91, 1552.29, 2373.91, 1546.71, 2373.21, 1541.16, + 2371.82, 1535.75, 2369.76, 1530.55, 2367.07, 1525.66, 2363.79, + 1521.13, 2359.96, 1517.06, 2355.66, 1513.5, 2350.94, 1510.5, 2345.88, + 1508.12, 2340.57, 1506.4, 2335.08, 1505.35, 2329.5, 1505.0, 2323.92, + 1505.35, 2318.43, 1506.4, 2313.12, 1508.12, 2308.06, 1510.5, 2303.34, + 1513.5, 2299.04, 1517.06, 2295.21, 1521.13, 2291.93, 1525.66, 2289.24, + 1530.55, 2287.18, 1535.75, 2285.79, 1541.16, 2285.09, 1546.71, + 2285.09, 1552.29, 2285.79, 1557.84, 2287.18, 1563.25, 2289.24, + 1568.45, 2291.93, 1573.34, 2295.21, 1577.87, 2299.04, 1581.94, + 2303.34, 1585.5, 2308.06, 1588.5, 2313.12, 1590.88, 2318.43, 1592.6, + 2323.92, 1593.65 + ] + ], + "area": 6209.0, + "bbox": [2285.09, 1505.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 89, + "image_id": 9, + "category_id": 3, + "segmentation": [[99.0, 2795.0, 72.0, 2842.0, 126.0, 2842.0]], + "area": 1274.0, + "bbox": [72.0, 2795.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 90, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2632.0, 2119.5, 2631.76, 2123.32, 2631.04, 2127.09, 2629.86, 2130.73, + 2628.23, 2134.19, 2626.18, 2137.43, 2623.73, 2140.38, 2620.94, 2143.0, + 2617.84, 2145.25, 2614.49, 2147.1, 2610.93, 2148.51, 2607.22, 2149.46, + 2603.42, 2149.94, 2599.58, 2149.94, 2595.78, 2149.46, 2592.07, + 2148.51, 2588.51, 2147.1, 2585.16, 2145.25, 2582.06, 2143.0, 2579.27, + 2140.38, 2576.82, 2137.43, 2574.77, 2134.19, 2573.14, 2130.73, + 2571.96, 2127.09, 2571.24, 2123.32, 2571.0, 2119.5, 2571.24, 2115.68, + 2571.96, 2111.91, 2573.14, 2108.27, 2574.77, 2104.81, 2576.82, + 2101.57, 2579.27, 2098.62, 2582.06, 2096.0, 2585.16, 2093.75, 2588.51, + 2091.9, 2592.07, 2090.49, 2595.78, 2089.54, 2599.58, 2089.06, 2603.42, + 2089.06, 2607.22, 2089.54, 2610.93, 2090.49, 2614.49, 2091.9, 2617.84, + 2093.75, 2620.94, 2096.0, 2623.73, 2098.62, 2626.18, 2101.57, 2628.23, + 2104.81, 2629.86, 2108.27, 2631.04, 2111.91, 2631.76, 2115.68 + ] + ], + "area": 2915.0, + "bbox": [2571.0, 2089.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 91, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2484.0, 1414.0, 2576.0, 1414.0, 2576.0, 1474.0, 2484.0, 1474.0, + 2484.0, 1414.0 + ] + ], + "area": 5520.0, + "bbox": [2484.0, 1414.0, 92.0, 60.0], + "iscrowd": 0 + }, + { + "id": 92, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2655.0, 2535.5, 2654.7, 2540.33, 2653.79, 2545.07, 2652.3, 2549.67, + 2650.24, 2554.05, 2647.65, 2558.13, 2644.57, 2561.86, 2641.04, + 2565.16, 2637.13, 2568.01, 2632.89, 2570.34, 2628.4, 2572.12, 2623.71, + 2573.32, 2618.92, 2573.92, 2614.08, 2573.92, 2609.29, 2573.32, 2604.6, + 2572.12, 2600.11, 2570.34, 2595.87, 2568.01, 2591.96, 2565.16, + 2588.43, 2561.86, 2585.35, 2558.13, 2582.76, 2554.05, 2580.7, 2549.67, + 2579.21, 2545.07, 2578.3, 2540.33, 2578.0, 2535.5, 2578.3, 2530.67, + 2579.21, 2525.93, 2580.7, 2521.33, 2582.76, 2516.95, 2585.35, 2512.87, + 2588.43, 2509.14, 2591.96, 2505.84, 2595.87, 2502.99, 2600.11, + 2500.66, 2604.6, 2498.88, 2609.29, 2497.68, 2614.08, 2497.08, 2618.92, + 2497.08, 2623.71, 2497.68, 2628.4, 2498.88, 2632.89, 2500.66, 2637.13, + 2502.99, 2641.04, 2505.84, 2644.57, 2509.14, 2647.65, 2512.87, + 2650.24, 2516.95, 2652.3, 2521.33, 2653.79, 2525.93, 2654.7, 2530.67 + ] + ], + "area": 4653.0, + "bbox": [2578.0, 2497.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 93, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 854.0, 2835.0, 925.0, 2835.0, 925.0, 2930.0, 854.0, 2930.0, 854.0, + 2835.0 + ] + ], + "area": 6745.0, + "bbox": [854.0, 2835.0, 71.0, 95.0], + "iscrowd": 0 + }, + { + "id": 94, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1463.0, 1290.0, 1526.0, 1290.0, 1526.0, 1353.0, 1463.0, 1353.0, + 1463.0, 1290.0 + ] + ], + "area": 3969.0, + "bbox": [1463.0, 1290.0, 63.0, 63.0], + "iscrowd": 0 + }, + { + "id": 95, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [204.0, 313.0, 299.0, 313.0, 299.0, 401.0, 204.0, 401.0, 204.0, 313.0] + ], + "area": 8360.0, + "bbox": [204.0, 313.0, 95.0, 88.0], + "iscrowd": 0 + }, + { + "id": 96, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2790.0, 1399.0, 2879.0, 1399.0, 2879.0, 1488.0, 2790.0, 1488.0, + 2790.0, 1399.0 + ] + ], + "area": 7921.0, + "bbox": [2790.0, 1399.0, 89.0, 89.0], + "iscrowd": 0 + }, + { + "id": 97, + "image_id": 9, + "category_id": 3, + "segmentation": [[584.0, 676.0, 553.0, 730.0, 615.0, 730.0]], + "area": 1680.0, + "bbox": [553.0, 676.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 98, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2804.0, 1615.0, 2895.0, 1615.0, 2895.0, 1690.0, 2804.0, 1690.0, + 2804.0, 1615.0 + ] + ], + "area": 6825.0, + "bbox": [2804.0, 1615.0, 91.0, 75.0], + "iscrowd": 0 + }, + { + "id": 99, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 3147.5, 1665.0, 3152.83, 1664.66, 3158.07, 1663.66, 3163.15, 1662.02, + 3167.97, 1659.74, 3172.48, 1656.88, 3176.59, 1653.48, 3180.25, + 1649.59, 3183.38, 1645.27, 3185.96, 1640.6, 3187.92, 1635.63, 3189.25, + 1630.46, 3189.92, 1625.17, 3189.92, 1619.83, 3189.25, 1614.54, + 3187.92, 1609.37, 3185.96, 1604.4, 3183.38, 1599.73, 3180.25, 1595.41, + 3176.59, 1591.52, 3172.48, 1588.12, 3167.97, 1585.26, 3163.15, + 1582.98, 3158.07, 1581.34, 3152.83, 1580.34, 3147.5, 1580.0, 3142.17, + 1580.34, 3136.93, 1581.34, 3131.85, 1582.98, 3127.03, 1585.26, + 3122.52, 1588.12, 3118.41, 1591.52, 3114.75, 1595.41, 3111.62, + 1599.73, 3109.04, 1604.4, 3107.08, 1609.37, 3105.75, 1614.54, 3105.08, + 1619.83, 3105.08, 1625.17, 3105.75, 1630.46, 3107.08, 1635.63, + 3109.04, 1640.6, 3111.62, 1645.27, 3114.75, 1649.59, 3118.41, 1653.48, + 3122.52, 1656.88, 3127.03, 1659.74, 3131.85, 1662.02, 3136.93, + 1663.66, 3142.17, 1664.66 + ] + ], + "area": 5651.0, + "bbox": [3105.08, 1580.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 100, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2473.0, 1024.0, 2564.0, 1024.0, 2564.0, 1109.0, 2473.0, 1109.0, + 2473.0, 1024.0 + ] + ], + "area": 7735.0, + "bbox": [2473.0, 1024.0, 91.0, 85.0], + "iscrowd": 0 + }, + { + "id": 101, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1581.0, 1248.0, 1676.0, 1248.0, 1676.0, 1319.0, 1581.0, 1319.0, + 1581.0, 1248.0 + ] + ], + "area": 6745.0, + "bbox": [1581.0, 1248.0, 95.0, 71.0], + "iscrowd": 0 + }, + { + "id": 102, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2460.5, 827.0, 2464.07, 826.78, 2467.59, 826.1, 2470.99, 825.0, + 2474.23, 823.47, 2477.25, 821.56, 2480.01, 819.28, 2482.46, 816.67, + 2484.56, 813.77, 2486.29, 810.63, 2487.61, 807.31, 2488.5, 803.84, + 2488.94, 800.29, 2488.94, 796.71, 2488.5, 793.16, 2487.61, 789.69, + 2486.29, 786.37, 2484.56, 783.23, 2482.46, 780.33, 2480.01, 777.72, + 2477.25, 775.44, 2474.23, 773.53, 2470.99, 772.0, 2467.59, 770.9, + 2464.07, 770.22, 2460.5, 770.0, 2456.93, 770.22, 2453.41, 770.9, + 2450.01, 772.0, 2446.77, 773.53, 2443.75, 775.44, 2440.99, 777.72, + 2438.54, 780.33, 2436.44, 783.23, 2434.71, 786.37, 2433.39, 789.69, + 2432.5, 793.16, 2432.06, 796.71, 2432.06, 800.29, 2432.5, 803.84, + 2433.39, 807.31, 2434.71, 810.63, 2436.44, 813.77, 2438.54, 816.67, + 2440.99, 819.28, 2443.75, 821.56, 2446.77, 823.47, 2450.01, 825.0, + 2453.41, 826.1, 2456.93, 826.78 + ] + ], + "area": 2547.0, + "bbox": [2432.06, 770.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 103, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 783.0, 2043.0, 874.0, 2043.0, 874.0, 2136.0, 783.0, 2136.0, 783.0, + 2043.0 + ] + ], + "area": 8463.0, + "bbox": [783.0, 2043.0, 91.0, 93.0], + "iscrowd": 0 + }, + { + "id": 104, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1861.0, 1182.5, 1860.76, 1186.32, 1860.04, 1190.09, 1858.86, 1193.73, + 1857.23, 1197.19, 1855.18, 1200.43, 1852.73, 1203.38, 1849.94, 1206.0, + 1846.84, 1208.25, 1843.49, 1210.1, 1839.93, 1211.51, 1836.22, 1212.46, + 1832.42, 1212.94, 1828.58, 1212.94, 1824.78, 1212.46, 1821.07, + 1211.51, 1817.51, 1210.1, 1814.16, 1208.25, 1811.06, 1206.0, 1808.27, + 1203.38, 1805.82, 1200.43, 1803.77, 1197.19, 1802.14, 1193.73, + 1800.96, 1190.09, 1800.24, 1186.32, 1800.0, 1182.5, 1800.24, 1178.68, + 1800.96, 1174.91, 1802.14, 1171.27, 1803.77, 1167.81, 1805.82, + 1164.57, 1808.27, 1161.62, 1811.06, 1159.0, 1814.16, 1156.75, 1817.51, + 1154.9, 1821.07, 1153.49, 1824.78, 1152.54, 1828.58, 1152.06, 1832.42, + 1152.06, 1836.22, 1152.54, 1839.93, 1153.49, 1843.49, 1154.9, 1846.84, + 1156.75, 1849.94, 1159.0, 1852.73, 1161.62, 1855.18, 1164.57, 1857.23, + 1167.81, 1858.86, 1171.27, 1860.04, 1174.91, 1860.76, 1178.68 + ] + ], + "area": 2915.0, + "bbox": [1800.0, 1152.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 105, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 469.0, 1870.5, 468.76, 1874.32, 468.04, 1878.09, 466.86, 1881.73, + 465.23, 1885.19, 463.18, 1888.43, 460.73, 1891.38, 457.94, 1894.0, + 454.84, 1896.25, 451.49, 1898.1, 447.93, 1899.51, 444.22, 1900.46, + 440.42, 1900.94, 436.58, 1900.94, 432.78, 1900.46, 429.07, 1899.51, + 425.51, 1898.1, 422.16, 1896.25, 419.06, 1894.0, 416.27, 1891.38, + 413.82, 1888.43, 411.77, 1885.19, 410.14, 1881.73, 408.96, 1878.09, + 408.24, 1874.32, 408.0, 1870.5, 408.24, 1866.68, 408.96, 1862.91, + 410.14, 1859.27, 411.77, 1855.81, 413.82, 1852.57, 416.27, 1849.62, + 419.06, 1847.0, 422.16, 1844.75, 425.51, 1842.9, 429.07, 1841.49, + 432.78, 1840.54, 436.58, 1840.06, 440.42, 1840.06, 444.22, 1840.54, + 447.93, 1841.49, 451.49, 1842.9, 454.84, 1844.75, 457.94, 1847.0, + 460.73, 1849.62, 463.18, 1852.57, 465.23, 1855.81, 466.86, 1859.27, + 468.04, 1862.91, 468.76, 1866.68 + ] + ], + "area": 2915.0, + "bbox": [408.0, 1840.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 106, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3229.0, 1212.0, 3293.0, 1212.0, 3293.0, 1273.0, 3229.0, 1273.0, + 3229.0, 1212.0 + ] + ], + "area": 3904.0, + "bbox": [3229.0, 1212.0, 64.0, 61.0], + "iscrowd": 0 + }, + { + "id": 107, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2930.0, 2483.5, 2929.8, 2486.7, 2929.2, 2489.84, 2928.21, 2492.89, + 2926.85, 2495.78, 2925.13, 2498.49, 2923.09, 2500.96, 2920.75, + 2503.15, 2918.16, 2505.03, 2915.36, 2506.57, 2912.38, 2507.75, + 2909.28, 2508.55, 2906.1, 2508.95, 2902.9, 2508.95, 2899.72, 2508.55, + 2896.62, 2507.75, 2893.64, 2506.57, 2890.84, 2505.03, 2888.25, + 2503.15, 2885.91, 2500.96, 2883.87, 2498.49, 2882.15, 2495.78, + 2880.79, 2492.89, 2879.8, 2489.84, 2879.2, 2486.7, 2879.0, 2483.5, + 2879.2, 2480.3, 2879.8, 2477.16, 2880.79, 2474.11, 2882.15, 2471.22, + 2883.87, 2468.51, 2885.91, 2466.04, 2888.25, 2463.85, 2890.84, + 2461.97, 2893.64, 2460.43, 2896.62, 2459.25, 2899.72, 2458.45, 2902.9, + 2458.05, 2906.1, 2458.05, 2909.28, 2458.45, 2912.38, 2459.25, 2915.36, + 2460.43, 2918.16, 2461.97, 2920.75, 2463.85, 2923.09, 2466.04, + 2925.13, 2468.51, 2926.85, 2471.22, 2928.21, 2474.11, 2929.2, 2477.16, + 2929.8, 2480.3 + ] + ], + "area": 2037.0, + "bbox": [2879.0, 2458.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 108, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2779.0, 2488.5, 2778.8, 2491.7, 2778.2, 2494.84, 2777.21, 2497.89, + 2775.85, 2500.78, 2774.13, 2503.49, 2772.09, 2505.96, 2769.75, + 2508.15, 2767.16, 2510.03, 2764.36, 2511.57, 2761.38, 2512.75, + 2758.28, 2513.55, 2755.1, 2513.95, 2751.9, 2513.95, 2748.72, 2513.55, + 2745.62, 2512.75, 2742.64, 2511.57, 2739.84, 2510.03, 2737.25, + 2508.15, 2734.91, 2505.96, 2732.87, 2503.49, 2731.15, 2500.78, + 2729.79, 2497.89, 2728.8, 2494.84, 2728.2, 2491.7, 2728.0, 2488.5, + 2728.2, 2485.3, 2728.8, 2482.16, 2729.79, 2479.11, 2731.15, 2476.22, + 2732.87, 2473.51, 2734.91, 2471.04, 2737.25, 2468.85, 2739.84, + 2466.97, 2742.64, 2465.43, 2745.62, 2464.25, 2748.72, 2463.45, 2751.9, + 2463.05, 2755.1, 2463.05, 2758.28, 2463.45, 2761.38, 2464.25, 2764.36, + 2465.43, 2767.16, 2466.97, 2769.75, 2468.85, 2772.09, 2471.04, + 2774.13, 2473.51, 2775.85, 2476.22, 2777.21, 2479.11, 2778.2, 2482.16, + 2778.8, 2485.3 + ] + ], + "area": 2037.0, + "bbox": [2728.0, 2463.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 109, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 490.5, 1417.0, 494.7, 1416.74, 498.83, 1415.95, 502.83, 1414.65, + 506.64, 1412.86, 510.19, 1410.6, 513.43, 1407.92, 516.31, 1404.85, + 518.78, 1401.45, 520.81, 1397.76, 522.36, 1393.85, 523.41, 1389.78, + 523.93, 1385.6, 523.93, 1381.4, 523.41, 1377.22, 522.36, 1373.15, + 520.81, 1369.24, 518.78, 1365.55, 516.31, 1362.15, 513.43, 1359.08, + 510.19, 1356.4, 506.64, 1354.14, 502.83, 1352.35, 498.83, 1351.05, + 494.7, 1350.26, 490.5, 1350.0, 486.3, 1350.26, 482.17, 1351.05, + 478.17, 1352.35, 474.36, 1354.14, 470.81, 1356.4, 467.57, 1359.08, + 464.69, 1362.15, 462.22, 1365.55, 460.19, 1369.24, 458.64, 1373.15, + 457.59, 1377.22, 457.07, 1381.4, 457.07, 1385.6, 457.59, 1389.78, + 458.64, 1393.85, 460.19, 1397.76, 462.22, 1401.45, 464.69, 1404.85, + 467.57, 1407.92, 470.81, 1410.6, 474.36, 1412.86, 478.17, 1414.65, + 482.17, 1415.95, 486.3, 1416.74 + ] + ], + "area": 3520.0, + "bbox": [457.07, 1350.0, 66.86, 67.0], + "iscrowd": 0 + }, + { + "id": 110, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2073.0, 2681.0, 2156.0, 2681.0, 2156.0, 2744.0, 2073.0, 2744.0, + 2073.0, 2681.0 + ] + ], + "area": 5229.0, + "bbox": [2073.0, 2681.0, 83.0, 63.0], + "iscrowd": 0 + }, + { + "id": 111, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [2399.0, 99.0, 2486.0, 99.0, 2486.0, 152.0, 2399.0, 152.0, 2399.0, 99.0] + ], + "area": 4611.0, + "bbox": [2399.0, 99.0, 87.0, 53.0], + "iscrowd": 0 + }, + { + "id": 112, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3262.0, 2911.0, 3359.0, 2911.0, 3359.0, 3012.0, 3262.0, 3012.0, + 3262.0, 2911.0 + ] + ], + "area": 9797.0, + "bbox": [3262.0, 2911.0, 97.0, 101.0], + "iscrowd": 0 + }, + { + "id": 113, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1896.0, 569.0, 1989.0, 569.0, 1989.0, 624.0, 1896.0, 624.0, 1896.0, + 569.0 + ] + ], + "area": 5115.0, + "bbox": [1896.0, 569.0, 93.0, 55.0], + "iscrowd": 0 + }, + { + "id": 114, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 854.0, 2964.5, 853.63, 2970.45, 852.51, 2976.31, 850.66, 2981.99, + 848.12, 2987.38, 844.93, 2992.42, 841.13, 2997.02, 836.78, 3001.1, + 831.95, 3004.61, 826.72, 3007.48, 821.18, 3009.68, 815.4, 3011.16, + 809.48, 3011.91, 803.52, 3011.91, 797.6, 3011.16, 791.82, 3009.68, + 786.28, 3007.48, 781.05, 3004.61, 776.22, 3001.1, 771.87, 2997.02, + 768.07, 2992.42, 764.88, 2987.38, 762.34, 2981.99, 760.49, 2976.31, + 759.37, 2970.45, 759.0, 2964.5, 759.37, 2958.55, 760.49, 2952.69, + 762.34, 2947.01, 764.88, 2941.62, 768.07, 2936.58, 771.87, 2931.98, + 776.22, 2927.9, 781.05, 2924.39, 786.28, 2921.52, 791.82, 2919.32, + 797.6, 2917.84, 803.52, 2917.09, 809.48, 2917.09, 815.4, 2917.84, + 821.18, 2919.32, 826.72, 2921.52, 831.95, 2924.39, 836.78, 2927.9, + 841.13, 2931.98, 844.93, 2936.58, 848.12, 2941.62, 850.66, 2947.01, + 852.51, 2952.69, 853.63, 2958.55 + ] + ], + "area": 7083.0, + "bbox": [759.0, 2917.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 115, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2269.0, 1233.5, 2268.66, 1238.83, 2267.66, 1244.07, 2266.02, 1249.15, + 2263.74, 1253.97, 2260.88, 1258.48, 2257.48, 1262.59, 2253.59, + 1266.25, 2249.27, 1269.38, 2244.6, 1271.96, 2239.63, 1273.92, 2234.46, + 1275.25, 2229.17, 1275.92, 2223.83, 1275.92, 2218.54, 1275.25, + 2213.37, 1273.92, 2208.4, 1271.96, 2203.73, 1269.38, 2199.41, 1266.25, + 2195.52, 1262.59, 2192.12, 1258.48, 2189.26, 1253.97, 2186.98, + 1249.15, 2185.34, 1244.07, 2184.34, 1238.83, 2184.0, 1233.5, 2184.34, + 1228.17, 2185.34, 1222.93, 2186.98, 1217.85, 2189.26, 1213.03, + 2192.12, 1208.52, 2195.52, 1204.41, 2199.41, 1200.75, 2203.73, + 1197.62, 2208.4, 1195.04, 2213.37, 1193.08, 2218.54, 1191.75, 2223.83, + 1191.08, 2229.17, 1191.08, 2234.46, 1191.75, 2239.63, 1193.08, 2244.6, + 1195.04, 2249.27, 1197.62, 2253.59, 1200.75, 2257.48, 1204.41, + 2260.88, 1208.52, 2263.74, 1213.03, 2266.02, 1217.85, 2267.66, + 1222.93, 2268.66, 1228.17 + ] + ], + "area": 5651.0, + "bbox": [2184.0, 1191.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 116, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3043.0, 2118.0, 3112.0, 2118.0, 3112.0, 2208.0, 3043.0, 2208.0, + 3043.0, 2118.0 + ] + ], + "area": 6210.0, + "bbox": [3043.0, 2118.0, 69.0, 90.0], + "iscrowd": 0 + }, + { + "id": 117, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3303.0, 1312.0, 3358.0, 1312.0, 3358.0, 1403.0, 3303.0, 1403.0, + 3303.0, 1312.0 + ] + ], + "area": 5005.0, + "bbox": [3303.0, 1312.0, 55.0, 91.0], + "iscrowd": 0 + }, + { + "id": 118, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 1724.0, 74.5, 1723.66, 79.95, 1722.63, 85.32, 1720.95, 90.51, 1718.62, + 95.46, 1715.69, 100.07, 1712.21, 104.28, 1708.23, 108.02, 1703.81, + 111.23, 1699.02, 113.86, 1693.94, 115.87, 1688.65, 117.23, 1683.23, + 117.91, 1677.77, 117.91, 1672.35, 117.23, 1667.06, 115.87, 1661.98, + 113.86, 1657.19, 111.23, 1652.77, 108.02, 1648.79, 104.28, 1645.31, + 100.07, 1642.38, 95.46, 1640.05, 90.51, 1638.37, 85.32, 1637.34, + 79.95, 1637.0, 74.5, 1637.34, 69.05, 1638.37, 63.68, 1640.05, 58.49, + 1642.38, 53.54, 1645.31, 48.93, 1648.79, 44.72, 1652.77, 40.98, + 1657.19, 37.77, 1661.98, 35.14, 1667.06, 33.13, 1672.35, 31.77, + 1677.77, 31.09, 1683.23, 31.09, 1688.65, 31.77, 1693.94, 33.13, + 1699.02, 35.14, 1703.81, 37.77, 1708.23, 40.98, 1712.21, 44.72, + 1715.69, 48.93, 1718.62, 53.54, 1720.95, 58.49, 1722.63, 63.68, + 1723.66, 69.05 + ] + ], + "area": 5927.0, + "bbox": [1637.0, 31.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 119, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1816.0, 208.0, 1909.0, 208.0, 1909.0, 275.0, 1816.0, 275.0, 1816.0, + 208.0 + ] + ], + "area": 6231.0, + "bbox": [1816.0, 208.0, 93.0, 67.0], + "iscrowd": 0 + }, + { + "id": 120, + "image_id": 9, + "category_id": 3, + "segmentation": [[2741.5, 718.0, 2702.0, 787.0, 2781.0, 787.0]], + "area": 2734.0, + "bbox": [2702.0, 718.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 121, + "image_id": 9, + "category_id": 3, + "segmentation": [[2778.5, 1718.0, 2742.0, 1782.0, 2815.0, 1782.0]], + "area": 2341.0, + "bbox": [2742.0, 1718.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 122, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1274.0, 3060.0, 1343.0, 3060.0, 1343.0, 3131.0, 1274.0, 3131.0, + 1274.0, 3060.0 + ] + ], + "area": 4899.0, + "bbox": [1274.0, 3060.0, 69.0, 71.0], + "iscrowd": 0 + }, + { + "id": 123, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1463.0, 2388.0, 1514.0, 2388.0, 1514.0, 2448.0, 1463.0, 2448.0, + 1463.0, 2388.0 + ] + ], + "area": 3060.0, + "bbox": [1463.0, 2388.0, 51.0, 60.0], + "iscrowd": 0 + }, + { + "id": 124, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 752.0, 1264.0, 817.0, 1264.0, 817.0, 1315.0, 752.0, 1315.0, 752.0, + 1264.0 + ] + ], + "area": 3315.0, + "bbox": [752.0, 1264.0, 65.0, 51.0], + "iscrowd": 0 + }, + { + "id": 125, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 236.0, 1598.0, 324.0, 1598.0, 324.0, 1696.0, 236.0, 1696.0, 236.0, + 1598.0 + ] + ], + "area": 8624.0, + "bbox": [236.0, 1598.0, 88.0, 98.0], + "iscrowd": 0 + }, + { + "id": 126, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 417.5, 2755.0, 420.95, 2754.78, 424.34, 2754.14, 427.62, 2753.07, + 430.75, 2751.6, 433.66, 2749.75, 436.33, 2747.55, 438.69, 2745.03, + 440.72, 2742.24, 442.38, 2739.21, 443.65, 2736.0, 444.51, 2732.65, + 444.95, 2729.23, 444.95, 2725.77, 444.51, 2722.35, 443.65, 2719.0, + 442.38, 2715.79, 440.72, 2712.76, 438.69, 2709.97, 436.33, 2707.45, + 433.66, 2705.25, 430.75, 2703.4, 427.62, 2701.93, 424.34, 2700.86, + 420.95, 2700.22, 417.5, 2700.0, 414.05, 2700.22, 410.66, 2700.86, + 407.38, 2701.93, 404.25, 2703.4, 401.34, 2705.25, 398.67, 2707.45, + 396.31, 2709.97, 394.28, 2712.76, 392.62, 2715.79, 391.35, 2719.0, + 390.49, 2722.35, 390.05, 2725.77, 390.05, 2729.23, 390.49, 2732.65, + 391.35, 2736.0, 392.62, 2739.21, 394.28, 2742.24, 396.31, 2745.03, + 398.67, 2747.55, 401.34, 2749.75, 404.25, 2751.6, 407.38, 2753.07, + 410.66, 2754.14, 414.05, 2754.78 + ] + ], + "area": 2375.0, + "bbox": [390.05, 2700.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 127, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2414.0, 2113.0, 2495.0, 2113.0, 2495.0, 2214.0, 2414.0, 2214.0, + 2414.0, 2113.0 + ] + ], + "area": 8181.0, + "bbox": [2414.0, 2113.0, 81.0, 101.0], + "iscrowd": 0 + }, + { + "id": 128, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 345.5, 1756.0, 349.07, 1755.78, 352.59, 1755.1, 355.99, 1754.0, + 359.23, 1752.47, 362.25, 1750.56, 365.01, 1748.28, 367.46, 1745.67, + 369.56, 1742.77, 371.29, 1739.63, 372.61, 1736.31, 373.5, 1732.84, + 373.94, 1729.29, 373.94, 1725.71, 373.5, 1722.16, 372.61, 1718.69, + 371.29, 1715.37, 369.56, 1712.23, 367.46, 1709.33, 365.01, 1706.72, + 362.25, 1704.44, 359.23, 1702.53, 355.99, 1701.0, 352.59, 1699.9, + 349.07, 1699.22, 345.5, 1699.0, 341.93, 1699.22, 338.41, 1699.9, + 335.01, 1701.0, 331.77, 1702.53, 328.75, 1704.44, 325.99, 1706.72, + 323.54, 1709.33, 321.44, 1712.23, 319.71, 1715.37, 318.39, 1718.69, + 317.5, 1722.16, 317.06, 1725.71, 317.06, 1729.29, 317.5, 1732.84, + 318.39, 1736.31, 319.71, 1739.63, 321.44, 1742.77, 323.54, 1745.67, + 325.99, 1748.28, 328.75, 1750.56, 331.77, 1752.47, 335.01, 1754.0, + 338.41, 1755.1, 341.93, 1755.78 + ] + ], + "area": 2547.0, + "bbox": [317.06, 1699.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 129, + "image_id": 9, + "category_id": 3, + "segmentation": [[636.0, 2954.0, 598.0, 3020.0, 674.0, 3020.0]], + "area": 2514.0, + "bbox": [598.0, 2954.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 130, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2723.0, 2921.0, 2822.0, 2921.0, 2822.0, 3018.0, 2723.0, 3018.0, + 2723.0, 2921.0 + ] + ], + "area": 9603.0, + "bbox": [2723.0, 2921.0, 99.0, 97.0], + "iscrowd": 0 + }, + { + "id": 131, + "image_id": 9, + "category_id": 3, + "segmentation": [[1890.0, 2309.0, 1845.0, 2388.0, 1935.0, 2388.0]], + "area": 3564.0, + "bbox": [1845.0, 2309.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 132, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3090.0, 2893.0, 3157.0, 2893.0, 3157.0, 2978.0, 3090.0, 2978.0, + 3090.0, 2893.0 + ] + ], + "area": 5695.0, + "bbox": [3090.0, 2893.0, 67.0, 85.0], + "iscrowd": 0 + }, + { + "id": 133, + "image_id": 9, + "category_id": 3, + "segmentation": [[217.5, 2939.0, 186.0, 2994.0, 249.0, 2994.0]], + "area": 1739.0, + "bbox": [186.0, 2939.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 134, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 2226.0, 1422.0, 2299.0, 1422.0, 2299.0, 1507.0, 2226.0, 1507.0, + 2226.0, 1422.0 + ] + ], + "area": 6205.0, + "bbox": [2226.0, 1422.0, 73.0, 85.0], + "iscrowd": 0 + }, + { + "id": 135, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1706.0, 2794.0, 1767.0, 2794.0, 1767.0, 2880.0, 1706.0, 2880.0, + 1706.0, 2794.0 + ] + ], + "area": 5246.0, + "bbox": [1706.0, 2794.0, 61.0, 86.0], + "iscrowd": 0 + }, + { + "id": 136, + "image_id": 9, + "category_id": 3, + "segmentation": [[1802.0, 1407.0, 1771.0, 1461.0, 1833.0, 1461.0]], + "area": 1680.0, + "bbox": [1771.0, 1407.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 137, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2876.5, 2822.0, 2881.95, 2821.66, 2887.32, 2820.63, 2892.51, 2818.95, + 2897.46, 2816.62, 2902.07, 2813.69, 2906.28, 2810.21, 2910.02, + 2806.23, 2913.23, 2801.81, 2915.86, 2797.02, 2917.87, 2791.94, + 2919.23, 2786.65, 2919.91, 2781.23, 2919.91, 2775.77, 2919.23, + 2770.35, 2917.87, 2765.06, 2915.86, 2759.98, 2913.23, 2755.19, + 2910.02, 2750.77, 2906.28, 2746.79, 2902.07, 2743.31, 2897.46, + 2740.38, 2892.51, 2738.05, 2887.32, 2736.37, 2881.95, 2735.34, 2876.5, + 2735.0, 2871.05, 2735.34, 2865.68, 2736.37, 2860.49, 2738.05, 2855.54, + 2740.38, 2850.93, 2743.31, 2846.72, 2746.79, 2842.98, 2750.77, + 2839.77, 2755.19, 2837.14, 2759.98, 2835.13, 2765.06, 2833.77, + 2770.35, 2833.09, 2775.77, 2833.09, 2781.23, 2833.77, 2786.65, + 2835.13, 2791.94, 2837.14, 2797.02, 2839.77, 2801.81, 2842.98, + 2806.23, 2846.72, 2810.21, 2850.93, 2813.69, 2855.54, 2816.62, + 2860.49, 2818.95, 2865.68, 2820.63, 2871.05, 2821.66 + ] + ], + "area": 5930.0, + "bbox": [2833.09, 2735.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 138, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 1904.0, 946.0, 2001.0, 946.0, 2001.0, 1005.0, 1904.0, 1005.0, 1904.0, + 946.0 + ] + ], + "area": 5723.0, + "bbox": [1904.0, 946.0, 97.0, 59.0], + "iscrowd": 0 + }, + { + "id": 139, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 3102.0, 2992.0, 3180.0, 2992.0, 3180.0, 3063.0, 3102.0, 3063.0, + 3102.0, 2992.0 + ] + ], + "area": 5538.0, + "bbox": [3102.0, 2992.0, 78.0, 71.0], + "iscrowd": 0 + }, + { + "id": 140, + "image_id": 9, + "category_id": 3, + "segmentation": [[1801.0, 1017.0, 1762.0, 1085.0, 1840.0, 1085.0]], + "area": 2660.0, + "bbox": [1762.0, 1017.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 141, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 57.0, 1304.5, 56.81, 1307.57, 56.23, 1310.59, 55.28, 1313.52, 53.97, + 1316.3, 52.32, 1318.9, 50.36, 1321.27, 48.12, 1323.38, 45.63, 1325.19, + 42.93, 1326.67, 40.07, 1327.8, 37.09, 1328.57, 34.04, 1328.95, 30.96, + 1328.95, 27.91, 1328.57, 24.93, 1327.8, 22.07, 1326.67, 19.37, + 1325.19, 16.88, 1323.38, 14.64, 1321.27, 12.68, 1318.9, 11.03, 1316.3, + 9.72, 1313.52, 8.77, 1310.59, 8.19, 1307.57, 8.0, 1304.5, 8.19, + 1301.43, 8.77, 1298.41, 9.72, 1295.48, 11.03, 1292.7, 12.68, 1290.1, + 14.64, 1287.73, 16.88, 1285.62, 19.37, 1283.81, 22.07, 1282.33, 24.93, + 1281.2, 27.91, 1280.43, 30.96, 1280.05, 34.04, 1280.05, 37.09, + 1280.43, 40.07, 1281.2, 42.93, 1282.33, 45.63, 1283.81, 48.12, + 1285.62, 50.36, 1287.73, 52.32, 1290.1, 53.97, 1292.7, 55.28, 1295.48, + 56.23, 1298.41, 56.81, 1301.43 + ] + ], + "area": 1885.0, + "bbox": [8.0, 1280.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 142, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 763.0, 1537.5, 762.8, 1540.7, 762.2, 1543.84, 761.21, 1546.89, 759.85, + 1549.78, 758.13, 1552.49, 756.09, 1554.96, 753.75, 1557.15, 751.16, + 1559.03, 748.36, 1560.57, 745.38, 1561.75, 742.28, 1562.55, 739.1, + 1562.95, 735.9, 1562.95, 732.72, 1562.55, 729.62, 1561.75, 726.64, + 1560.57, 723.84, 1559.03, 721.25, 1557.15, 718.91, 1554.96, 716.87, + 1552.49, 715.15, 1549.78, 713.79, 1546.89, 712.8, 1543.84, 712.2, + 1540.7, 712.0, 1537.5, 712.2, 1534.3, 712.8, 1531.16, 713.79, 1528.11, + 715.15, 1525.22, 716.87, 1522.51, 718.91, 1520.04, 721.25, 1517.85, + 723.84, 1515.97, 726.64, 1514.43, 729.62, 1513.25, 732.72, 1512.45, + 735.9, 1512.05, 739.1, 1512.05, 742.28, 1512.45, 745.38, 1513.25, + 748.36, 1514.43, 751.16, 1515.97, 753.75, 1517.85, 756.09, 1520.04, + 758.13, 1522.51, 759.85, 1525.22, 761.21, 1528.11, 762.2, 1531.16, + 762.8, 1534.3 + ] + ], + "area": 2037.0, + "bbox": [712.0, 1512.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 143, + "image_id": 9, + "category_id": 2, + "segmentation": [ + [ + 2971.5, 1509.0, 2975.2, 1508.77, 2978.84, 1508.07, 2982.36, 1506.93, + 2985.71, 1505.35, 2988.84, 1503.37, 2991.69, 1501.0, 2994.23, 1498.3, + 2996.41, 1495.31, 2998.19, 1492.06, 2999.56, 1488.62, 3000.48, + 1485.03, 3000.94, 1481.35, 3000.94, 1477.65, 3000.48, 1473.97, + 2999.56, 1470.38, 2998.19, 1466.94, 2996.41, 1463.69, 2994.23, 1460.7, + 2991.69, 1458.0, 2988.84, 1455.63, 2985.71, 1453.65, 2982.36, 1452.07, + 2978.84, 1450.93, 2975.2, 1450.23, 2971.5, 1450.0, 2967.8, 1450.23, + 2964.16, 1450.93, 2960.64, 1452.07, 2957.29, 1453.65, 2954.16, + 1455.63, 2951.31, 1458.0, 2948.77, 1460.7, 2946.59, 1463.69, 2944.81, + 1466.94, 2943.44, 1470.38, 2942.52, 1473.97, 2942.06, 1477.65, + 2942.06, 1481.35, 2942.52, 1485.03, 2943.44, 1488.62, 2944.81, + 1492.06, 2946.59, 1495.31, 2948.77, 1498.3, 2951.31, 1501.0, 2954.16, + 1503.37, 2957.29, 1505.35, 2960.64, 1506.93, 2964.16, 1508.07, 2967.8, + 1508.77 + ] + ], + "area": 2732.0, + "bbox": [2942.06, 1450.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 144, + "image_id": 9, + "category_id": 3, + "segmentation": [[832.0, 1928.0, 796.0, 1991.0, 868.0, 1991.0]], + "area": 2268.0, + "bbox": [796.0, 1928.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 145, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2545.0, 604.0, 2619.0, 604.0, 2619.0, 675.0, 2545.0, 675.0, 2545.0, + 604.0 + ] + ], + "area": 5254.0, + "bbox": [2545.0, 604.0, 74.0, 71.0], + "iscrowd": 0 + }, + { + "id": 146, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2139.0, 1585.5, 2138.73, 1589.82, 2137.92, 1594.08, 2136.58, 1598.2, + 2134.73, 1602.12, 2132.41, 1605.78, 2129.65, 1609.12, 2126.49, + 1612.08, 2122.99, 1614.63, 2119.19, 1616.72, 2115.16, 1618.31, + 2110.96, 1619.39, 2106.67, 1619.93, 2102.33, 1619.93, 2098.04, + 1619.39, 2093.84, 1618.31, 2089.81, 1616.72, 2086.01, 1614.63, + 2082.51, 1612.08, 2079.35, 1609.12, 2076.59, 1605.78, 2074.27, + 1602.12, 2072.42, 1598.2, 2071.08, 1594.08, 2070.27, 1589.82, 2070.0, + 1585.5, 2070.27, 1581.18, 2071.08, 1576.92, 2072.42, 1572.8, 2074.27, + 1568.88, 2076.59, 1565.22, 2079.35, 1561.88, 2082.51, 1558.92, + 2086.01, 1556.37, 2089.81, 1554.28, 2093.84, 1552.69, 2098.04, + 1551.61, 2102.33, 1551.07, 2106.67, 1551.07, 2110.96, 1551.61, + 2115.16, 1552.69, 2119.19, 1554.28, 2122.99, 1556.37, 2126.49, + 1558.92, 2129.65, 1561.88, 2132.41, 1565.22, 2134.73, 1568.88, + 2136.58, 1572.8, 2137.92, 1576.92, 2138.73, 1581.18 + ] + ], + "area": 3743.0, + "bbox": [2070.0, 1551.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 147, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [3013.0, 92.0, 3070.0, 92.0, 3070.0, 155.0, 3013.0, 155.0, 3013.0, 92.0] + ], + "area": 3591.0, + "bbox": [3013.0, 92.0, 57.0, 63.0], + "iscrowd": 0 + }, + { + "id": 148, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3371.0, 2138.0, 3469.0, 2138.0, 3469.0, 2205.0, 3371.0, 2205.0, + 3371.0, 2138.0 + ] + ], + "area": 6566.0, + "bbox": [3371.0, 2138.0, 98.0, 67.0], + "iscrowd": 0 + }, + { + "id": 149, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3197.0, 630.0, 3294.0, 630.0, 3294.0, 726.0, 3197.0, 726.0, 3197.0, + 630.0 + ] + ], + "area": 9312.0, + "bbox": [3197.0, 630.0, 97.0, 96.0], + "iscrowd": 0 + }, + { + "id": 150, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1998.0, 2732.0, 2087.0, 2732.0, 2087.0, 2823.0, 1998.0, 2823.0, + 1998.0, 2732.0 + ] + ], + "area": 8099.0, + "bbox": [1998.0, 2732.0, 89.0, 91.0], + "iscrowd": 0 + }, + { + "id": 151, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 741.0, 2901.0, 819.0, 2901.0, 819.0, 2975.0, 741.0, 2975.0, 741.0, + 2901.0 + ] + ], + "area": 5772.0, + "bbox": [741.0, 2901.0, 78.0, 74.0], + "iscrowd": 0 + }, + { + "id": 152, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2736.0, 1112.0, 2834.0, 1112.0, 2834.0, 1185.0, 2736.0, 1185.0, + 2736.0, 1112.0 + ] + ], + "area": 7154.0, + "bbox": [2736.0, 1112.0, 98.0, 73.0], + "iscrowd": 0 + }, + { + "id": 153, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2465.0, 474.0, 2537.0, 474.0, 2537.0, 540.0, 2465.0, 540.0, 2465.0, + 474.0 + ] + ], + "area": 4752.0, + "bbox": [2465.0, 474.0, 72.0, 66.0], + "iscrowd": 0 + }, + { + "id": 154, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1938.0, 1910.0, 1995.0, 1910.0, 1995.0, 1967.0, 1938.0, 1967.0, + 1938.0, 1910.0 + ] + ], + "area": 3249.0, + "bbox": [1938.0, 1910.0, 57.0, 57.0], + "iscrowd": 0 + }, + { + "id": 155, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1970.0, 1231.0, 2050.0, 1231.0, 2050.0, 1295.0, 1970.0, 1295.0, + 1970.0, 1231.0 + ] + ], + "area": 5120.0, + "bbox": [1970.0, 1231.0, 80.0, 64.0], + "iscrowd": 0 + }, + { + "id": 156, + "image_id": 10, + "category_id": 3, + "segmentation": [[2778.0, 1927.0, 2749.0, 1978.0, 2807.0, 1978.0]], + "area": 1484.0, + "bbox": [2749.0, 1927.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 157, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2833.0, 2644.0, 2923.0, 2644.0, 2923.0, 2706.0, 2833.0, 2706.0, + 2833.0, 2644.0 + ] + ], + "area": 5580.0, + "bbox": [2833.0, 2644.0, 90.0, 62.0], + "iscrowd": 0 + }, + { + "id": 158, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2253.0, 1766.0, 2320.0, 1766.0, 2320.0, 1843.0, 2253.0, 1843.0, + 2253.0, 1766.0 + ] + ], + "area": 5159.0, + "bbox": [2253.0, 1766.0, 67.0, 77.0], + "iscrowd": 0 + }, + { + "id": 159, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 414.0, 479.5, 413.79, 482.82, 413.17, 486.09, 412.14, 489.26, 410.72, + 492.27, 408.94, 495.08, 406.82, 497.64, 404.39, 499.92, 401.7, 501.87, + 398.78, 503.48, 395.69, 504.7, 392.47, 505.53, 389.16, 505.95, 385.84, + 505.95, 382.53, 505.53, 379.31, 504.7, 376.22, 503.48, 373.3, 501.87, + 370.61, 499.92, 368.18, 497.64, 366.06, 495.08, 364.28, 492.27, + 362.86, 489.26, 361.83, 486.09, 361.21, 482.82, 361.0, 479.5, 361.21, + 476.18, 361.83, 472.91, 362.86, 469.74, 364.28, 466.73, 366.06, + 463.92, 368.18, 461.36, 370.61, 459.08, 373.3, 457.13, 376.22, 455.52, + 379.31, 454.3, 382.53, 453.47, 385.84, 453.05, 389.16, 453.05, 392.47, + 453.47, 395.69, 454.3, 398.78, 455.52, 401.7, 457.13, 404.39, 459.08, + 406.82, 461.36, 408.94, 463.92, 410.72, 466.73, 412.14, 469.74, + 413.17, 472.91, 413.79, 476.18 + ] + ], + "area": 2207.0, + "bbox": [361.0, 453.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 160, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3021.0, 3352.0, 3089.0, 3352.0, 3089.0, 3441.0, 3021.0, 3441.0, + 3021.0, 3352.0 + ] + ], + "area": 6052.0, + "bbox": [3021.0, 3352.0, 68.0, 89.0], + "iscrowd": 0 + }, + { + "id": 161, + "image_id": 10, + "category_id": 3, + "segmentation": [[1822.5, 2632.0, 1793.0, 2684.0, 1852.0, 2684.0]], + "area": 1542.0, + "bbox": [1793.0, 2632.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 162, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 521.5, 3402.0, 527.08, 3401.65, 532.57, 3400.6, 537.88, 3398.88, + 542.94, 3396.5, 547.66, 3393.5, 551.96, 3389.94, 555.79, 3385.87, + 559.07, 3381.34, 561.76, 3376.45, 563.82, 3371.25, 565.21, 3365.84, + 565.91, 3360.29, 565.91, 3354.71, 565.21, 3349.16, 563.82, 3343.75, + 561.76, 3338.55, 559.07, 3333.66, 555.79, 3329.13, 551.96, 3325.06, + 547.66, 3321.5, 542.94, 3318.5, 537.88, 3316.12, 532.57, 3314.4, + 527.08, 3313.35, 521.5, 3313.0, 515.92, 3313.35, 510.43, 3314.4, + 505.12, 3316.12, 500.06, 3318.5, 495.34, 3321.5, 491.04, 3325.06, + 487.21, 3329.13, 483.93, 3333.66, 481.24, 3338.55, 479.18, 3343.75, + 477.79, 3349.16, 477.09, 3354.71, 477.09, 3360.29, 477.79, 3365.84, + 479.18, 3371.25, 481.24, 3376.45, 483.93, 3381.34, 487.21, 3385.87, + 491.04, 3389.94, 495.34, 3393.5, 500.06, 3396.5, 505.12, 3398.88, + 510.43, 3400.6, 515.92, 3401.65 + ] + ], + "area": 6209.0, + "bbox": [477.09, 3313.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 163, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 741.0, 2799.5, 740.65, 2805.08, 739.6, 2810.57, 737.88, 2815.88, + 735.5, 2820.94, 732.5, 2825.66, 728.94, 2829.96, 724.87, 2833.79, + 720.34, 2837.07, 715.45, 2839.76, 710.25, 2841.82, 704.84, 2843.21, + 699.29, 2843.91, 693.71, 2843.91, 688.16, 2843.21, 682.75, 2841.82, + 677.55, 2839.76, 672.66, 2837.07, 668.13, 2833.79, 664.06, 2829.96, + 660.5, 2825.66, 657.5, 2820.94, 655.12, 2815.88, 653.4, 2810.57, + 652.35, 2805.08, 652.0, 2799.5, 652.35, 2793.92, 653.4, 2788.43, + 655.12, 2783.12, 657.5, 2778.06, 660.5, 2773.34, 664.06, 2769.04, + 668.13, 2765.21, 672.66, 2761.93, 677.55, 2759.24, 682.75, 2757.18, + 688.16, 2755.79, 693.71, 2755.09, 699.29, 2755.09, 704.84, 2755.79, + 710.25, 2757.18, 715.45, 2759.24, 720.34, 2761.93, 724.87, 2765.21, + 728.94, 2769.04, 732.5, 2773.34, 735.5, 2778.06, 737.88, 2783.12, + 739.6, 2788.43, 740.65, 2793.92 + ] + ], + "area": 6208.0, + "bbox": [652.0, 2755.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 164, + "image_id": 10, + "category_id": 3, + "segmentation": [[672.5, 1424.0, 623.0, 1510.0, 722.0, 1510.0]], + "area": 4268.0, + "bbox": [623.0, 1424.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 165, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1169.0, 954.0, 1230.0, 954.0, 1230.0, 1025.0, 1169.0, 1025.0, 1169.0, + 954.0 + ] + ], + "area": 4331.0, + "bbox": [1169.0, 954.0, 61.0, 71.0], + "iscrowd": 0 + }, + { + "id": 166, + "image_id": 10, + "category_id": 3, + "segmentation": [[2832.0, 2730.0, 2794.0, 2796.0, 2870.0, 2796.0]], + "area": 2514.0, + "bbox": [2794.0, 2730.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 167, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 113.5, 479.0, 117.57, 478.74, 121.58, 477.98, 125.46, 476.72, 129.16, + 474.98, 132.6, 472.79, 135.75, 470.19, 138.54, 467.22, 140.94, 463.91, + 142.91, 460.34, 144.41, 456.54, 145.42, 452.59, 145.94, 448.54, + 145.94, 444.46, 145.42, 440.41, 144.41, 436.46, 142.91, 432.66, + 140.94, 429.09, 138.54, 425.78, 135.75, 422.81, 132.6, 420.21, 129.16, + 418.02, 125.46, 416.28, 121.58, 415.02, 117.57, 414.26, 113.5, 414.0, + 109.43, 414.26, 105.42, 415.02, 101.54, 416.28, 97.84, 418.02, 94.4, + 420.21, 91.25, 422.81, 88.46, 425.78, 86.06, 429.09, 84.09, 432.66, + 82.59, 436.46, 81.58, 440.41, 81.06, 444.46, 81.06, 448.54, 81.58, + 452.59, 82.59, 456.54, 84.09, 460.34, 86.06, 463.91, 88.46, 467.22, + 91.25, 470.19, 94.4, 472.79, 97.84, 474.98, 101.54, 476.72, 105.42, + 477.98, 109.43, 478.74 + ] + ], + "area": 3315.0, + "bbox": [81.06, 414.0, 64.88, 65.0], + "iscrowd": 0 + }, + { + "id": 168, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 486.5, 2288.0, 490.7, 2287.74, 494.83, 2286.95, 498.83, 2285.65, + 502.64, 2283.86, 506.19, 2281.6, 509.43, 2278.92, 512.31, 2275.85, + 514.78, 2272.45, 516.81, 2268.76, 518.36, 2264.85, 519.41, 2260.78, + 519.93, 2256.6, 519.93, 2252.4, 519.41, 2248.22, 518.36, 2244.15, + 516.81, 2240.24, 514.78, 2236.55, 512.31, 2233.15, 509.43, 2230.08, + 506.19, 2227.4, 502.64, 2225.14, 498.83, 2223.35, 494.83, 2222.05, + 490.7, 2221.26, 486.5, 2221.0, 482.3, 2221.26, 478.17, 2222.05, + 474.17, 2223.35, 470.36, 2225.14, 466.81, 2227.4, 463.57, 2230.08, + 460.69, 2233.15, 458.22, 2236.55, 456.19, 2240.24, 454.64, 2244.15, + 453.59, 2248.22, 453.07, 2252.4, 453.07, 2256.6, 453.59, 2260.78, + 454.64, 2264.85, 456.19, 2268.76, 458.22, 2272.45, 460.69, 2275.85, + 463.57, 2278.92, 466.81, 2281.6, 470.36, 2283.86, 474.17, 2285.65, + 478.17, 2286.95, 482.3, 2287.74 + ] + ], + "area": 3520.0, + "bbox": [453.07, 2221.0, 66.86, 67.0], + "iscrowd": 0 + }, + { + "id": 169, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3295.0, 1525.5, 3294.65, 1531.08, 3293.6, 1536.57, 3291.88, 1541.88, + 3289.5, 1546.94, 3286.5, 1551.66, 3282.94, 1555.96, 3278.87, 1559.79, + 3274.34, 1563.07, 3269.45, 1565.76, 3264.25, 1567.82, 3258.84, + 1569.21, 3253.29, 1569.91, 3247.71, 1569.91, 3242.16, 1569.21, + 3236.75, 1567.82, 3231.55, 1565.76, 3226.66, 1563.07, 3222.13, + 1559.79, 3218.06, 1555.96, 3214.5, 1551.66, 3211.5, 1546.94, 3209.12, + 1541.88, 3207.4, 1536.57, 3206.35, 1531.08, 3206.0, 1525.5, 3206.35, + 1519.92, 3207.4, 1514.43, 3209.12, 1509.12, 3211.5, 1504.06, 3214.5, + 1499.34, 3218.06, 1495.04, 3222.13, 1491.21, 3226.66, 1487.93, + 3231.55, 1485.24, 3236.75, 1483.18, 3242.16, 1481.79, 3247.71, + 1481.09, 3253.29, 1481.09, 3258.84, 1481.79, 3264.25, 1483.18, + 3269.45, 1485.24, 3274.34, 1487.93, 3278.87, 1491.21, 3282.94, + 1495.04, 3286.5, 1499.34, 3289.5, 1504.06, 3291.88, 1509.12, 3293.6, + 1514.43, 3294.65, 1519.92 + ] + ], + "area": 6208.0, + "bbox": [3206.0, 1481.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 170, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 67.5, 3474.0, 70.7, 3473.8, 73.84, 3473.2, 76.89, 3472.21, 79.78, + 3470.85, 82.49, 3469.13, 84.96, 3467.09, 87.15, 3464.75, 89.03, + 3462.16, 90.57, 3459.36, 91.75, 3456.38, 92.55, 3453.28, 92.95, + 3450.1, 92.95, 3446.9, 92.55, 3443.72, 91.75, 3440.62, 90.57, 3437.64, + 89.03, 3434.84, 87.15, 3432.25, 84.96, 3429.91, 82.49, 3427.87, 79.78, + 3426.15, 76.89, 3424.79, 73.84, 3423.8, 70.7, 3423.2, 67.5, 3423.0, + 64.3, 3423.2, 61.16, 3423.8, 58.11, 3424.79, 55.22, 3426.15, 52.51, + 3427.87, 50.04, 3429.91, 47.85, 3432.25, 45.97, 3434.84, 44.43, + 3437.64, 43.25, 3440.62, 42.45, 3443.72, 42.05, 3446.9, 42.05, 3450.1, + 42.45, 3453.28, 43.25, 3456.38, 44.43, 3459.36, 45.97, 3462.16, 47.85, + 3464.75, 50.04, 3467.09, 52.51, 3469.13, 55.22, 3470.85, 58.11, + 3472.21, 61.16, 3473.2, 64.3, 3473.8 + ] + ], + "area": 2036.0, + "bbox": [42.05, 3423.0, 50.9, 51.0], + "iscrowd": 0 + }, + { + "id": 171, + "image_id": 10, + "category_id": 3, + "segmentation": [[1457.0, 1205.0, 1417.0, 1275.0, 1497.0, 1275.0]], + "area": 2800.0, + "bbox": [1417.0, 1205.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 172, + "image_id": 10, + "category_id": 3, + "segmentation": [[2108.0, 782.0, 2079.0, 833.0, 2137.0, 833.0]], + "area": 1484.0, + "bbox": [2079.0, 782.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 173, + "image_id": 10, + "category_id": 3, + "segmentation": [[1408.0, 2250.0, 1375.0, 2308.0, 1441.0, 2308.0]], + "area": 1920.0, + "bbox": [1375.0, 2250.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 174, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 446.5, 753.0, 450.2, 752.77, 453.84, 752.07, 457.36, 750.93, 460.71, + 749.35, 463.84, 747.37, 466.69, 745.0, 469.23, 742.3, 471.41, 739.31, + 473.19, 736.06, 474.56, 732.62, 475.48, 729.03, 475.94, 725.35, + 475.94, 721.65, 475.48, 717.97, 474.56, 714.38, 473.19, 710.94, + 471.41, 707.69, 469.23, 704.7, 466.69, 702.0, 463.84, 699.63, 460.71, + 697.65, 457.36, 696.07, 453.84, 694.93, 450.2, 694.23, 446.5, 694.0, + 442.8, 694.23, 439.16, 694.93, 435.64, 696.07, 432.29, 697.65, 429.16, + 699.63, 426.31, 702.0, 423.77, 704.7, 421.59, 707.69, 419.81, 710.94, + 418.44, 714.38, 417.52, 717.97, 417.06, 721.65, 417.06, 725.35, + 417.52, 729.03, 418.44, 732.62, 419.81, 736.06, 421.59, 739.31, + 423.77, 742.3, 426.31, 745.0, 429.16, 747.37, 432.29, 749.35, 435.64, + 750.93, 439.16, 752.07, 442.8, 752.77 + ] + ], + "area": 2732.0, + "bbox": [417.06, 694.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 175, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3407.0, 1992.5, 3406.74, 1996.7, 3405.95, 2000.83, 3404.65, 2004.83, + 3402.86, 2008.64, 3400.6, 2012.19, 3397.92, 2015.43, 3394.85, 2018.31, + 3391.45, 2020.78, 3387.76, 2022.81, 3383.85, 2024.36, 3379.78, + 2025.41, 3375.6, 2025.93, 3371.4, 2025.93, 3367.22, 2025.41, 3363.15, + 2024.36, 3359.24, 2022.81, 3355.55, 2020.78, 3352.15, 2018.31, + 3349.08, 2015.43, 3346.4, 2012.19, 3344.14, 2008.64, 3342.35, 2004.83, + 3341.05, 2000.83, 3340.26, 1996.7, 3340.0, 1992.5, 3340.26, 1988.3, + 3341.05, 1984.17, 3342.35, 1980.17, 3344.14, 1976.36, 3346.4, 1972.81, + 3349.08, 1969.57, 3352.15, 1966.69, 3355.55, 1964.22, 3359.24, + 1962.19, 3363.15, 1960.64, 3367.22, 1959.59, 3371.4, 1959.07, 3375.6, + 1959.07, 3379.78, 1959.59, 3383.85, 1960.64, 3387.76, 1962.19, + 3391.45, 1964.22, 3394.85, 1966.69, 3397.92, 1969.57, 3400.6, 1972.81, + 3402.86, 1976.36, 3404.65, 1980.17, 3405.95, 1984.17, 3406.74, 1988.3 + ] + ], + "area": 3519.0, + "bbox": [3340.0, 1959.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 176, + "image_id": 10, + "category_id": 3, + "segmentation": [[1494.0, 898.0, 1459.0, 959.0, 1529.0, 959.0]], + "area": 2142.0, + "bbox": [1459.0, 898.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 177, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2419.0, 1862.5, 2418.81, 1865.57, 2418.23, 1868.59, 2417.28, 1871.52, + 2415.97, 1874.3, 2414.32, 1876.9, 2412.36, 1879.27, 2410.12, 1881.38, + 2407.63, 1883.19, 2404.93, 1884.67, 2402.07, 1885.8, 2399.09, 1886.57, + 2396.04, 1886.95, 2392.96, 1886.95, 2389.91, 1886.57, 2386.93, 1885.8, + 2384.07, 1884.67, 2381.37, 1883.19, 2378.88, 1881.38, 2376.64, + 1879.27, 2374.68, 1876.9, 2373.03, 1874.3, 2371.72, 1871.52, 2370.77, + 1868.59, 2370.19, 1865.57, 2370.0, 1862.5, 2370.19, 1859.43, 2370.77, + 1856.41, 2371.72, 1853.48, 2373.03, 1850.7, 2374.68, 1848.1, 2376.64, + 1845.73, 2378.88, 1843.62, 2381.37, 1841.81, 2384.07, 1840.33, + 2386.93, 1839.2, 2389.91, 1838.43, 2392.96, 1838.05, 2396.04, 1838.05, + 2399.09, 1838.43, 2402.07, 1839.2, 2404.93, 1840.33, 2407.63, 1841.81, + 2410.12, 1843.62, 2412.36, 1845.73, 2414.32, 1848.1, 2415.97, 1850.7, + 2417.28, 1853.48, 2418.23, 1856.41, 2418.81, 1859.43 + ] + ], + "area": 1885.0, + "bbox": [2370.0, 1838.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 178, + "image_id": 10, + "category_id": 3, + "segmentation": [[79.0, 650.0, 33.0, 730.0, 125.0, 730.0]], + "area": 3688.0, + "bbox": [33.0, 650.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 179, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3159.0, 452.0, 3236.0, 452.0, 3236.0, 521.0, 3159.0, 521.0, 3159.0, + 452.0 + ] + ], + "area": 5313.0, + "bbox": [3159.0, 452.0, 77.0, 69.0], + "iscrowd": 0 + }, + { + "id": 180, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1450.0, 2185.0, 1506.0, 2185.0, 1506.0, 2275.0, 1450.0, 2275.0, + 1450.0, 2185.0 + ] + ], + "area": 5040.0, + "bbox": [1450.0, 2185.0, 56.0, 90.0], + "iscrowd": 0 + }, + { + "id": 181, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2863.0, 204.0, 2936.0, 204.0, 2936.0, 267.0, 2863.0, 267.0, 2863.0, + 204.0 + ] + ], + "area": 4599.0, + "bbox": [2863.0, 204.0, 73.0, 63.0], + "iscrowd": 0 + }, + { + "id": 182, + "image_id": 10, + "category_id": 3, + "segmentation": [[3154.0, 1886.0, 3126.0, 1935.0, 3182.0, 1935.0]], + "area": 1372.0, + "bbox": [3126.0, 1886.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 183, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2444.5, 1000.0, 2448.32, 999.76, 2452.09, 999.04, 2455.73, 997.86, + 2459.19, 996.23, 2462.43, 994.18, 2465.38, 991.73, 2468.0, 988.94, + 2470.25, 985.84, 2472.1, 982.49, 2473.51, 978.93, 2474.46, 975.22, + 2474.94, 971.42, 2474.94, 967.58, 2474.46, 963.78, 2473.51, 960.07, + 2472.1, 956.51, 2470.25, 953.16, 2468.0, 950.06, 2465.38, 947.27, + 2462.43, 944.82, 2459.19, 942.77, 2455.73, 941.14, 2452.09, 939.96, + 2448.32, 939.24, 2444.5, 939.0, 2440.68, 939.24, 2436.91, 939.96, + 2433.27, 941.14, 2429.81, 942.77, 2426.57, 944.82, 2423.62, 947.27, + 2421.0, 950.06, 2418.75, 953.16, 2416.9, 956.51, 2415.49, 960.07, + 2414.54, 963.78, 2414.06, 967.58, 2414.06, 971.42, 2414.54, 975.22, + 2415.49, 978.93, 2416.9, 982.49, 2418.75, 985.84, 2421.0, 988.94, + 2423.62, 991.73, 2426.57, 994.18, 2429.81, 996.23, 2433.27, 997.86, + 2436.91, 999.04, 2440.68, 999.76 + ] + ], + "area": 2916.0, + "bbox": [2414.06, 939.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 184, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1340.5, 2444.0, 1344.07, 2443.78, 1347.59, 2443.1, 1350.99, 2442.0, + 1354.23, 2440.47, 1357.25, 2438.56, 1360.01, 2436.28, 1362.46, + 2433.67, 1364.56, 2430.77, 1366.29, 2427.63, 1367.61, 2424.31, 1368.5, + 2420.84, 1368.94, 2417.29, 1368.94, 2413.71, 1368.5, 2410.16, 1367.61, + 2406.69, 1366.29, 2403.37, 1364.56, 2400.23, 1362.46, 2397.33, + 1360.01, 2394.72, 1357.25, 2392.44, 1354.23, 2390.53, 1350.99, 2389.0, + 1347.59, 2387.9, 1344.07, 2387.22, 1340.5, 2387.0, 1336.93, 2387.22, + 1333.41, 2387.9, 1330.01, 2389.0, 1326.77, 2390.53, 1323.75, 2392.44, + 1320.99, 2394.72, 1318.54, 2397.33, 1316.44, 2400.23, 1314.71, + 2403.37, 1313.39, 2406.69, 1312.5, 2410.16, 1312.06, 2413.71, 1312.06, + 2417.29, 1312.5, 2420.84, 1313.39, 2424.31, 1314.71, 2427.63, 1316.44, + 2430.77, 1318.54, 2433.67, 1320.99, 2436.28, 1323.75, 2438.56, + 1326.77, 2440.47, 1330.01, 2442.0, 1333.41, 2443.1, 1336.93, 2443.78 + ] + ], + "area": 2547.0, + "bbox": [1312.06, 2387.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 185, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1480.0, 1993.5, 1479.75, 1997.45, 1479.01, 2001.33, 1477.79, 2005.1, + 1476.1, 2008.68, 1473.98, 2012.02, 1471.46, 2015.06, 1468.58, 2017.77, + 1465.38, 2020.1, 1461.91, 2022.0, 1458.23, 2023.46, 1454.4, 2024.44, + 1450.48, 2024.94, 1446.52, 2024.94, 1442.6, 2024.44, 1438.77, 2023.46, + 1435.09, 2022.0, 1431.62, 2020.1, 1428.42, 2017.77, 1425.54, 2015.06, + 1423.02, 2012.02, 1420.9, 2008.68, 1419.21, 2005.1, 1417.99, 2001.33, + 1417.25, 1997.45, 1417.0, 1993.5, 1417.25, 1989.55, 1417.99, 1985.67, + 1419.21, 1981.9, 1420.9, 1978.32, 1423.02, 1974.98, 1425.54, 1971.94, + 1428.42, 1969.23, 1431.62, 1966.9, 1435.09, 1965.0, 1438.77, 1963.54, + 1442.6, 1962.56, 1446.52, 1962.06, 1450.48, 1962.06, 1454.4, 1962.56, + 1458.23, 1963.54, 1461.91, 1965.0, 1465.38, 1966.9, 1468.58, 1969.23, + 1471.46, 1971.94, 1473.98, 1974.98, 1476.1, 1978.32, 1477.79, 1981.9, + 1479.01, 1985.67, 1479.75, 1989.55 + ] + ], + "area": 3122.0, + "bbox": [1417.0, 1962.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 186, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1720.0, 1205.5, 1719.65, 1211.08, 1718.6, 1216.57, 1716.88, 1221.88, + 1714.5, 1226.94, 1711.5, 1231.66, 1707.94, 1235.96, 1703.87, 1239.79, + 1699.34, 1243.07, 1694.45, 1245.76, 1689.25, 1247.82, 1683.84, + 1249.21, 1678.29, 1249.91, 1672.71, 1249.91, 1667.16, 1249.21, + 1661.75, 1247.82, 1656.55, 1245.76, 1651.66, 1243.07, 1647.13, + 1239.79, 1643.06, 1235.96, 1639.5, 1231.66, 1636.5, 1226.94, 1634.12, + 1221.88, 1632.4, 1216.57, 1631.35, 1211.08, 1631.0, 1205.5, 1631.35, + 1199.92, 1632.4, 1194.43, 1634.12, 1189.12, 1636.5, 1184.06, 1639.5, + 1179.34, 1643.06, 1175.04, 1647.13, 1171.21, 1651.66, 1167.93, + 1656.55, 1165.24, 1661.75, 1163.18, 1667.16, 1161.79, 1672.71, + 1161.09, 1678.29, 1161.09, 1683.84, 1161.79, 1689.25, 1163.18, + 1694.45, 1165.24, 1699.34, 1167.93, 1703.87, 1171.21, 1707.94, + 1175.04, 1711.5, 1179.34, 1714.5, 1184.06, 1716.88, 1189.12, 1718.6, + 1194.43, 1719.65, 1199.92 + ] + ], + "area": 6208.0, + "bbox": [1631.0, 1161.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 187, + "image_id": 10, + "category_id": 3, + "segmentation": [[1687.0, 2764.0, 1662.0, 2808.0, 1712.0, 2808.0]], + "area": 1105.0, + "bbox": [1662.0, 2764.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 188, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2834.0, 1768.0, 2910.0, 1768.0, 2910.0, 1856.0, 2834.0, 1856.0, + 2834.0, 1768.0 + ] + ], + "area": 6688.0, + "bbox": [2834.0, 1768.0, 76.0, 88.0], + "iscrowd": 0 + }, + { + "id": 189, + "image_id": 10, + "category_id": 3, + "segmentation": [[426.0, 1097.0, 395.0, 1151.0, 457.0, 1151.0]], + "area": 1680.0, + "bbox": [395.0, 1097.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 190, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2714.0, 2205.5, 2713.8, 2208.7, 2713.2, 2211.84, 2712.21, 2214.89, + 2710.85, 2217.78, 2709.13, 2220.49, 2707.09, 2222.96, 2704.75, + 2225.15, 2702.16, 2227.03, 2699.36, 2228.57, 2696.38, 2229.75, + 2693.28, 2230.55, 2690.1, 2230.95, 2686.9, 2230.95, 2683.72, 2230.55, + 2680.62, 2229.75, 2677.64, 2228.57, 2674.84, 2227.03, 2672.25, + 2225.15, 2669.91, 2222.96, 2667.87, 2220.49, 2666.15, 2217.78, + 2664.79, 2214.89, 2663.8, 2211.84, 2663.2, 2208.7, 2663.0, 2205.5, + 2663.2, 2202.3, 2663.8, 2199.16, 2664.79, 2196.11, 2666.15, 2193.22, + 2667.87, 2190.51, 2669.91, 2188.04, 2672.25, 2185.85, 2674.84, + 2183.97, 2677.64, 2182.43, 2680.62, 2181.25, 2683.72, 2180.45, 2686.9, + 2180.05, 2690.1, 2180.05, 2693.28, 2180.45, 2696.38, 2181.25, 2699.36, + 2182.43, 2702.16, 2183.97, 2704.75, 2185.85, 2707.09, 2188.04, + 2709.13, 2190.51, 2710.85, 2193.22, 2712.21, 2196.11, 2713.2, 2199.16, + 2713.8, 2202.3 + ] + ], + "area": 2037.0, + "bbox": [2663.0, 2180.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 191, + "image_id": 10, + "category_id": 3, + "segmentation": [[2067.0, 1386.0, 2036.0, 1440.0, 2098.0, 1440.0]], + "area": 1680.0, + "bbox": [2036.0, 1386.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 192, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [786.0, 200.0, 857.0, 200.0, 857.0, 291.0, 786.0, 291.0, 786.0, 200.0] + ], + "area": 6461.0, + "bbox": [786.0, 200.0, 71.0, 91.0], + "iscrowd": 0 + }, + { + "id": 193, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1743.0, 248.0, 1827.0, 248.0, 1827.0, 303.0, 1743.0, 303.0, 1743.0, + 248.0 + ] + ], + "area": 4620.0, + "bbox": [1743.0, 248.0, 84.0, 55.0], + "iscrowd": 0 + }, + { + "id": 194, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 817.5, 1812.0, 821.82, 1811.73, 826.08, 1810.92, 830.2, 1809.58, + 834.12, 1807.73, 837.78, 1805.41, 841.12, 1802.65, 844.08, 1799.49, + 846.63, 1795.99, 848.72, 1792.19, 850.31, 1788.16, 851.39, 1783.96, + 851.93, 1779.67, 851.93, 1775.33, 851.39, 1771.04, 850.31, 1766.84, + 848.72, 1762.81, 846.63, 1759.01, 844.08, 1755.51, 841.12, 1752.35, + 837.78, 1749.59, 834.12, 1747.27, 830.2, 1745.42, 826.08, 1744.08, + 821.82, 1743.27, 817.5, 1743.0, 813.18, 1743.27, 808.92, 1744.08, + 804.8, 1745.42, 800.88, 1747.27, 797.22, 1749.59, 793.88, 1752.35, + 790.92, 1755.51, 788.37, 1759.01, 786.28, 1762.81, 784.69, 1766.84, + 783.61, 1771.04, 783.07, 1775.33, 783.07, 1779.67, 783.61, 1783.96, + 784.69, 1788.16, 786.28, 1792.19, 788.37, 1795.99, 790.92, 1799.49, + 793.88, 1802.65, 797.22, 1805.41, 800.88, 1807.73, 804.8, 1809.58, + 808.92, 1810.92, 813.18, 1811.73 + ] + ], + "area": 3743.0, + "bbox": [783.07, 1743.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 195, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1025.5, 2926.0, 1030.7, 2925.67, 1035.82, 2924.7, 1040.78, 2923.09, + 1045.49, 2920.87, 1049.89, 2918.07, 1053.91, 2914.75, 1057.48, + 2910.95, 1060.54, 2906.74, 1063.05, 2902.17, 1064.97, 2897.32, + 1066.26, 2892.28, 1066.92, 2887.11, 1066.92, 2881.89, 1066.26, + 2876.72, 1064.97, 2871.68, 1063.05, 2866.83, 1060.54, 2862.26, + 1057.48, 2858.05, 1053.91, 2854.25, 1049.89, 2850.93, 1045.49, + 2848.13, 1040.78, 2845.91, 1035.82, 2844.3, 1030.7, 2843.33, 1025.5, + 2843.0, 1020.3, 2843.33, 1015.18, 2844.3, 1010.22, 2845.91, 1005.51, + 2848.13, 1001.11, 2850.93, 997.09, 2854.25, 993.52, 2858.05, 990.46, + 2862.26, 987.95, 2866.83, 986.03, 2871.68, 984.74, 2876.72, 984.08, + 2881.89, 984.08, 2887.11, 984.74, 2892.28, 986.03, 2897.32, 987.95, + 2902.17, 990.46, 2906.74, 993.52, 2910.95, 997.09, 2914.75, 1001.11, + 2918.07, 1005.51, 2920.87, 1010.22, 2923.09, 1015.18, 2924.7, 1020.3, + 2925.67 + ] + ], + "area": 5392.0, + "bbox": [984.08, 2843.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 196, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1982.0, 3423.0, 2051.0, 3423.0, 2051.0, 3478.0, 1982.0, 3478.0, + 1982.0, 3423.0 + ] + ], + "area": 3795.0, + "bbox": [1982.0, 3423.0, 69.0, 55.0], + "iscrowd": 0 + }, + { + "id": 197, + "image_id": 10, + "category_id": 3, + "segmentation": [[1352.5, 686.0, 1308.0, 764.0, 1397.0, 764.0]], + "area": 3477.0, + "bbox": [1308.0, 686.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 198, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1494.0, 3088.0, 1553.0, 3088.0, 1553.0, 3168.0, 1494.0, 3168.0, + 1494.0, 3088.0 + ] + ], + "area": 4720.0, + "bbox": [1494.0, 3088.0, 59.0, 80.0], + "iscrowd": 0 + }, + { + "id": 199, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2716.5, 2726.0, 2721.45, 2725.69, 2726.32, 2724.76, 2731.04, 2723.23, + 2735.53, 2721.11, 2739.72, 2718.46, 2743.54, 2715.29, 2746.94, + 2711.68, 2749.85, 2707.67, 2752.24, 2703.32, 2754.07, 2698.71, 2755.3, + 2693.9, 2755.92, 2688.98, 2755.92, 2684.02, 2755.3, 2679.1, 2754.07, + 2674.29, 2752.24, 2669.68, 2749.85, 2665.33, 2746.94, 2661.32, + 2743.54, 2657.71, 2739.72, 2654.54, 2735.53, 2651.89, 2731.04, + 2649.77, 2726.32, 2648.24, 2721.45, 2647.31, 2716.5, 2647.0, 2711.55, + 2647.31, 2706.68, 2648.24, 2701.96, 2649.77, 2697.47, 2651.89, + 2693.28, 2654.54, 2689.46, 2657.71, 2686.06, 2661.32, 2683.15, + 2665.33, 2680.76, 2669.68, 2678.93, 2674.29, 2677.7, 2679.1, 2677.08, + 2684.02, 2677.08, 2688.98, 2677.7, 2693.9, 2678.93, 2698.71, 2680.76, + 2703.32, 2683.15, 2707.67, 2686.06, 2711.68, 2689.46, 2715.29, + 2693.28, 2718.46, 2697.47, 2721.11, 2701.96, 2723.23, 2706.68, + 2724.76, 2711.55, 2725.69 + ] + ], + "area": 4893.0, + "bbox": [2677.08, 2647.0, 78.84, 79.0], + "iscrowd": 0 + }, + { + "id": 200, + "image_id": 10, + "category_id": 3, + "segmentation": [[2240.0, 576.0, 2208.0, 632.0, 2272.0, 632.0]], + "area": 1792.0, + "bbox": [2208.0, 576.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 201, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2798.0, 448.5, 2797.65, 454.08, 2796.6, 459.57, 2794.88, 464.88, + 2792.5, 469.94, 2789.5, 474.66, 2785.94, 478.96, 2781.87, 482.79, + 2777.34, 486.07, 2772.45, 488.76, 2767.25, 490.82, 2761.84, 492.21, + 2756.29, 492.91, 2750.71, 492.91, 2745.16, 492.21, 2739.75, 490.82, + 2734.55, 488.76, 2729.66, 486.07, 2725.13, 482.79, 2721.06, 478.96, + 2717.5, 474.66, 2714.5, 469.94, 2712.12, 464.88, 2710.4, 459.57, + 2709.35, 454.08, 2709.0, 448.5, 2709.35, 442.92, 2710.4, 437.43, + 2712.12, 432.12, 2714.5, 427.06, 2717.5, 422.34, 2721.06, 418.04, + 2725.13, 414.21, 2729.66, 410.93, 2734.55, 408.24, 2739.75, 406.18, + 2745.16, 404.79, 2750.71, 404.09, 2756.29, 404.09, 2761.84, 404.79, + 2767.25, 406.18, 2772.45, 408.24, 2777.34, 410.93, 2781.87, 414.21, + 2785.94, 418.04, 2789.5, 422.34, 2792.5, 427.06, 2794.88, 432.12, + 2796.6, 437.43, 2797.65, 442.92 + ] + ], + "area": 6208.0, + "bbox": [2709.0, 404.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 202, + "image_id": 10, + "category_id": 3, + "segmentation": [[706.0, 217.0, 667.0, 285.0, 745.0, 285.0]], + "area": 2660.0, + "bbox": [667.0, 217.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 203, + "image_id": 10, + "category_id": 3, + "segmentation": [[971.0, 2623.0, 924.0, 2705.0, 1018.0, 2705.0]], + "area": 3864.0, + "bbox": [924.0, 2623.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 204, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1428.0, 702.0, 1497.0, 702.0, 1497.0, 784.0, 1428.0, 784.0, 1428.0, + 702.0 + ] + ], + "area": 5658.0, + "bbox": [1428.0, 702.0, 69.0, 82.0], + "iscrowd": 0 + }, + { + "id": 205, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 841.0, 569.5, 840.67, 574.7, 839.7, 579.82, 838.09, 584.78, 835.87, + 589.49, 833.07, 593.89, 829.75, 597.91, 825.95, 601.48, 821.74, + 604.54, 817.17, 607.05, 812.32, 608.97, 807.28, 610.26, 802.11, + 610.92, 796.89, 610.92, 791.72, 610.26, 786.68, 608.97, 781.83, + 607.05, 777.26, 604.54, 773.05, 601.48, 769.25, 597.91, 765.93, + 593.89, 763.13, 589.49, 760.91, 584.78, 759.3, 579.82, 758.33, 574.7, + 758.0, 569.5, 758.33, 564.3, 759.3, 559.18, 760.91, 554.22, 763.13, + 549.51, 765.93, 545.11, 769.25, 541.09, 773.05, 537.52, 777.26, + 534.46, 781.83, 531.95, 786.68, 530.03, 791.72, 528.74, 796.89, + 528.08, 802.11, 528.08, 807.28, 528.74, 812.32, 530.03, 817.17, + 531.95, 821.74, 534.46, 825.95, 537.52, 829.75, 541.09, 833.07, + 545.11, 835.87, 549.51, 838.09, 554.22, 839.7, 559.18, 840.67, 564.3 + ] + ], + "area": 5394.0, + "bbox": [758.0, 528.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 206, + "image_id": 10, + "category_id": 3, + "segmentation": [[1430.5, 1119.0, 1401.0, 1171.0, 1460.0, 1171.0]], + "area": 1542.0, + "bbox": [1401.0, 1119.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 207, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1395.0, 261.0, 1486.0, 261.0, 1486.0, 348.0, 1395.0, 348.0, 1395.0, + 261.0 + ] + ], + "area": 7917.0, + "bbox": [1395.0, 261.0, 91.0, 87.0], + "iscrowd": 0 + }, + { + "id": 208, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [2174.0, 99.0, 2225.0, 99.0, 2225.0, 186.0, 2174.0, 186.0, 2174.0, 99.0] + ], + "area": 4437.0, + "bbox": [2174.0, 99.0, 51.0, 87.0], + "iscrowd": 0 + }, + { + "id": 209, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 567.0, 2310.0, 664.0, 2310.0, 664.0, 2408.0, 567.0, 2408.0, 567.0, + 2310.0 + ] + ], + "area": 9506.0, + "bbox": [567.0, 2310.0, 97.0, 98.0], + "iscrowd": 0 + }, + { + "id": 210, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2451.0, 1877.0, 2531.0, 1877.0, 2531.0, 1936.0, 2451.0, 1936.0, + 2451.0, 1877.0 + ] + ], + "area": 4720.0, + "bbox": [2451.0, 1877.0, 80.0, 59.0], + "iscrowd": 0 + }, + { + "id": 211, + "image_id": 10, + "category_id": 3, + "segmentation": [[1881.0, 2819.0, 1841.0, 2889.0, 1921.0, 2889.0]], + "area": 2800.0, + "bbox": [1841.0, 2819.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 212, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2368.0, 2965.0, 2439.0, 2965.0, 2439.0, 3032.0, 2368.0, 3032.0, + 2368.0, 2965.0 + ] + ], + "area": 4757.0, + "bbox": [2368.0, 2965.0, 71.0, 67.0], + "iscrowd": 0 + }, + { + "id": 213, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2541.0, 2290.5, 2540.65, 2296.08, 2539.6, 2301.57, 2537.88, 2306.88, + 2535.5, 2311.94, 2532.5, 2316.66, 2528.94, 2320.96, 2524.87, 2324.79, + 2520.34, 2328.07, 2515.45, 2330.76, 2510.25, 2332.82, 2504.84, + 2334.21, 2499.29, 2334.91, 2493.71, 2334.91, 2488.16, 2334.21, + 2482.75, 2332.82, 2477.55, 2330.76, 2472.66, 2328.07, 2468.13, + 2324.79, 2464.06, 2320.96, 2460.5, 2316.66, 2457.5, 2311.94, 2455.12, + 2306.88, 2453.4, 2301.57, 2452.35, 2296.08, 2452.0, 2290.5, 2452.35, + 2284.92, 2453.4, 2279.43, 2455.12, 2274.12, 2457.5, 2269.06, 2460.5, + 2264.34, 2464.06, 2260.04, 2468.13, 2256.21, 2472.66, 2252.93, + 2477.55, 2250.24, 2482.75, 2248.18, 2488.16, 2246.79, 2493.71, + 2246.09, 2499.29, 2246.09, 2504.84, 2246.79, 2510.25, 2248.18, + 2515.45, 2250.24, 2520.34, 2252.93, 2524.87, 2256.21, 2528.94, + 2260.04, 2532.5, 2264.34, 2535.5, 2269.06, 2537.88, 2274.12, 2539.6, + 2279.43, 2540.65, 2284.92 + ] + ], + "area": 6208.0, + "bbox": [2452.0, 2246.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 214, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 798.0, 2996.0, 869.0, 2996.0, 869.0, 3067.0, 798.0, 3067.0, 798.0, + 2996.0 + ] + ], + "area": 5041.0, + "bbox": [798.0, 2996.0, 71.0, 71.0], + "iscrowd": 0 + }, + { + "id": 215, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 523.0, 3125.0, 604.0, 3125.0, 604.0, 3194.0, 523.0, 3194.0, 523.0, + 3125.0 + ] + ], + "area": 5589.0, + "bbox": [523.0, 3125.0, 81.0, 69.0], + "iscrowd": 0 + }, + { + "id": 216, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2032.0, 2816.0, 2091.0, 2816.0, 2091.0, 2907.0, 2032.0, 2907.0, + 2032.0, 2816.0 + ] + ], + "area": 5369.0, + "bbox": [2032.0, 2816.0, 59.0, 91.0], + "iscrowd": 0 + }, + { + "id": 217, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [504.0, 305.0, 587.0, 305.0, 587.0, 373.0, 504.0, 373.0, 504.0, 305.0] + ], + "area": 5644.0, + "bbox": [504.0, 305.0, 83.0, 68.0], + "iscrowd": 0 + }, + { + "id": 218, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2638.0, 515.5, 2637.73, 519.82, 2636.92, 524.08, 2635.58, 528.2, + 2633.73, 532.12, 2631.41, 535.78, 2628.65, 539.12, 2625.49, 542.08, + 2621.99, 544.63, 2618.19, 546.72, 2614.16, 548.31, 2609.96, 549.39, + 2605.67, 549.93, 2601.33, 549.93, 2597.04, 549.39, 2592.84, 548.31, + 2588.81, 546.72, 2585.01, 544.63, 2581.51, 542.08, 2578.35, 539.12, + 2575.59, 535.78, 2573.27, 532.12, 2571.42, 528.2, 2570.08, 524.08, + 2569.27, 519.82, 2569.0, 515.5, 2569.27, 511.18, 2570.08, 506.92, + 2571.42, 502.8, 2573.27, 498.88, 2575.59, 495.22, 2578.35, 491.88, + 2581.51, 488.92, 2585.01, 486.37, 2588.81, 484.28, 2592.84, 482.69, + 2597.04, 481.61, 2601.33, 481.07, 2605.67, 481.07, 2609.96, 481.61, + 2614.16, 482.69, 2618.19, 484.28, 2621.99, 486.37, 2625.49, 488.92, + 2628.65, 491.88, 2631.41, 495.22, 2633.73, 498.88, 2635.58, 502.8, + 2636.92, 506.92, 2637.73, 511.18 + ] + ], + "area": 3743.0, + "bbox": [2569.0, 481.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 219, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1526.0, 106.5, 1525.71, 111.07, 1524.85, 115.58, 1523.44, 119.94, + 1521.49, 124.08, 1519.03, 127.95, 1516.11, 131.49, 1512.77, 134.62, + 1509.06, 137.32, 1505.04, 139.53, 1500.78, 141.21, 1496.34, 142.35, + 1491.79, 142.93, 1487.21, 142.93, 1482.66, 142.35, 1478.22, 141.21, + 1473.96, 139.53, 1469.94, 137.32, 1466.23, 134.62, 1462.89, 131.49, + 1459.97, 127.95, 1457.51, 124.08, 1455.56, 119.94, 1454.15, 115.58, + 1453.29, 111.07, 1453.0, 106.5, 1453.29, 101.93, 1454.15, 97.42, + 1455.56, 93.06, 1457.51, 88.92, 1459.97, 85.05, 1462.89, 81.51, + 1466.23, 78.38, 1469.94, 75.68, 1473.96, 73.47, 1478.22, 71.79, + 1482.66, 70.65, 1487.21, 70.07, 1491.79, 70.07, 1496.34, 70.65, + 1500.78, 71.79, 1505.04, 73.47, 1509.06, 75.68, 1512.77, 78.38, + 1516.11, 81.51, 1519.03, 85.05, 1521.49, 88.92, 1523.44, 93.06, + 1524.85, 97.42, 1525.71, 101.93 + ] + ], + "area": 4187.0, + "bbox": [1453.0, 70.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 220, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2329.0, 2065.5, 2328.79, 2068.82, 2328.17, 2072.09, 2327.14, 2075.26, + 2325.72, 2078.27, 2323.94, 2081.08, 2321.82, 2083.64, 2319.39, + 2085.92, 2316.7, 2087.87, 2313.78, 2089.48, 2310.69, 2090.7, 2307.47, + 2091.53, 2304.16, 2091.95, 2300.84, 2091.95, 2297.53, 2091.53, + 2294.31, 2090.7, 2291.22, 2089.48, 2288.3, 2087.87, 2285.61, 2085.92, + 2283.18, 2083.64, 2281.06, 2081.08, 2279.28, 2078.27, 2277.86, + 2075.26, 2276.83, 2072.09, 2276.21, 2068.82, 2276.0, 2065.5, 2276.21, + 2062.18, 2276.83, 2058.91, 2277.86, 2055.74, 2279.28, 2052.73, + 2281.06, 2049.92, 2283.18, 2047.36, 2285.61, 2045.08, 2288.3, 2043.13, + 2291.22, 2041.52, 2294.31, 2040.3, 2297.53, 2039.47, 2300.84, 2039.05, + 2304.16, 2039.05, 2307.47, 2039.47, 2310.69, 2040.3, 2313.78, 2041.52, + 2316.7, 2043.13, 2319.39, 2045.08, 2321.82, 2047.36, 2323.94, 2049.92, + 2325.72, 2052.73, 2327.14, 2055.74, 2328.17, 2058.91, 2328.79, 2062.18 + ] + ], + "area": 2207.0, + "bbox": [2276.0, 2039.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 221, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2369.5, 1690.0, 2373.07, 1689.78, 2376.59, 1689.1, 2379.99, 1688.0, + 2383.23, 1686.47, 2386.25, 1684.56, 2389.01, 1682.28, 2391.46, + 1679.67, 2393.56, 1676.77, 2395.29, 1673.63, 2396.61, 1670.31, 2397.5, + 1666.84, 2397.94, 1663.29, 2397.94, 1659.71, 2397.5, 1656.16, 2396.61, + 1652.69, 2395.29, 1649.37, 2393.56, 1646.23, 2391.46, 1643.33, + 2389.01, 1640.72, 2386.25, 1638.44, 2383.23, 1636.53, 2379.99, 1635.0, + 2376.59, 1633.9, 2373.07, 1633.22, 2369.5, 1633.0, 2365.93, 1633.22, + 2362.41, 1633.9, 2359.01, 1635.0, 2355.77, 1636.53, 2352.75, 1638.44, + 2349.99, 1640.72, 2347.54, 1643.33, 2345.44, 1646.23, 2343.71, + 1649.37, 2342.39, 1652.69, 2341.5, 1656.16, 2341.06, 1659.71, 2341.06, + 1663.29, 2341.5, 1666.84, 2342.39, 1670.31, 2343.71, 1673.63, 2345.44, + 1676.77, 2347.54, 1679.67, 2349.99, 1682.28, 2352.75, 1684.56, + 2355.77, 1686.47, 2359.01, 1688.0, 2362.41, 1689.1, 2365.93, 1689.78 + ] + ], + "area": 2547.0, + "bbox": [2341.06, 1633.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 222, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3318.0, 1864.5, 3317.78, 1868.07, 3317.1, 1871.59, 3316.0, 1874.99, + 3314.47, 1878.23, 3312.56, 1881.25, 3310.28, 1884.01, 3307.67, + 1886.46, 3304.77, 1888.56, 3301.63, 1890.29, 3298.31, 1891.61, + 3294.84, 1892.5, 3291.29, 1892.94, 3287.71, 1892.94, 3284.16, 1892.5, + 3280.69, 1891.61, 3277.37, 1890.29, 3274.23, 1888.56, 3271.33, + 1886.46, 3268.72, 1884.01, 3266.44, 1881.25, 3264.53, 1878.23, 3263.0, + 1874.99, 3261.9, 1871.59, 3261.22, 1868.07, 3261.0, 1864.5, 3261.22, + 1860.93, 3261.9, 1857.41, 3263.0, 1854.01, 3264.53, 1850.77, 3266.44, + 1847.75, 3268.72, 1844.99, 3271.33, 1842.54, 3274.23, 1840.44, + 3277.37, 1838.71, 3280.69, 1837.39, 3284.16, 1836.5, 3287.71, 1836.06, + 3291.29, 1836.06, 3294.84, 1836.5, 3298.31, 1837.39, 3301.63, 1838.71, + 3304.77, 1840.44, 3307.67, 1842.54, 3310.28, 1844.99, 3312.56, + 1847.75, 3314.47, 1850.77, 3316.0, 1854.01, 3317.1, 1857.41, 3317.78, + 1860.93 + ] + ], + "area": 2548.0, + "bbox": [3261.0, 1836.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 223, + "image_id": 10, + "category_id": 3, + "segmentation": [[2581.0, 2985.0, 2551.0, 3038.0, 2611.0, 3038.0]], + "area": 1596.0, + "bbox": [2551.0, 2985.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 224, + "image_id": 10, + "category_id": 3, + "segmentation": [[1731.5, 3283.0, 1701.0, 3336.0, 1762.0, 3336.0]], + "area": 1623.0, + "bbox": [1701.0, 3283.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 225, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1721.0, 2277.0, 1797.0, 2277.0, 1797.0, 2346.0, 1721.0, 2346.0, + 1721.0, 2277.0 + ] + ], + "area": 5244.0, + "bbox": [1721.0, 2277.0, 76.0, 69.0], + "iscrowd": 0 + }, + { + "id": 226, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 922.0, 3144.5, 921.72, 3148.95, 920.88, 3153.33, 919.51, 3157.57, + 917.61, 3161.6, 915.22, 3165.37, 912.38, 3168.8, 909.13, 3171.85, + 905.52, 3174.47, 901.62, 3176.62, 897.47, 3178.26, 893.15, 3179.37, + 888.73, 3179.93, 884.27, 3179.93, 879.85, 3179.37, 875.53, 3178.26, + 871.38, 3176.62, 867.48, 3174.47, 863.87, 3171.85, 860.62, 3168.8, + 857.78, 3165.37, 855.39, 3161.6, 853.49, 3157.57, 852.12, 3153.33, + 851.28, 3148.95, 851.0, 3144.5, 851.28, 3140.05, 852.12, 3135.67, + 853.49, 3131.43, 855.39, 3127.4, 857.78, 3123.63, 860.62, 3120.2, + 863.87, 3117.15, 867.48, 3114.53, 871.38, 3112.38, 875.53, 3110.74, + 879.85, 3109.63, 884.27, 3109.07, 888.73, 3109.07, 893.15, 3109.63, + 897.47, 3110.74, 901.62, 3112.38, 905.52, 3114.53, 909.13, 3117.15, + 912.38, 3120.2, 915.22, 3123.63, 917.61, 3127.4, 919.51, 3131.43, + 920.88, 3135.67, 921.72, 3140.05 + ] + ], + "area": 3957.0, + "bbox": [851.0, 3109.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 227, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [41.0, 2234.0, 127.0, 2234.0, 127.0, 2305.0, 41.0, 2305.0, 41.0, 2234.0] + ], + "area": 6106.0, + "bbox": [41.0, 2234.0, 86.0, 71.0], + "iscrowd": 0 + }, + { + "id": 228, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3225.0, 2139.5, 3224.71, 2144.07, 3223.85, 2148.58, 3222.44, 2152.94, + 3220.49, 2157.08, 3218.03, 2160.95, 3215.11, 2164.49, 3211.77, + 2167.62, 3208.06, 2170.32, 3204.04, 2172.53, 3199.78, 2174.21, + 3195.34, 2175.35, 3190.79, 2175.93, 3186.21, 2175.93, 3181.66, + 2175.35, 3177.22, 2174.21, 3172.96, 2172.53, 3168.94, 2170.32, + 3165.23, 2167.62, 3161.89, 2164.49, 3158.97, 2160.95, 3156.51, + 2157.08, 3154.56, 2152.94, 3153.15, 2148.58, 3152.29, 2144.07, 3152.0, + 2139.5, 3152.29, 2134.93, 3153.15, 2130.42, 3154.56, 2126.06, 3156.51, + 2121.92, 3158.97, 2118.05, 3161.89, 2114.51, 3165.23, 2111.38, + 3168.94, 2108.68, 3172.96, 2106.47, 3177.22, 2104.79, 3181.66, + 2103.65, 3186.21, 2103.07, 3190.79, 2103.07, 3195.34, 2103.65, + 3199.78, 2104.79, 3204.04, 2106.47, 3208.06, 2108.68, 3211.77, + 2111.38, 3215.11, 2114.51, 3218.03, 2118.05, 3220.49, 2121.92, + 3222.44, 2126.06, 3223.85, 2130.42, 3224.71, 2134.93 + ] + ], + "area": 4187.0, + "bbox": [3152.0, 2103.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 229, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1597.0, 314.0, 1656.0, 314.0, 1656.0, 379.0, 1597.0, 379.0, 1597.0, + 314.0 + ] + ], + "area": 3835.0, + "bbox": [1597.0, 314.0, 59.0, 65.0], + "iscrowd": 0 + }, + { + "id": 230, + "image_id": 10, + "category_id": 3, + "segmentation": [[2968.5, 1730.0, 2933.0, 1792.0, 3004.0, 1792.0]], + "area": 2209.0, + "bbox": [2933.0, 1730.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 231, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 795.0, 2815.0, 847.0, 2815.0, 847.0, 2865.0, 795.0, 2865.0, 795.0, + 2815.0 + ] + ], + "area": 2600.0, + "bbox": [795.0, 2815.0, 52.0, 50.0], + "iscrowd": 0 + }, + { + "id": 232, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 462.0, 2592.0, 515.0, 2592.0, 515.0, 2690.0, 462.0, 2690.0, 462.0, + 2592.0 + ] + ], + "area": 5194.0, + "bbox": [462.0, 2592.0, 53.0, 98.0], + "iscrowd": 0 + }, + { + "id": 233, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1544.0, 2713.5, 1543.66, 2718.83, 1542.66, 2724.07, 1541.02, 2729.15, + 1538.74, 2733.97, 1535.88, 2738.48, 1532.48, 2742.59, 1528.59, + 2746.25, 1524.27, 2749.38, 1519.6, 2751.96, 1514.63, 2753.92, 1509.46, + 2755.25, 1504.17, 2755.92, 1498.83, 2755.92, 1493.54, 2755.25, + 1488.37, 2753.92, 1483.4, 2751.96, 1478.73, 2749.38, 1474.41, 2746.25, + 1470.52, 2742.59, 1467.12, 2738.48, 1464.26, 2733.97, 1461.98, + 2729.15, 1460.34, 2724.07, 1459.34, 2718.83, 1459.0, 2713.5, 1459.34, + 2708.17, 1460.34, 2702.93, 1461.98, 2697.85, 1464.26, 2693.03, + 1467.12, 2688.52, 1470.52, 2684.41, 1474.41, 2680.75, 1478.73, + 2677.62, 1483.4, 2675.04, 1488.37, 2673.08, 1493.54, 2671.75, 1498.83, + 2671.08, 1504.17, 2671.08, 1509.46, 2671.75, 1514.63, 2673.08, 1519.6, + 2675.04, 1524.27, 2677.62, 1528.59, 2680.75, 1532.48, 2684.41, + 1535.88, 2688.52, 1538.74, 2693.03, 1541.02, 2697.85, 1542.66, + 2702.93, 1543.66, 2708.17 + ] + ], + "area": 5651.0, + "bbox": [1459.0, 2671.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 234, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 818.5, 1910.0, 824.58, 1909.62, 830.56, 1908.48, 836.35, 1906.59, + 841.87, 1904.0, 847.01, 1900.74, 851.7, 1896.85, 855.87, 1892.42, + 859.45, 1887.49, 862.38, 1882.15, 864.63, 1876.49, 866.14, 1870.59, + 866.9, 1864.55, 866.9, 1858.45, 866.14, 1852.41, 864.63, 1846.51, + 862.38, 1840.85, 859.45, 1835.51, 855.87, 1830.58, 851.7, 1826.15, + 847.01, 1822.26, 841.87, 1819.0, 836.35, 1816.41, 830.56, 1814.52, + 824.58, 1813.38, 818.5, 1813.0, 812.42, 1813.38, 806.44, 1814.52, + 800.65, 1816.41, 795.13, 1819.0, 789.99, 1822.26, 785.3, 1826.15, + 781.13, 1830.58, 777.55, 1835.51, 774.62, 1840.85, 772.37, 1846.51, + 770.86, 1852.41, 770.1, 1858.45, 770.1, 1864.55, 770.86, 1870.59, + 772.37, 1876.49, 774.62, 1882.15, 777.55, 1887.49, 781.13, 1892.42, + 785.3, 1896.85, 789.99, 1900.74, 795.13, 1904.0, 800.65, 1906.59, + 806.44, 1908.48, 812.42, 1909.62 + ] + ], + "area": 7380.0, + "bbox": [770.1, 1813.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 235, + "image_id": 10, + "category_id": 3, + "segmentation": [[806.0, 1945.0, 778.0, 1994.0, 834.0, 1994.0]], + "area": 1372.0, + "bbox": [778.0, 1945.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 236, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2584.0, 2651.0, 2677.0, 2651.0, 2677.0, 2746.0, 2584.0, 2746.0, + 2584.0, 2651.0 + ] + ], + "area": 8835.0, + "bbox": [2584.0, 2651.0, 93.0, 95.0], + "iscrowd": 0 + }, + { + "id": 237, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3110.0, 989.0, 3187.0, 989.0, 3187.0, 1039.0, 3110.0, 1039.0, 3110.0, + 989.0 + ] + ], + "area": 3850.0, + "bbox": [3110.0, 989.0, 77.0, 50.0], + "iscrowd": 0 + }, + { + "id": 238, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1691.0, 1251.0, 1764.0, 1251.0, 1764.0, 1322.0, 1691.0, 1322.0, + 1691.0, 1251.0 + ] + ], + "area": 5183.0, + "bbox": [1691.0, 1251.0, 73.0, 71.0], + "iscrowd": 0 + }, + { + "id": 239, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1014.0, 1458.5, 1013.74, 1462.57, 1012.98, 1466.58, 1011.72, 1470.46, + 1009.98, 1474.16, 1007.79, 1477.6, 1005.19, 1480.75, 1002.22, 1483.54, + 998.91, 1485.94, 995.34, 1487.91, 991.54, 1489.41, 987.59, 1490.42, + 983.54, 1490.94, 979.46, 1490.94, 975.41, 1490.42, 971.46, 1489.41, + 967.66, 1487.91, 964.09, 1485.94, 960.78, 1483.54, 957.81, 1480.75, + 955.21, 1477.6, 953.02, 1474.16, 951.28, 1470.46, 950.02, 1466.58, + 949.26, 1462.57, 949.0, 1458.5, 949.26, 1454.43, 950.02, 1450.42, + 951.28, 1446.54, 953.02, 1442.84, 955.21, 1439.4, 957.81, 1436.25, + 960.78, 1433.46, 964.09, 1431.06, 967.66, 1429.09, 971.46, 1427.59, + 975.41, 1426.58, 979.46, 1426.06, 983.54, 1426.06, 987.59, 1426.58, + 991.54, 1427.59, 995.34, 1429.09, 998.91, 1431.06, 1002.22, 1433.46, + 1005.19, 1436.25, 1007.79, 1439.4, 1009.98, 1442.84, 1011.72, 1446.54, + 1012.98, 1450.42, 1013.74, 1454.43 + ] + ], + "area": 3315.0, + "bbox": [949.0, 1426.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 240, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1353.0, 1066.5, 1352.74, 1070.57, 1351.98, 1074.58, 1350.72, 1078.46, + 1348.98, 1082.16, 1346.79, 1085.6, 1344.19, 1088.75, 1341.22, 1091.54, + 1337.91, 1093.94, 1334.34, 1095.91, 1330.54, 1097.41, 1326.59, + 1098.42, 1322.54, 1098.94, 1318.46, 1098.94, 1314.41, 1098.42, + 1310.46, 1097.41, 1306.66, 1095.91, 1303.09, 1093.94, 1299.78, + 1091.54, 1296.81, 1088.75, 1294.21, 1085.6, 1292.02, 1082.16, 1290.28, + 1078.46, 1289.02, 1074.58, 1288.26, 1070.57, 1288.0, 1066.5, 1288.26, + 1062.43, 1289.02, 1058.42, 1290.28, 1054.54, 1292.02, 1050.84, + 1294.21, 1047.4, 1296.81, 1044.25, 1299.78, 1041.46, 1303.09, 1039.06, + 1306.66, 1037.09, 1310.46, 1035.59, 1314.41, 1034.58, 1318.46, + 1034.06, 1322.54, 1034.06, 1326.59, 1034.58, 1330.54, 1035.59, + 1334.34, 1037.09, 1337.91, 1039.06, 1341.22, 1041.46, 1344.19, + 1044.25, 1346.79, 1047.4, 1348.98, 1050.84, 1350.72, 1054.54, 1351.98, + 1058.42, 1352.74, 1062.43 + ] + ], + "area": 3315.0, + "bbox": [1288.0, 1034.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 241, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3262.0, 908.0, 3336.0, 908.0, 3336.0, 996.0, 3262.0, 996.0, 3262.0, + 908.0 + ] + ], + "area": 6512.0, + "bbox": [3262.0, 908.0, 74.0, 88.0], + "iscrowd": 0 + }, + { + "id": 242, + "image_id": 10, + "category_id": 3, + "segmentation": [[1395.0, 957.0, 1353.0, 1030.0, 1437.0, 1030.0]], + "area": 3074.0, + "bbox": [1353.0, 957.0, 84.0, 73.0], + "iscrowd": 0 + }, + { + "id": 243, + "image_id": 10, + "category_id": 3, + "segmentation": [[169.0, 920.0, 133.0, 983.0, 205.0, 983.0]], + "area": 2268.0, + "bbox": [133.0, 920.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 244, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 750.0, 816.5, 749.62, 822.58, 748.48, 828.56, 746.59, 834.35, 744.0, + 839.87, 740.74, 845.01, 736.85, 849.7, 732.42, 853.87, 727.49, 857.45, + 722.15, 860.38, 716.49, 862.63, 710.59, 864.14, 704.55, 864.9, 698.45, + 864.9, 692.41, 864.14, 686.51, 862.63, 680.85, 860.38, 675.51, 857.45, + 670.58, 853.87, 666.15, 849.7, 662.26, 845.01, 659.0, 839.87, 656.41, + 834.35, 654.52, 828.56, 653.38, 822.58, 653.0, 816.5, 653.38, 810.42, + 654.52, 804.44, 656.41, 798.65, 659.0, 793.13, 662.26, 787.99, 666.15, + 783.3, 670.58, 779.13, 675.51, 775.55, 680.85, 772.62, 686.51, 770.37, + 692.41, 768.86, 698.45, 768.1, 704.55, 768.1, 710.59, 768.86, 716.49, + 770.37, 722.15, 772.62, 727.49, 775.55, 732.42, 779.13, 736.85, 783.3, + 740.74, 787.99, 744.0, 793.13, 746.59, 798.65, 748.48, 804.44, 749.62, + 810.42 + ] + ], + "area": 7381.0, + "bbox": [653.0, 768.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 245, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2111.0, 1794.0, 2172.0, 1794.0, 2172.0, 1870.0, 2111.0, 1870.0, + 2111.0, 1794.0 + ] + ], + "area": 4636.0, + "bbox": [2111.0, 1794.0, 61.0, 76.0], + "iscrowd": 0 + }, + { + "id": 246, + "image_id": 10, + "category_id": 3, + "segmentation": [[2503.5, 796.0, 2454.0, 882.0, 2553.0, 882.0]], + "area": 4268.0, + "bbox": [2454.0, 796.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 247, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 950.0, 1137.0, 1021.0, 1137.0, 1021.0, 1209.0, 950.0, 1209.0, 950.0, + 1137.0 + ] + ], + "area": 5112.0, + "bbox": [950.0, 1137.0, 71.0, 72.0], + "iscrowd": 0 + }, + { + "id": 248, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 567.0, 2887.0, 640.0, 2887.0, 640.0, 2962.0, 567.0, 2962.0, 567.0, + 2887.0 + ] + ], + "area": 5475.0, + "bbox": [567.0, 2887.0, 73.0, 75.0], + "iscrowd": 0 + }, + { + "id": 249, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 413.5, 2856.0, 417.95, 2855.72, 422.33, 2854.88, 426.57, 2853.51, + 430.6, 2851.61, 434.37, 2849.22, 437.8, 2846.38, 440.85, 2843.13, + 443.47, 2839.52, 445.62, 2835.62, 447.26, 2831.47, 448.37, 2827.15, + 448.93, 2822.73, 448.93, 2818.27, 448.37, 2813.85, 447.26, 2809.53, + 445.62, 2805.38, 443.47, 2801.48, 440.85, 2797.87, 437.8, 2794.62, + 434.37, 2791.78, 430.6, 2789.39, 426.57, 2787.49, 422.33, 2786.12, + 417.95, 2785.28, 413.5, 2785.0, 409.05, 2785.28, 404.67, 2786.12, + 400.43, 2787.49, 396.4, 2789.39, 392.63, 2791.78, 389.2, 2794.62, + 386.15, 2797.87, 383.53, 2801.48, 381.38, 2805.38, 379.74, 2809.53, + 378.63, 2813.85, 378.07, 2818.27, 378.07, 2822.73, 378.63, 2827.15, + 379.74, 2831.47, 381.38, 2835.62, 383.53, 2839.52, 386.15, 2843.13, + 389.2, 2846.38, 392.63, 2849.22, 396.4, 2851.61, 400.43, 2853.51, + 404.67, 2854.88, 409.05, 2855.72 + ] + ], + "area": 3956.0, + "bbox": [378.07, 2785.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 250, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 3292.0, 190.0, 3378.0, 190.0, 3378.0, 246.0, 3292.0, 246.0, 3292.0, + 190.0 + ] + ], + "area": 4816.0, + "bbox": [3292.0, 190.0, 86.0, 56.0], + "iscrowd": 0 + }, + { + "id": 251, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1698.0, 1761.5, 1697.68, 1766.58, 1696.73, 1771.57, 1695.16, 1776.41, + 1692.99, 1781.01, 1690.27, 1785.31, 1687.02, 1789.22, 1683.32, + 1792.71, 1679.2, 1795.7, 1674.74, 1798.15, 1670.02, 1800.02, 1665.09, + 1801.28, 1660.04, 1801.92, 1654.96, 1801.92, 1649.91, 1801.28, + 1644.98, 1800.02, 1640.26, 1798.15, 1635.8, 1795.7, 1631.68, 1792.71, + 1627.98, 1789.22, 1624.73, 1785.31, 1622.01, 1781.01, 1619.84, + 1776.41, 1618.27, 1771.57, 1617.32, 1766.58, 1617.0, 1761.5, 1617.32, + 1756.42, 1618.27, 1751.43, 1619.84, 1746.59, 1622.01, 1741.99, + 1624.73, 1737.69, 1627.98, 1733.78, 1631.68, 1730.29, 1635.8, 1727.3, + 1640.26, 1724.85, 1644.98, 1722.98, 1649.91, 1721.72, 1654.96, + 1721.08, 1660.04, 1721.08, 1665.09, 1721.72, 1670.02, 1722.98, + 1674.74, 1724.85, 1679.2, 1727.3, 1683.32, 1730.29, 1687.02, 1733.78, + 1690.27, 1737.69, 1692.99, 1741.99, 1695.16, 1746.59, 1696.73, + 1751.43, 1697.68, 1756.42 + ] + ], + "area": 5149.0, + "bbox": [1617.0, 1721.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 252, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1444.0, 497.0, 1537.0, 497.0, 1537.0, 584.0, 1444.0, 584.0, 1444.0, + 497.0 + ] + ], + "area": 8091.0, + "bbox": [1444.0, 497.0, 93.0, 87.0], + "iscrowd": 0 + }, + { + "id": 253, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1322.0, 2290.5, 1321.65, 2296.08, 1320.6, 2301.57, 1318.88, 2306.88, + 1316.5, 2311.94, 1313.5, 2316.66, 1309.94, 2320.96, 1305.87, 2324.79, + 1301.34, 2328.07, 1296.45, 2330.76, 1291.25, 2332.82, 1285.84, + 2334.21, 1280.29, 2334.91, 1274.71, 2334.91, 1269.16, 2334.21, + 1263.75, 2332.82, 1258.55, 2330.76, 1253.66, 2328.07, 1249.13, + 2324.79, 1245.06, 2320.96, 1241.5, 2316.66, 1238.5, 2311.94, 1236.12, + 2306.88, 1234.4, 2301.57, 1233.35, 2296.08, 1233.0, 2290.5, 1233.35, + 2284.92, 1234.4, 2279.43, 1236.12, 2274.12, 1238.5, 2269.06, 1241.5, + 2264.34, 1245.06, 2260.04, 1249.13, 2256.21, 1253.66, 2252.93, + 1258.55, 2250.24, 1263.75, 2248.18, 1269.16, 2246.79, 1274.71, + 2246.09, 1280.29, 2246.09, 1285.84, 2246.79, 1291.25, 2248.18, + 1296.45, 2250.24, 1301.34, 2252.93, 1305.87, 2256.21, 1309.94, + 2260.04, 1313.5, 2264.34, 1316.5, 2269.06, 1318.88, 2274.12, 1320.6, + 2279.43, 1321.65, 2284.92 + ] + ], + "area": 6208.0, + "bbox": [1233.0, 2246.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 254, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2511.0, 1091.0, 2588.0, 1091.0, 2588.0, 1168.0, 2511.0, 1168.0, + 2511.0, 1091.0 + ] + ], + "area": 5929.0, + "bbox": [2511.0, 1091.0, 77.0, 77.0], + "iscrowd": 0 + }, + { + "id": 255, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [562.0, 611.0, 657.0, 611.0, 657.0, 687.0, 562.0, 687.0, 562.0, 611.0] + ], + "area": 7220.0, + "bbox": [562.0, 611.0, 95.0, 76.0], + "iscrowd": 0 + }, + { + "id": 256, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2758.0, 3249.0, 2852.0, 3249.0, 2852.0, 3315.0, 2758.0, 3315.0, + 2758.0, 3249.0 + ] + ], + "area": 6204.0, + "bbox": [2758.0, 3249.0, 94.0, 66.0], + "iscrowd": 0 + }, + { + "id": 257, + "image_id": 10, + "category_id": 3, + "segmentation": [[1252.5, 2638.0, 1224.0, 2688.0, 1281.0, 2688.0]], + "area": 1430.0, + "bbox": [1224.0, 2638.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 258, + "image_id": 10, + "category_id": 3, + "segmentation": [[2595.0, 2363.0, 2557.0, 2429.0, 2633.0, 2429.0]], + "area": 2514.0, + "bbox": [2557.0, 2363.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 259, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 382.0, 1661.0, 449.0, 1661.0, 449.0, 1726.0, 382.0, 1726.0, 382.0, + 1661.0 + ] + ], + "area": 4355.0, + "bbox": [382.0, 1661.0, 67.0, 65.0], + "iscrowd": 0 + }, + { + "id": 260, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1501.0, 1705.0, 1578.0, 1705.0, 1578.0, 1768.0, 1501.0, 1768.0, + 1501.0, 1705.0 + ] + ], + "area": 4851.0, + "bbox": [1501.0, 1705.0, 77.0, 63.0], + "iscrowd": 0 + }, + { + "id": 261, + "image_id": 10, + "category_id": 3, + "segmentation": [[3450.5, 2320.0, 3418.0, 2377.0, 3483.0, 2377.0]], + "area": 1857.0, + "bbox": [3418.0, 2320.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 262, + "image_id": 10, + "category_id": 3, + "segmentation": [[1899.0, 1465.0, 1850.0, 1551.0, 1948.0, 1551.0]], + "area": 4224.0, + "bbox": [1850.0, 1465.0, 98.0, 86.0], + "iscrowd": 0 + }, + { + "id": 263, + "image_id": 10, + "category_id": 3, + "segmentation": [[2025.5, 2140.0, 1979.0, 2221.0, 2072.0, 2221.0]], + "area": 3776.0, + "bbox": [1979.0, 2140.0, 93.0, 81.0], + "iscrowd": 0 + }, + { + "id": 264, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2157.5, 1689.0, 2160.95, 1688.78, 2164.34, 1688.14, 2167.62, 1687.07, + 2170.75, 1685.6, 2173.66, 1683.75, 2176.33, 1681.55, 2178.69, 1679.03, + 2180.72, 1676.24, 2182.38, 1673.21, 2183.65, 1670.0, 2184.51, 1666.65, + 2184.95, 1663.23, 2184.95, 1659.77, 2184.51, 1656.35, 2183.65, 1653.0, + 2182.38, 1649.79, 2180.72, 1646.76, 2178.69, 1643.97, 2176.33, + 1641.45, 2173.66, 1639.25, 2170.75, 1637.4, 2167.62, 1635.93, 2164.34, + 1634.86, 2160.95, 1634.22, 2157.5, 1634.0, 2154.05, 1634.22, 2150.66, + 1634.86, 2147.38, 1635.93, 2144.25, 1637.4, 2141.34, 1639.25, 2138.67, + 1641.45, 2136.31, 1643.97, 2134.28, 1646.76, 2132.62, 1649.79, + 2131.35, 1653.0, 2130.49, 1656.35, 2130.05, 1659.77, 2130.05, 1663.23, + 2130.49, 1666.65, 2131.35, 1670.0, 2132.62, 1673.21, 2134.28, 1676.24, + 2136.31, 1679.03, 2138.67, 1681.55, 2141.34, 1683.75, 2144.25, 1685.6, + 2147.38, 1687.07, 2150.66, 1688.14, 2154.05, 1688.78 + ] + ], + "area": 2375.0, + "bbox": [2130.05, 1634.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 265, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1068.0, 798.0, 1139.0, 798.0, 1139.0, 863.0, 1068.0, 863.0, 1068.0, + 798.0 + ] + ], + "area": 4615.0, + "bbox": [1068.0, 798.0, 71.0, 65.0], + "iscrowd": 0 + }, + { + "id": 266, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2173.5, 3035.0, 2178.07, 3034.71, 2182.58, 3033.85, 2186.94, 3032.44, + 2191.08, 3030.49, 2194.95, 3028.03, 2198.49, 3025.11, 2201.62, + 3021.77, 2204.32, 3018.06, 2206.53, 3014.04, 2208.21, 3009.78, + 2209.35, 3005.34, 2209.93, 3000.79, 2209.93, 2996.21, 2209.35, + 2991.66, 2208.21, 2987.22, 2206.53, 2982.96, 2204.32, 2978.94, + 2201.62, 2975.23, 2198.49, 2971.89, 2194.95, 2968.97, 2191.08, + 2966.51, 2186.94, 2964.56, 2182.58, 2963.15, 2178.07, 2962.29, 2173.5, + 2962.0, 2168.93, 2962.29, 2164.42, 2963.15, 2160.06, 2964.56, 2155.92, + 2966.51, 2152.05, 2968.97, 2148.51, 2971.89, 2145.38, 2975.23, + 2142.68, 2978.94, 2140.47, 2982.96, 2138.79, 2987.22, 2137.65, + 2991.66, 2137.07, 2996.21, 2137.07, 3000.79, 2137.65, 3005.34, + 2138.79, 3009.78, 2140.47, 3014.04, 2142.68, 3018.06, 2145.38, + 3021.77, 2148.51, 3025.11, 2152.05, 3028.03, 2155.92, 3030.49, + 2160.06, 3032.44, 2164.42, 3033.85, 2168.93, 3034.71 + ] + ], + "area": 4187.0, + "bbox": [2137.07, 2962.0, 72.86, 73.0], + "iscrowd": 0 + }, + { + "id": 267, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2661.0, 3440.0, 2760.0, 3440.0, 2760.0, 3490.0, 2661.0, 3490.0, + 2661.0, 3440.0 + ] + ], + "area": 4950.0, + "bbox": [2661.0, 3440.0, 99.0, 50.0], + "iscrowd": 0 + }, + { + "id": 268, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 1467.5, 2574.0, 1473.58, 2573.62, 1479.56, 2572.48, 1485.35, 2570.59, + 1490.87, 2568.0, 1496.01, 2564.74, 1500.7, 2560.85, 1504.87, 2556.42, + 1508.45, 2551.49, 1511.38, 2546.15, 1513.63, 2540.49, 1515.14, + 2534.59, 1515.9, 2528.55, 1515.9, 2522.45, 1515.14, 2516.41, 1513.63, + 2510.51, 1511.38, 2504.85, 1508.45, 2499.51, 1504.87, 2494.58, 1500.7, + 2490.15, 1496.01, 2486.26, 1490.87, 2483.0, 1485.35, 2480.41, 1479.56, + 2478.52, 1473.58, 2477.38, 1467.5, 2477.0, 1461.42, 2477.38, 1455.44, + 2478.52, 1449.65, 2480.41, 1444.13, 2483.0, 1438.99, 2486.26, 1434.3, + 2490.15, 1430.13, 2494.58, 1426.55, 2499.51, 1423.62, 2504.85, + 1421.37, 2510.51, 1419.86, 2516.41, 1419.1, 2522.45, 1419.1, 2528.55, + 1419.86, 2534.59, 1421.37, 2540.49, 1423.62, 2546.15, 1426.55, + 2551.49, 1430.13, 2556.42, 1434.3, 2560.85, 1438.99, 2564.74, 1444.13, + 2568.0, 1449.65, 2570.59, 1455.44, 2572.48, 1461.42, 2573.62 + ] + ], + "area": 7380.0, + "bbox": [1419.1, 2477.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 269, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 801.0, 2577.0, 898.0, 2577.0, 898.0, 2664.0, 801.0, 2664.0, 801.0, + 2577.0 + ] + ], + "area": 8439.0, + "bbox": [801.0, 2577.0, 97.0, 87.0], + "iscrowd": 0 + }, + { + "id": 270, + "image_id": 10, + "category_id": 3, + "segmentation": [[2260.5, 655.0, 2216.0, 733.0, 2305.0, 733.0]], + "area": 3477.0, + "bbox": [2216.0, 655.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 271, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [978.0, 655.0, 1077.0, 655.0, 1077.0, 748.0, 978.0, 748.0, 978.0, 655.0] + ], + "area": 9207.0, + "bbox": [978.0, 655.0, 99.0, 93.0], + "iscrowd": 0 + }, + { + "id": 272, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2034.5, 2379.0, 2037.95, 2378.78, 2041.34, 2378.14, 2044.62, 2377.07, + 2047.75, 2375.6, 2050.66, 2373.75, 2053.33, 2371.55, 2055.69, 2369.03, + 2057.72, 2366.24, 2059.38, 2363.21, 2060.65, 2360.0, 2061.51, 2356.65, + 2061.95, 2353.23, 2061.95, 2349.77, 2061.51, 2346.35, 2060.65, 2343.0, + 2059.38, 2339.79, 2057.72, 2336.76, 2055.69, 2333.97, 2053.33, + 2331.45, 2050.66, 2329.25, 2047.75, 2327.4, 2044.62, 2325.93, 2041.34, + 2324.86, 2037.95, 2324.22, 2034.5, 2324.0, 2031.05, 2324.22, 2027.66, + 2324.86, 2024.38, 2325.93, 2021.25, 2327.4, 2018.34, 2329.25, 2015.67, + 2331.45, 2013.31, 2333.97, 2011.28, 2336.76, 2009.62, 2339.79, + 2008.35, 2343.0, 2007.49, 2346.35, 2007.05, 2349.77, 2007.05, 2353.23, + 2007.49, 2356.65, 2008.35, 2360.0, 2009.62, 2363.21, 2011.28, 2366.24, + 2013.31, 2369.03, 2015.67, 2371.55, 2018.34, 2373.75, 2021.25, 2375.6, + 2024.38, 2377.07, 2027.66, 2378.14, 2031.05, 2378.78 + ] + ], + "area": 2375.0, + "bbox": [2007.05, 2324.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 273, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3053.0, 3302.5, 3052.7, 3307.33, 3051.79, 3312.07, 3050.3, 3316.67, + 3048.24, 3321.05, 3045.65, 3325.13, 3042.57, 3328.86, 3039.04, + 3332.16, 3035.13, 3335.01, 3030.89, 3337.34, 3026.4, 3339.12, 3021.71, + 3340.32, 3016.92, 3340.92, 3012.08, 3340.92, 3007.29, 3340.32, 3002.6, + 3339.12, 2998.11, 3337.34, 2993.87, 3335.01, 2989.96, 3332.16, + 2986.43, 3328.86, 2983.35, 3325.13, 2980.76, 3321.05, 2978.7, 3316.67, + 2977.21, 3312.07, 2976.3, 3307.33, 2976.0, 3302.5, 2976.3, 3297.67, + 2977.21, 3292.93, 2978.7, 3288.33, 2980.76, 3283.95, 2983.35, 3279.87, + 2986.43, 3276.14, 2989.96, 3272.84, 2993.87, 3269.99, 2998.11, + 3267.66, 3002.6, 3265.88, 3007.29, 3264.68, 3012.08, 3264.08, 3016.92, + 3264.08, 3021.71, 3264.68, 3026.4, 3265.88, 3030.89, 3267.66, 3035.13, + 3269.99, 3039.04, 3272.84, 3042.57, 3276.14, 3045.65, 3279.87, + 3048.24, 3283.95, 3050.3, 3288.33, 3051.79, 3292.93, 3052.7, 3297.67 + ] + ], + "area": 4653.0, + "bbox": [2976.0, 3264.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 274, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 670.0, 3314.0, 725.0, 3314.0, 725.0, 3379.0, 670.0, 3379.0, 670.0, + 3314.0 + ] + ], + "area": 3575.0, + "bbox": [670.0, 3314.0, 55.0, 65.0], + "iscrowd": 0 + }, + { + "id": 275, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1864.0, 922.0, 1958.0, 922.0, 1958.0, 1000.0, 1864.0, 1000.0, 1864.0, + 922.0 + ] + ], + "area": 7332.0, + "bbox": [1864.0, 922.0, 94.0, 78.0], + "iscrowd": 0 + }, + { + "id": 276, + "image_id": 10, + "category_id": 3, + "segmentation": [[3036.0, 1525.0, 2997.0, 1593.0, 3075.0, 1593.0]], + "area": 2660.0, + "bbox": [2997.0, 1525.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 277, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 3188.0, 3399.5, 3187.63, 3405.33, 3186.54, 3411.06, 3184.73, 3416.62, + 3182.25, 3421.9, 3179.12, 3426.83, 3175.4, 3431.33, 3171.14, 3435.33, + 3166.42, 3438.76, 3161.3, 3441.57, 3155.87, 3443.72, 3150.21, 3445.18, + 3144.42, 3445.91, 3138.58, 3445.91, 3132.79, 3445.18, 3127.13, + 3443.72, 3121.7, 3441.57, 3116.58, 3438.76, 3111.86, 3435.33, 3107.6, + 3431.33, 3103.88, 3426.83, 3100.75, 3421.9, 3098.27, 3416.62, 3096.46, + 3411.06, 3095.37, 3405.33, 3095.0, 3399.5, 3095.37, 3393.67, 3096.46, + 3387.94, 3098.27, 3382.38, 3100.75, 3377.1, 3103.88, 3372.17, 3107.6, + 3367.67, 3111.86, 3363.67, 3116.58, 3360.24, 3121.7, 3357.43, 3127.13, + 3355.28, 3132.79, 3353.82, 3138.58, 3353.09, 3144.42, 3353.09, + 3150.21, 3353.82, 3155.87, 3355.28, 3161.3, 3357.43, 3166.42, 3360.24, + 3171.14, 3363.67, 3175.4, 3367.67, 3179.12, 3372.17, 3182.25, 3377.1, + 3184.73, 3382.38, 3186.54, 3387.94, 3187.63, 3393.67 + ] + ], + "area": 6782.0, + "bbox": [3095.0, 3353.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 278, + "image_id": 10, + "category_id": 3, + "segmentation": [[1126.0, 200.0, 1083.0, 275.0, 1169.0, 275.0]], + "area": 3234.0, + "bbox": [1083.0, 200.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 279, + "image_id": 10, + "category_id": 3, + "segmentation": [[1149.5, 2629.0, 1121.0, 2679.0, 1178.0, 2679.0]], + "area": 1430.0, + "bbox": [1121.0, 2629.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 280, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1991.0, 1623.0, 2074.0, 1623.0, 2074.0, 1684.0, 1991.0, 1684.0, + 1991.0, 1623.0 + ] + ], + "area": 5063.0, + "bbox": [1991.0, 1623.0, 83.0, 61.0], + "iscrowd": 0 + }, + { + "id": 281, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [60.0, 2029.0, 139.0, 2029.0, 139.0, 2102.0, 60.0, 2102.0, 60.0, 2029.0] + ], + "area": 5767.0, + "bbox": [60.0, 2029.0, 79.0, 73.0], + "iscrowd": 0 + }, + { + "id": 282, + "image_id": 10, + "category_id": 2, + "segmentation": [ + [ + 2474.5, 179.0, 2480.2, 178.64, 2485.82, 177.57, 2491.25, 175.8, + 2496.42, 173.37, 2501.24, 170.31, 2505.65, 166.67, 2509.56, 162.5, + 2512.92, 157.88, 2515.67, 152.87, 2517.77, 147.56, 2519.19, 142.03, + 2519.91, 136.36, 2519.91, 130.64, 2519.19, 124.97, 2517.77, 119.44, + 2515.67, 114.13, 2512.92, 109.12, 2509.56, 104.5, 2505.65, 100.33, + 2501.24, 96.69, 2496.42, 93.63, 2491.25, 91.2, 2485.82, 89.43, 2480.2, + 88.36, 2474.5, 88.0, 2468.8, 88.36, 2463.18, 89.43, 2457.75, 91.2, + 2452.58, 93.63, 2447.76, 96.69, 2443.35, 100.33, 2439.44, 104.5, + 2436.08, 109.12, 2433.33, 114.13, 2431.23, 119.44, 2429.81, 124.97, + 2429.09, 130.64, 2429.09, 136.36, 2429.81, 142.03, 2431.23, 147.56, + 2433.33, 152.87, 2436.08, 157.88, 2439.44, 162.5, 2443.35, 166.67, + 2447.76, 170.31, 2452.58, 173.37, 2457.75, 175.8, 2463.18, 177.57, + 2468.8, 178.64 + ] + ], + "area": 6499.0, + "bbox": [2429.09, 88.0, 90.82, 91.0], + "iscrowd": 0 + }, + { + "id": 283, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [472.0, 757.0, 555.0, 757.0, 555.0, 812.0, 472.0, 812.0, 472.0, 757.0] + ], + "area": 4565.0, + "bbox": [472.0, 757.0, 83.0, 55.0], + "iscrowd": 0 + }, + { + "id": 284, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [25.0, 2471.0, 121.0, 2471.0, 121.0, 2521.0, 25.0, 2521.0, 25.0, 2471.0] + ], + "area": 4800.0, + "bbox": [25.0, 2471.0, 96.0, 50.0], + "iscrowd": 0 + }, + { + "id": 285, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 1808.0, 1871.0, 1879.0, 1871.0, 1879.0, 1950.0, 1808.0, 1950.0, + 1808.0, 1871.0 + ] + ], + "area": 5609.0, + "bbox": [1808.0, 1871.0, 71.0, 79.0], + "iscrowd": 0 + }, + { + "id": 286, + "image_id": 10, + "category_id": 1, + "segmentation": [ + [ + 2630.0, 945.0, 2693.0, 945.0, 2693.0, 1014.0, 2630.0, 1014.0, 2630.0, + 945.0 + ] + ], + "area": 4347.0, + "bbox": [2630.0, 945.0, 63.0, 69.0], + "iscrowd": 0 + } + ] +} diff --git a/data/small_objects/annotations/stuff_train.json b/data/small_objects/annotations/stuff_train.json new file mode 100644 index 00000000000..37f552f571e --- /dev/null +++ b/data/small_objects/annotations/stuff_train.json @@ -0,0 +1,9380 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { "id": 1, "name": "rectangle", "supercategory": "" }, + { "id": 2, "name": "ellipse", "supercategory": "" }, + { "id": 3, "name": "triangle", "supercategory": "" } + ], + "images": [ + { + "id": 1, + "width": 3500, + "height": 3500, + "file_name": "sample_2.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 2, + "width": 3500, + "height": 3500, + "file_name": "sample_3.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 3, + "width": 3500, + "height": 3500, + "file_name": "sample_4.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 4, + "width": 3500, + "height": 3500, + "file_name": "sample_6.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 5, + "width": 3500, + "height": 3500, + "file_name": "sample_7.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 6, + "width": 3500, + "height": 3500, + "file_name": "sample_9.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [ + { + "id": 1, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1786.0, 3145.0, 1885.0, 3145.0, 1885.0, 3239.0, 1786.0, 3239.0, + 1786.0, 3145.0 + ] + ], + "area": 9306.0, + "bbox": [1786.0, 3145.0, 99.0, 94.0], + "iscrowd": 0 + }, + { + "id": 2, + "image_id": 1, + "category_id": 3, + "segmentation": [[2491.0, 1790.0, 2451.0, 1860.0, 2531.0, 1860.0]], + "area": 2800.0, + "bbox": [2451.0, 1790.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 3, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 968.0, 2817.0, 1028.0, 2817.0, 1028.0, 2902.0, 968.0, 2902.0, 968.0, + 2817.0 + ] + ], + "area": 5100.0, + "bbox": [968.0, 2817.0, 60.0, 85.0], + "iscrowd": 0 + }, + { + "id": 4, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 449.0, 2692.5, 448.63, 2698.45, 447.51, 2704.31, 445.66, 2709.99, + 443.12, 2715.38, 439.93, 2720.42, 436.13, 2725.02, 431.78, 2729.1, + 426.95, 2732.61, 421.72, 2735.48, 416.18, 2737.68, 410.4, 2739.16, + 404.48, 2739.91, 398.52, 2739.91, 392.6, 2739.16, 386.82, 2737.68, + 381.28, 2735.48, 376.05, 2732.61, 371.22, 2729.1, 366.87, 2725.02, + 363.07, 2720.42, 359.88, 2715.38, 357.34, 2709.99, 355.49, 2704.31, + 354.37, 2698.45, 354.0, 2692.5, 354.37, 2686.55, 355.49, 2680.69, + 357.34, 2675.01, 359.88, 2669.62, 363.07, 2664.58, 366.87, 2659.98, + 371.22, 2655.9, 376.05, 2652.39, 381.28, 2649.52, 386.82, 2647.32, + 392.6, 2645.84, 398.52, 2645.09, 404.48, 2645.09, 410.4, 2645.84, + 416.18, 2647.32, 421.72, 2649.52, 426.95, 2652.39, 431.78, 2655.9, + 436.13, 2659.98, 439.93, 2664.58, 443.12, 2669.62, 445.66, 2675.01, + 447.51, 2680.69, 448.63, 2686.55 + ] + ], + "area": 7083.0, + "bbox": [354.0, 2645.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 5, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 170.0, 2204.5, 169.69, 2209.45, 168.76, 2214.32, 167.23, 2219.04, + 165.11, 2223.53, 162.46, 2227.72, 159.29, 2231.54, 155.68, 2234.94, + 151.67, 2237.85, 147.32, 2240.24, 142.71, 2242.07, 137.9, 2243.3, + 132.98, 2243.92, 128.02, 2243.92, 123.1, 2243.3, 118.29, 2242.07, + 113.68, 2240.24, 109.33, 2237.85, 105.32, 2234.94, 101.71, 2231.54, + 98.54, 2227.72, 95.89, 2223.53, 93.77, 2219.04, 92.24, 2214.32, 91.31, + 2209.45, 91.0, 2204.5, 91.31, 2199.55, 92.24, 2194.68, 93.77, 2189.96, + 95.89, 2185.47, 98.54, 2181.28, 101.71, 2177.46, 105.32, 2174.06, + 109.33, 2171.15, 113.68, 2168.76, 118.29, 2166.93, 123.1, 2165.7, + 128.02, 2165.08, 132.98, 2165.08, 137.9, 2165.7, 142.71, 2166.93, + 147.32, 2168.76, 151.67, 2171.15, 155.68, 2174.06, 159.29, 2177.46, + 162.46, 2181.28, 165.11, 2185.47, 167.23, 2189.96, 168.76, 2194.68, + 169.69, 2199.55 + ] + ], + "area": 4893.0, + "bbox": [91.0, 2165.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 6, + "image_id": 1, + "category_id": 3, + "segmentation": [[3031.5, 2095.0, 2987.0, 2173.0, 3076.0, 2173.0]], + "area": 3477.0, + "bbox": [2987.0, 2095.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 7, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1003.0, 1239.0, 1078.0, 1239.0, 1078.0, 1314.0, 1003.0, 1314.0, + 1003.0, 1239.0 + ] + ], + "area": 5625.0, + "bbox": [1003.0, 1239.0, 75.0, 75.0], + "iscrowd": 0 + }, + { + "id": 8, + "image_id": 1, + "category_id": 3, + "segmentation": [[777.5, 550.0, 736.0, 623.0, 819.0, 623.0]], + "area": 3040.0, + "bbox": [736.0, 550.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 9, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 484.0, 1120.5, 483.69, 1125.45, 482.76, 1130.32, 481.23, 1135.04, + 479.11, 1139.53, 476.46, 1143.72, 473.29, 1147.54, 469.68, 1150.94, + 465.67, 1153.85, 461.32, 1156.24, 456.71, 1158.07, 451.9, 1159.3, + 446.98, 1159.92, 442.02, 1159.92, 437.1, 1159.3, 432.29, 1158.07, + 427.68, 1156.24, 423.33, 1153.85, 419.32, 1150.94, 415.71, 1147.54, + 412.54, 1143.72, 409.89, 1139.53, 407.77, 1135.04, 406.24, 1130.32, + 405.31, 1125.45, 405.0, 1120.5, 405.31, 1115.55, 406.24, 1110.68, + 407.77, 1105.96, 409.89, 1101.47, 412.54, 1097.28, 415.71, 1093.46, + 419.32, 1090.06, 423.33, 1087.15, 427.68, 1084.76, 432.29, 1082.93, + 437.1, 1081.7, 442.02, 1081.08, 446.98, 1081.08, 451.9, 1081.7, + 456.71, 1082.93, 461.32, 1084.76, 465.67, 1087.15, 469.68, 1090.06, + 473.29, 1093.46, 476.46, 1097.28, 479.11, 1101.47, 481.23, 1105.96, + 482.76, 1110.68, 483.69, 1115.55 + ] + ], + "area": 4893.0, + "bbox": [405.0, 1081.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 10, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 599.5, 638.0, 605.33, 637.63, 611.06, 636.54, 616.62, 634.73, 621.9, + 632.25, 626.83, 629.12, 631.33, 625.4, 635.33, 621.14, 638.76, 616.42, + 641.57, 611.3, 643.72, 605.87, 645.18, 600.21, 645.91, 594.42, 645.91, + 588.58, 645.18, 582.79, 643.72, 577.13, 641.57, 571.7, 638.76, 566.58, + 635.33, 561.86, 631.33, 557.6, 626.83, 553.88, 621.9, 550.75, 616.62, + 548.27, 611.06, 546.46, 605.33, 545.37, 599.5, 545.0, 593.67, 545.37, + 587.94, 546.46, 582.38, 548.27, 577.1, 550.75, 572.17, 553.88, 567.67, + 557.6, 563.67, 561.86, 560.24, 566.58, 557.43, 571.7, 555.28, 577.13, + 553.82, 582.79, 553.09, 588.58, 553.09, 594.42, 553.82, 600.21, + 555.28, 605.87, 557.43, 611.3, 560.24, 616.42, 563.67, 621.14, 567.67, + 625.4, 572.17, 629.12, 577.1, 632.25, 582.38, 634.73, 587.94, 636.54, + 593.67, 637.63 + ] + ], + "area": 6781.0, + "bbox": [553.09, 545.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 11, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1910.0, 285.0, 1971.0, 285.0, 1971.0, 352.0, 1910.0, 352.0, 1910.0, + 285.0 + ] + ], + "area": 4087.0, + "bbox": [1910.0, 285.0, 61.0, 67.0], + "iscrowd": 0 + }, + { + "id": 12, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2526.5, 1338.0, 2532.58, 1337.62, 2538.56, 1336.48, 2544.35, 1334.59, + 2549.87, 1332.0, 2555.01, 1328.74, 2559.7, 1324.85, 2563.87, 1320.42, + 2567.45, 1315.49, 2570.38, 1310.15, 2572.63, 1304.49, 2574.14, + 1298.59, 2574.9, 1292.55, 2574.9, 1286.45, 2574.14, 1280.41, 2572.63, + 1274.51, 2570.38, 1268.85, 2567.45, 1263.51, 2563.87, 1258.58, 2559.7, + 1254.15, 2555.01, 1250.26, 2549.87, 1247.0, 2544.35, 1244.41, 2538.56, + 1242.52, 2532.58, 1241.38, 2526.5, 1241.0, 2520.42, 1241.38, 2514.44, + 1242.52, 2508.65, 1244.41, 2503.13, 1247.0, 2497.99, 1250.26, 2493.3, + 1254.15, 2489.13, 1258.58, 2485.55, 1263.51, 2482.62, 1268.85, + 2480.37, 1274.51, 2478.86, 1280.41, 2478.1, 1286.45, 2478.1, 1292.55, + 2478.86, 1298.59, 2480.37, 1304.49, 2482.62, 1310.15, 2485.55, + 1315.49, 2489.13, 1320.42, 2493.3, 1324.85, 2497.99, 1328.74, 2503.13, + 1332.0, 2508.65, 1334.59, 2514.44, 1336.48, 2520.42, 1337.62 + ] + ], + "area": 7380.0, + "bbox": [2478.1, 1241.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 13, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2643.0, 2793.0, 2716.0, 2793.0, 2716.0, 2856.0, 2643.0, 2856.0, + 2643.0, 2793.0 + ] + ], + "area": 4599.0, + "bbox": [2643.0, 2793.0, 73.0, 63.0], + "iscrowd": 0 + }, + { + "id": 14, + "image_id": 1, + "category_id": 3, + "segmentation": [[873.5, 1347.0, 824.0, 1433.0, 923.0, 1433.0]], + "area": 4268.0, + "bbox": [824.0, 1347.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 15, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2024.0, 2346.5, 2023.8, 2349.7, 2023.2, 2352.84, 2022.21, 2355.89, + 2020.85, 2358.78, 2019.13, 2361.49, 2017.09, 2363.96, 2014.75, + 2366.15, 2012.16, 2368.03, 2009.36, 2369.57, 2006.38, 2370.75, + 2003.28, 2371.55, 2000.1, 2371.95, 1996.9, 2371.95, 1993.72, 2371.55, + 1990.62, 2370.75, 1987.64, 2369.57, 1984.84, 2368.03, 1982.25, + 2366.15, 1979.91, 2363.96, 1977.87, 2361.49, 1976.15, 2358.78, + 1974.79, 2355.89, 1973.8, 2352.84, 1973.2, 2349.7, 1973.0, 2346.5, + 1973.2, 2343.3, 1973.8, 2340.16, 1974.79, 2337.11, 1976.15, 2334.22, + 1977.87, 2331.51, 1979.91, 2329.04, 1982.25, 2326.85, 1984.84, + 2324.97, 1987.64, 2323.43, 1990.62, 2322.25, 1993.72, 2321.45, 1996.9, + 2321.05, 2000.1, 2321.05, 2003.28, 2321.45, 2006.38, 2322.25, 2009.36, + 2323.43, 2012.16, 2324.97, 2014.75, 2326.85, 2017.09, 2329.04, + 2019.13, 2331.51, 2020.85, 2334.22, 2022.21, 2337.11, 2023.2, 2340.16, + 2023.8, 2343.3 + ] + ], + "area": 2037.0, + "bbox": [1973.0, 2321.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 16, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2968.0, 1284.0, 3055.0, 1284.0, 3055.0, 1350.0, 2968.0, 1350.0, + 2968.0, 1284.0 + ] + ], + "area": 5742.0, + "bbox": [2968.0, 1284.0, 87.0, 66.0], + "iscrowd": 0 + }, + { + "id": 17, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 236.0, 2949.0, 303.0, 2949.0, 303.0, 3038.0, 236.0, 3038.0, 236.0, + 2949.0 + ] + ], + "area": 5963.0, + "bbox": [236.0, 2949.0, 67.0, 89.0], + "iscrowd": 0 + }, + { + "id": 18, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 693.0, 1042.0, 784.0, 1042.0, 784.0, 1123.0, 693.0, 1123.0, 693.0, + 1042.0 + ] + ], + "area": 7371.0, + "bbox": [693.0, 1042.0, 91.0, 81.0], + "iscrowd": 0 + }, + { + "id": 19, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 933.0, 2508.5, 932.81, 2511.57, 932.23, 2514.59, 931.28, 2517.52, + 929.97, 2520.3, 928.32, 2522.9, 926.36, 2525.27, 924.12, 2527.38, + 921.63, 2529.19, 918.93, 2530.67, 916.07, 2531.8, 913.09, 2532.57, + 910.04, 2532.95, 906.96, 2532.95, 903.91, 2532.57, 900.93, 2531.8, + 898.07, 2530.67, 895.37, 2529.19, 892.88, 2527.38, 890.64, 2525.27, + 888.68, 2522.9, 887.03, 2520.3, 885.72, 2517.52, 884.77, 2514.59, + 884.19, 2511.57, 884.0, 2508.5, 884.19, 2505.43, 884.77, 2502.41, + 885.72, 2499.48, 887.03, 2496.7, 888.68, 2494.1, 890.64, 2491.73, + 892.88, 2489.62, 895.37, 2487.81, 898.07, 2486.33, 900.93, 2485.2, + 903.91, 2484.43, 906.96, 2484.05, 910.04, 2484.05, 913.09, 2484.43, + 916.07, 2485.2, 918.93, 2486.33, 921.63, 2487.81, 924.12, 2489.62, + 926.36, 2491.73, 928.32, 2494.1, 929.97, 2496.7, 931.28, 2499.48, + 932.23, 2502.41, 932.81, 2505.43 + ] + ], + "area": 1885.0, + "bbox": [884.0, 2484.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 20, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 1619.0, 957.5, 1618.68, 962.58, 1617.73, 967.57, 1616.16, 972.41, + 1613.99, 977.01, 1611.27, 981.31, 1608.02, 985.22, 1604.32, 988.71, + 1600.2, 991.7, 1595.74, 994.15, 1591.02, 996.02, 1586.09, 997.28, + 1581.04, 997.92, 1575.96, 997.92, 1570.91, 997.28, 1565.98, 996.02, + 1561.26, 994.15, 1556.8, 991.7, 1552.68, 988.71, 1548.98, 985.22, + 1545.73, 981.31, 1543.01, 977.01, 1540.84, 972.41, 1539.27, 967.57, + 1538.32, 962.58, 1538.0, 957.5, 1538.32, 952.42, 1539.27, 947.43, + 1540.84, 942.59, 1543.01, 937.99, 1545.73, 933.69, 1548.98, 929.78, + 1552.68, 926.29, 1556.8, 923.3, 1561.26, 920.85, 1565.98, 918.98, + 1570.91, 917.72, 1575.96, 917.08, 1581.04, 917.08, 1586.09, 917.72, + 1591.02, 918.98, 1595.74, 920.85, 1600.2, 923.3, 1604.32, 926.29, + 1608.02, 929.78, 1611.27, 933.69, 1613.99, 937.99, 1616.16, 942.59, + 1617.73, 947.43, 1618.68, 952.42 + ] + ], + "area": 5149.0, + "bbox": [1538.0, 917.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 21, + "image_id": 1, + "category_id": 3, + "segmentation": [[1811.0, 36.0, 1782.0, 87.0, 1840.0, 87.0]], + "area": 1484.0, + "bbox": [1782.0, 36.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 22, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2587.0, 961.0, 2674.0, 961.0, 2674.0, 1052.0, 2587.0, 1052.0, 2587.0, + 961.0 + ] + ], + "area": 7917.0, + "bbox": [2587.0, 961.0, 87.0, 91.0], + "iscrowd": 0 + }, + { + "id": 23, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2067.0, 655.5, 2066.75, 659.45, 2066.01, 663.33, 2064.79, 667.1, + 2063.1, 670.68, 2060.98, 674.02, 2058.46, 677.06, 2055.58, 679.77, + 2052.38, 682.1, 2048.91, 684.0, 2045.23, 685.46, 2041.4, 686.44, + 2037.48, 686.94, 2033.52, 686.94, 2029.6, 686.44, 2025.77, 685.46, + 2022.09, 684.0, 2018.62, 682.1, 2015.42, 679.77, 2012.54, 677.06, + 2010.02, 674.02, 2007.9, 670.68, 2006.21, 667.1, 2004.99, 663.33, + 2004.25, 659.45, 2004.0, 655.5, 2004.25, 651.55, 2004.99, 647.67, + 2006.21, 643.9, 2007.9, 640.32, 2010.02, 636.98, 2012.54, 633.94, + 2015.42, 631.23, 2018.62, 628.9, 2022.09, 627.0, 2025.77, 625.54, + 2029.6, 624.56, 2033.52, 624.06, 2037.48, 624.06, 2041.4, 624.56, + 2045.23, 625.54, 2048.91, 627.0, 2052.38, 628.9, 2055.58, 631.23, + 2058.46, 633.94, 2060.98, 636.98, 2063.1, 640.32, 2064.79, 643.9, + 2066.01, 647.67, 2066.75, 651.55 + ] + ], + "area": 3122.0, + "bbox": [2004.0, 624.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 24, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1305.0, 3249.0, 1396.0, 3249.0, 1396.0, 3340.0, 1305.0, 3340.0, + 1305.0, 3249.0 + ] + ], + "area": 8281.0, + "bbox": [1305.0, 3249.0, 91.0, 91.0], + "iscrowd": 0 + }, + { + "id": 25, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 1612.0, 2984.5, 1611.64, 2990.2, 1610.57, 2995.82, 1608.8, 3001.25, + 1606.37, 3006.42, 1603.31, 3011.24, 1599.67, 3015.65, 1595.5, 3019.56, + 1590.88, 3022.92, 1585.87, 3025.67, 1580.56, 3027.77, 1575.03, + 3029.19, 1569.36, 3029.91, 1563.64, 3029.91, 1557.97, 3029.19, + 1552.44, 3027.77, 1547.13, 3025.67, 1542.12, 3022.92, 1537.5, 3019.56, + 1533.33, 3015.65, 1529.69, 3011.24, 1526.63, 3006.42, 1524.2, 3001.25, + 1522.43, 2995.82, 1521.36, 2990.2, 1521.0, 2984.5, 1521.36, 2978.8, + 1522.43, 2973.18, 1524.2, 2967.75, 1526.63, 2962.58, 1529.69, 2957.76, + 1533.33, 2953.35, 1537.5, 2949.44, 1542.12, 2946.08, 1547.13, 2943.33, + 1552.44, 2941.23, 1557.97, 2939.81, 1563.64, 2939.09, 1569.36, + 2939.09, 1575.03, 2939.81, 1580.56, 2941.23, 1585.87, 2943.33, + 1590.88, 2946.08, 1595.5, 2949.44, 1599.67, 2953.35, 1603.31, 2957.76, + 1606.37, 2962.58, 1608.8, 2967.75, 1610.57, 2973.18, 1611.64, 2978.8 + ] + ], + "area": 6498.0, + "bbox": [1521.0, 2939.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 26, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 717.0, 3227.0, 769.0, 3227.0, 769.0, 3317.0, 717.0, 3317.0, 717.0, + 3227.0 + ] + ], + "area": 4680.0, + "bbox": [717.0, 3227.0, 52.0, 90.0], + "iscrowd": 0 + }, + { + "id": 27, + "image_id": 1, + "category_id": 3, + "segmentation": [[1615.5, 1151.0, 1571.0, 1229.0, 1660.0, 1229.0]], + "area": 3477.0, + "bbox": [1571.0, 1151.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 28, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1186.0, 2360.0, 1275.0, 2360.0, 1275.0, 2443.0, 1186.0, 2443.0, + 1186.0, 2360.0 + ] + ], + "area": 7387.0, + "bbox": [1186.0, 2360.0, 89.0, 83.0], + "iscrowd": 0 + }, + { + "id": 29, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [984.0, 131.0, 1059.0, 131.0, 1059.0, 209.0, 984.0, 209.0, 984.0, 131.0] + ], + "area": 5850.0, + "bbox": [984.0, 131.0, 75.0, 78.0], + "iscrowd": 0 + }, + { + "id": 30, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2135.0, 1268.5, 2134.66, 1273.83, 2133.66, 1279.07, 2132.02, 1284.15, + 2129.74, 1288.97, 2126.88, 1293.48, 2123.48, 1297.59, 2119.59, + 1301.25, 2115.27, 1304.38, 2110.6, 1306.96, 2105.63, 1308.92, 2100.46, + 1310.25, 2095.17, 1310.92, 2089.83, 1310.92, 2084.54, 1310.25, + 2079.37, 1308.92, 2074.4, 1306.96, 2069.73, 1304.38, 2065.41, 1301.25, + 2061.52, 1297.59, 2058.12, 1293.48, 2055.26, 1288.97, 2052.98, + 1284.15, 2051.34, 1279.07, 2050.34, 1273.83, 2050.0, 1268.5, 2050.34, + 1263.17, 2051.34, 1257.93, 2052.98, 1252.85, 2055.26, 1248.03, + 2058.12, 1243.52, 2061.52, 1239.41, 2065.41, 1235.75, 2069.73, + 1232.62, 2074.4, 1230.04, 2079.37, 1228.08, 2084.54, 1226.75, 2089.83, + 1226.08, 2095.17, 1226.08, 2100.46, 1226.75, 2105.63, 1228.08, 2110.6, + 1230.04, 2115.27, 1232.62, 2119.59, 1235.75, 2123.48, 1239.41, + 2126.88, 1243.52, 2129.74, 1248.03, 2132.02, 1252.85, 2133.66, + 1257.93, 2134.66, 1263.17 + ] + ], + "area": 5651.0, + "bbox": [2050.0, 1226.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 31, + "image_id": 1, + "category_id": 3, + "segmentation": [[3413.0, 3197.0, 3367.0, 3277.0, 3459.0, 3277.0]], + "area": 3688.0, + "bbox": [3367.0, 3197.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 32, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [759.0, 97.0, 824.0, 97.0, 824.0, 190.0, 759.0, 190.0, 759.0, 97.0] + ], + "area": 6045.0, + "bbox": [759.0, 97.0, 65.0, 93.0], + "iscrowd": 0 + }, + { + "id": 33, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 457.0, 2415.0, 525.0, 2415.0, 525.0, 2474.0, 457.0, 2474.0, 457.0, + 2415.0 + ] + ], + "area": 4012.0, + "bbox": [457.0, 2415.0, 68.0, 59.0], + "iscrowd": 0 + }, + { + "id": 34, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3305.0, 2322.0, 3384.0, 2322.0, 3384.0, 2389.0, 3305.0, 2389.0, + 3305.0, 2322.0 + ] + ], + "area": 5293.0, + "bbox": [3305.0, 2322.0, 79.0, 67.0], + "iscrowd": 0 + }, + { + "id": 35, + "image_id": 1, + "category_id": 3, + "segmentation": [[3152.5, 2899.0, 3111.0, 2972.0, 3194.0, 2972.0]], + "area": 3040.0, + "bbox": [3111.0, 2899.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 36, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2739.0, 2645.0, 2790.0, 2645.0, 2790.0, 2726.0, 2739.0, 2726.0, + 2739.0, 2645.0 + ] + ], + "area": 4131.0, + "bbox": [2739.0, 2645.0, 51.0, 81.0], + "iscrowd": 0 + }, + { + "id": 37, + "image_id": 1, + "category_id": 3, + "segmentation": [[842.0, 2576.0, 799.0, 2651.0, 885.0, 2651.0]], + "area": 3234.0, + "bbox": [799.0, 2576.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 38, + "image_id": 1, + "category_id": 3, + "segmentation": [[1969.0, 3253.0, 1940.0, 3304.0, 1998.0, 3304.0]], + "area": 1484.0, + "bbox": [1940.0, 3253.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 39, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2230.0, 3178.0, 2314.0, 3178.0, 2314.0, 3237.0, 2230.0, 3237.0, + 2230.0, 3178.0 + ] + ], + "area": 4956.0, + "bbox": [2230.0, 3178.0, 84.0, 59.0], + "iscrowd": 0 + }, + { + "id": 40, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2280.0, 2410.0, 2347.0, 2410.0, 2347.0, 2507.0, 2280.0, 2507.0, + 2280.0, 2410.0 + ] + ], + "area": 6499.0, + "bbox": [2280.0, 2410.0, 67.0, 97.0], + "iscrowd": 0 + }, + { + "id": 41, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2116.0, 2074.5, 2115.64, 2080.2, 2114.57, 2085.82, 2112.8, 2091.25, + 2110.37, 2096.42, 2107.31, 2101.24, 2103.67, 2105.65, 2099.5, 2109.56, + 2094.88, 2112.92, 2089.87, 2115.67, 2084.56, 2117.77, 2079.03, + 2119.19, 2073.36, 2119.91, 2067.64, 2119.91, 2061.97, 2119.19, + 2056.44, 2117.77, 2051.13, 2115.67, 2046.12, 2112.92, 2041.5, 2109.56, + 2037.33, 2105.65, 2033.69, 2101.24, 2030.63, 2096.42, 2028.2, 2091.25, + 2026.43, 2085.82, 2025.36, 2080.2, 2025.0, 2074.5, 2025.36, 2068.8, + 2026.43, 2063.18, 2028.2, 2057.75, 2030.63, 2052.58, 2033.69, 2047.76, + 2037.33, 2043.35, 2041.5, 2039.44, 2046.12, 2036.08, 2051.13, 2033.33, + 2056.44, 2031.23, 2061.97, 2029.81, 2067.64, 2029.09, 2073.36, + 2029.09, 2079.03, 2029.81, 2084.56, 2031.23, 2089.87, 2033.33, + 2094.88, 2036.08, 2099.5, 2039.44, 2103.67, 2043.35, 2107.31, 2047.76, + 2110.37, 2052.58, 2112.8, 2057.75, 2114.57, 2063.18, 2115.64, 2068.8 + ] + ], + "area": 6498.0, + "bbox": [2025.0, 2029.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 42, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1468.0, 1851.0, 1544.0, 1851.0, 1544.0, 1907.0, 1468.0, 1907.0, + 1468.0, 1851.0 + ] + ], + "area": 4256.0, + "bbox": [1468.0, 1851.0, 76.0, 56.0], + "iscrowd": 0 + }, + { + "id": 43, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1450.0, 2606.0, 1527.0, 2606.0, 1527.0, 2699.0, 1450.0, 2699.0, + 1450.0, 2606.0 + ] + ], + "area": 7161.0, + "bbox": [1450.0, 2606.0, 77.0, 93.0], + "iscrowd": 0 + }, + { + "id": 44, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 333.0, 2134.0, 422.0, 2134.0, 422.0, 2218.0, 333.0, 2218.0, 333.0, + 2134.0 + ] + ], + "area": 7476.0, + "bbox": [333.0, 2134.0, 89.0, 84.0], + "iscrowd": 0 + }, + { + "id": 45, + "image_id": 1, + "category_id": 3, + "segmentation": [[2301.0, 4.0, 2276.0, 48.0, 2326.0, 48.0]], + "area": 1105.0, + "bbox": [2276.0, 4.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 46, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 103.0, 1695.0, 190.0, 1695.0, 190.0, 1764.0, 103.0, 1764.0, 103.0, + 1695.0 + ] + ], + "area": 6003.0, + "bbox": [103.0, 1695.0, 87.0, 69.0], + "iscrowd": 0 + }, + { + "id": 47, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1546.0, 2164.0, 1600.0, 2164.0, 1600.0, 2240.0, 1546.0, 2240.0, + 1546.0, 2164.0 + ] + ], + "area": 4104.0, + "bbox": [1546.0, 2164.0, 54.0, 76.0], + "iscrowd": 0 + }, + { + "id": 48, + "image_id": 1, + "category_id": 3, + "segmentation": [[2275.0, 2921.0, 2250.0, 2965.0, 2300.0, 2965.0]], + "area": 1105.0, + "bbox": [2250.0, 2921.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 49, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1667.0, 823.0, 1736.0, 823.0, 1736.0, 901.0, 1667.0, 901.0, 1667.0, + 823.0 + ] + ], + "area": 5382.0, + "bbox": [1667.0, 823.0, 69.0, 78.0], + "iscrowd": 0 + }, + { + "id": 50, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3281.0, 666.0, 3378.0, 666.0, 3378.0, 727.0, 3281.0, 727.0, 3281.0, + 666.0 + ] + ], + "area": 5917.0, + "bbox": [3281.0, 666.0, 97.0, 61.0], + "iscrowd": 0 + }, + { + "id": 51, + "image_id": 1, + "category_id": 3, + "segmentation": [[2481.5, 984.0, 2456.0, 1029.0, 2507.0, 1029.0]], + "area": 1154.0, + "bbox": [2456.0, 984.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 52, + "image_id": 1, + "category_id": 3, + "segmentation": [[867.0, 1920.0, 833.0, 1980.0, 901.0, 1980.0]], + "area": 2048.0, + "bbox": [833.0, 1920.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 53, + "image_id": 1, + "category_id": 3, + "segmentation": [[1079.5, 750.0, 1042.0, 816.0, 1117.0, 816.0]], + "area": 2485.0, + "bbox": [1042.0, 750.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 54, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 3431.5, 677.0, 3435.82, 676.73, 3440.08, 675.92, 3444.2, 674.58, + 3448.12, 672.73, 3451.78, 670.41, 3455.12, 667.65, 3458.08, 664.49, + 3460.63, 660.99, 3462.72, 657.19, 3464.31, 653.16, 3465.39, 648.96, + 3465.93, 644.67, 3465.93, 640.33, 3465.39, 636.04, 3464.31, 631.84, + 3462.72, 627.81, 3460.63, 624.01, 3458.08, 620.51, 3455.12, 617.35, + 3451.78, 614.59, 3448.12, 612.27, 3444.2, 610.42, 3440.08, 609.08, + 3435.82, 608.27, 3431.5, 608.0, 3427.18, 608.27, 3422.92, 609.08, + 3418.8, 610.42, 3414.88, 612.27, 3411.22, 614.59, 3407.88, 617.35, + 3404.92, 620.51, 3402.37, 624.01, 3400.28, 627.81, 3398.69, 631.84, + 3397.61, 636.04, 3397.07, 640.33, 3397.07, 644.67, 3397.61, 648.96, + 3398.69, 653.16, 3400.28, 657.19, 3402.37, 660.99, 3404.92, 664.49, + 3407.88, 667.65, 3411.22, 670.41, 3414.88, 672.73, 3418.8, 674.58, + 3422.92, 675.92, 3427.18, 676.73 + ] + ], + "area": 3743.0, + "bbox": [3397.07, 608.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 55, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2368.0, 2157.0, 2425.0, 2157.0, 2425.0, 2227.0, 2368.0, 2227.0, + 2368.0, 2157.0 + ] + ], + "area": 3990.0, + "bbox": [2368.0, 2157.0, 57.0, 70.0], + "iscrowd": 0 + }, + { + "id": 56, + "image_id": 1, + "category_id": 3, + "segmentation": [[2047.0, 1564.0, 2017.0, 1617.0, 2077.0, 1617.0]], + "area": 1596.0, + "bbox": [2017.0, 1564.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 57, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 626.0, 1251.0, 693.0, 1251.0, 693.0, 1314.0, 626.0, 1314.0, 626.0, + 1251.0 + ] + ], + "area": 4221.0, + "bbox": [626.0, 1251.0, 67.0, 63.0], + "iscrowd": 0 + }, + { + "id": 58, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2879.0, 472.0, 2942.0, 472.0, 2942.0, 551.0, 2879.0, 551.0, 2879.0, + 472.0 + ] + ], + "area": 4977.0, + "bbox": [2879.0, 472.0, 63.0, 79.0], + "iscrowd": 0 + }, + { + "id": 59, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3347.0, 2715.0, 3434.0, 2715.0, 3434.0, 2794.0, 3347.0, 2794.0, + 3347.0, 2715.0 + ] + ], + "area": 6873.0, + "bbox": [3347.0, 2715.0, 87.0, 79.0], + "iscrowd": 0 + }, + { + "id": 60, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1737.0, 3035.0, 1810.0, 3035.0, 1810.0, 3122.0, 1737.0, 3122.0, + 1737.0, 3035.0 + ] + ], + "area": 6351.0, + "bbox": [1737.0, 3035.0, 73.0, 87.0], + "iscrowd": 0 + }, + { + "id": 61, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 3162.0, 621.0, 3259.0, 621.0, 3259.0, 680.0, 3162.0, 680.0, 3162.0, + 621.0 + ] + ], + "area": 5723.0, + "bbox": [3162.0, 621.0, 97.0, 59.0], + "iscrowd": 0 + }, + { + "id": 62, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 516.0, 3306.0, 571.0, 3306.0, 571.0, 3356.0, 516.0, 3356.0, 516.0, + 3306.0 + ] + ], + "area": 2750.0, + "bbox": [516.0, 3306.0, 55.0, 50.0], + "iscrowd": 0 + }, + { + "id": 63, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 204.5, 2181.0, 208.82, 2180.73, 213.08, 2179.92, 217.2, 2178.58, + 221.12, 2176.73, 224.78, 2174.41, 228.12, 2171.65, 231.08, 2168.49, + 233.63, 2164.99, 235.72, 2161.19, 237.31, 2157.16, 238.39, 2152.96, + 238.93, 2148.67, 238.93, 2144.33, 238.39, 2140.04, 237.31, 2135.84, + 235.72, 2131.81, 233.63, 2128.01, 231.08, 2124.51, 228.12, 2121.35, + 224.78, 2118.59, 221.12, 2116.27, 217.2, 2114.42, 213.08, 2113.08, + 208.82, 2112.27, 204.5, 2112.0, 200.18, 2112.27, 195.92, 2113.08, + 191.8, 2114.42, 187.88, 2116.27, 184.22, 2118.59, 180.88, 2121.35, + 177.92, 2124.51, 175.37, 2128.01, 173.28, 2131.81, 171.69, 2135.84, + 170.61, 2140.04, 170.07, 2144.33, 170.07, 2148.67, 170.61, 2152.96, + 171.69, 2157.16, 173.28, 2161.19, 175.37, 2164.99, 177.92, 2168.49, + 180.88, 2171.65, 184.22, 2174.41, 187.88, 2176.73, 191.8, 2178.58, + 195.92, 2179.92, 200.18, 2180.73 + ] + ], + "area": 3743.0, + "bbox": [170.07, 2112.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 64, + "image_id": 1, + "category_id": 3, + "segmentation": [[3387.0, 750.0, 3351.0, 813.0, 3423.0, 813.0]], + "area": 2268.0, + "bbox": [3351.0, 750.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 65, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [128.0, 797.0, 197.0, 797.0, 197.0, 848.0, 128.0, 848.0, 128.0, 797.0] + ], + "area": 3519.0, + "bbox": [128.0, 797.0, 69.0, 51.0], + "iscrowd": 0 + }, + { + "id": 66, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 1210.0, 639.5, 1209.63, 645.33, 1208.54, 651.06, 1206.73, 656.62, + 1204.25, 661.9, 1201.12, 666.83, 1197.4, 671.33, 1193.14, 675.33, + 1188.42, 678.76, 1183.3, 681.57, 1177.87, 683.72, 1172.21, 685.18, + 1166.42, 685.91, 1160.58, 685.91, 1154.79, 685.18, 1149.13, 683.72, + 1143.7, 681.57, 1138.58, 678.76, 1133.86, 675.33, 1129.6, 671.33, + 1125.88, 666.83, 1122.75, 661.9, 1120.27, 656.62, 1118.46, 651.06, + 1117.37, 645.33, 1117.0, 639.5, 1117.37, 633.67, 1118.46, 627.94, + 1120.27, 622.38, 1122.75, 617.1, 1125.88, 612.17, 1129.6, 607.67, + 1133.86, 603.67, 1138.58, 600.24, 1143.7, 597.43, 1149.13, 595.28, + 1154.79, 593.82, 1160.58, 593.09, 1166.42, 593.09, 1172.21, 593.82, + 1177.87, 595.28, 1183.3, 597.43, 1188.42, 600.24, 1193.14, 603.67, + 1197.4, 607.67, 1201.12, 612.17, 1204.25, 617.1, 1206.73, 622.38, + 1208.54, 627.94, 1209.63, 633.67 + ] + ], + "area": 6782.0, + "bbox": [1117.0, 593.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 67, + "image_id": 1, + "category_id": 3, + "segmentation": [[2673.5, 2483.0, 2633.0, 2554.0, 2714.0, 2554.0]], + "area": 2881.0, + "bbox": [2633.0, 2483.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 68, + "image_id": 1, + "category_id": 3, + "segmentation": [[678.0, 1589.0, 639.0, 1657.0, 717.0, 1657.0]], + "area": 2660.0, + "bbox": [639.0, 1589.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 69, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 165.5, 3195.0, 171.08, 3194.65, 176.57, 3193.6, 181.88, 3191.88, + 186.94, 3189.5, 191.66, 3186.5, 195.96, 3182.94, 199.79, 3178.87, + 203.07, 3174.34, 205.76, 3169.45, 207.82, 3164.25, 209.21, 3158.84, + 209.91, 3153.29, 209.91, 3147.71, 209.21, 3142.16, 207.82, 3136.75, + 205.76, 3131.55, 203.07, 3126.66, 199.79, 3122.13, 195.96, 3118.06, + 191.66, 3114.5, 186.94, 3111.5, 181.88, 3109.12, 176.57, 3107.4, + 171.08, 3106.35, 165.5, 3106.0, 159.92, 3106.35, 154.43, 3107.4, + 149.12, 3109.12, 144.06, 3111.5, 139.34, 3114.5, 135.04, 3118.06, + 131.21, 3122.13, 127.93, 3126.66, 125.24, 3131.55, 123.18, 3136.75, + 121.79, 3142.16, 121.09, 3147.71, 121.09, 3153.29, 121.79, 3158.84, + 123.18, 3164.25, 125.24, 3169.45, 127.93, 3174.34, 131.21, 3178.87, + 135.04, 3182.94, 139.34, 3186.5, 144.06, 3189.5, 149.12, 3191.88, + 154.43, 3193.6, 159.92, 3194.65 + ] + ], + "area": 6209.0, + "bbox": [121.09, 3106.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 70, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2589.5, 1461.0, 2593.2, 1460.77, 2596.84, 1460.07, 2600.36, 1458.93, + 2603.71, 1457.35, 2606.84, 1455.37, 2609.69, 1453.0, 2612.23, 1450.3, + 2614.41, 1447.31, 2616.19, 1444.06, 2617.56, 1440.62, 2618.48, + 1437.03, 2618.94, 1433.35, 2618.94, 1429.65, 2618.48, 1425.97, + 2617.56, 1422.38, 2616.19, 1418.94, 2614.41, 1415.69, 2612.23, 1412.7, + 2609.69, 1410.0, 2606.84, 1407.63, 2603.71, 1405.65, 2600.36, 1404.07, + 2596.84, 1402.93, 2593.2, 1402.23, 2589.5, 1402.0, 2585.8, 1402.23, + 2582.16, 1402.93, 2578.64, 1404.07, 2575.29, 1405.65, 2572.16, + 1407.63, 2569.31, 1410.0, 2566.77, 1412.7, 2564.59, 1415.69, 2562.81, + 1418.94, 2561.44, 1422.38, 2560.52, 1425.97, 2560.06, 1429.65, + 2560.06, 1433.35, 2560.52, 1437.03, 2561.44, 1440.62, 2562.81, + 1444.06, 2564.59, 1447.31, 2566.77, 1450.3, 2569.31, 1453.0, 2572.16, + 1455.37, 2575.29, 1457.35, 2578.64, 1458.93, 2582.16, 1460.07, 2585.8, + 1460.77 + ] + ], + "area": 2732.0, + "bbox": [2560.06, 1402.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 71, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2205.0, 2878.5, 2204.73, 2882.82, 2203.92, 2887.08, 2202.58, 2891.2, + 2200.73, 2895.12, 2198.41, 2898.78, 2195.65, 2902.12, 2192.49, + 2905.08, 2188.99, 2907.63, 2185.19, 2909.72, 2181.16, 2911.31, + 2176.96, 2912.39, 2172.67, 2912.93, 2168.33, 2912.93, 2164.04, + 2912.39, 2159.84, 2911.31, 2155.81, 2909.72, 2152.01, 2907.63, + 2148.51, 2905.08, 2145.35, 2902.12, 2142.59, 2898.78, 2140.27, + 2895.12, 2138.42, 2891.2, 2137.08, 2887.08, 2136.27, 2882.82, 2136.0, + 2878.5, 2136.27, 2874.18, 2137.08, 2869.92, 2138.42, 2865.8, 2140.27, + 2861.88, 2142.59, 2858.22, 2145.35, 2854.88, 2148.51, 2851.92, + 2152.01, 2849.37, 2155.81, 2847.28, 2159.84, 2845.69, 2164.04, + 2844.61, 2168.33, 2844.07, 2172.67, 2844.07, 2176.96, 2844.61, + 2181.16, 2845.69, 2185.19, 2847.28, 2188.99, 2849.37, 2192.49, + 2851.92, 2195.65, 2854.88, 2198.41, 2858.22, 2200.73, 2861.88, + 2202.58, 2865.8, 2203.92, 2869.92, 2204.73, 2874.18 + ] + ], + "area": 3743.0, + "bbox": [2136.0, 2844.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 72, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 985.0, 1388.5, 984.7, 1393.33, 983.79, 1398.07, 982.3, 1402.67, + 980.24, 1407.05, 977.65, 1411.13, 974.57, 1414.86, 971.04, 1418.16, + 967.13, 1421.01, 962.89, 1423.34, 958.4, 1425.12, 953.71, 1426.32, + 948.92, 1426.92, 944.08, 1426.92, 939.29, 1426.32, 934.6, 1425.12, + 930.11, 1423.34, 925.87, 1421.01, 921.96, 1418.16, 918.43, 1414.86, + 915.35, 1411.13, 912.76, 1407.05, 910.7, 1402.67, 909.21, 1398.07, + 908.3, 1393.33, 908.0, 1388.5, 908.3, 1383.67, 909.21, 1378.93, 910.7, + 1374.33, 912.76, 1369.95, 915.35, 1365.87, 918.43, 1362.14, 921.96, + 1358.84, 925.87, 1355.99, 930.11, 1353.66, 934.6, 1351.88, 939.29, + 1350.68, 944.08, 1350.08, 948.92, 1350.08, 953.71, 1350.68, 958.4, + 1351.88, 962.89, 1353.66, 967.13, 1355.99, 971.04, 1358.84, 974.57, + 1362.14, 977.65, 1365.87, 980.24, 1369.95, 982.3, 1374.33, 983.79, + 1378.93, 984.7, 1383.67 + ] + ], + "area": 4653.0, + "bbox": [908.0, 1350.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 73, + "image_id": 1, + "category_id": 3, + "segmentation": [[2160.0, 704.0, 2128.0, 760.0, 2192.0, 760.0]], + "area": 1792.0, + "bbox": [2128.0, 704.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 74, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 2922.0, 1040.0, 2986.0, 1040.0, 2986.0, 1100.0, 2922.0, 1100.0, + 2922.0, 1040.0 + ] + ], + "area": 3840.0, + "bbox": [2922.0, 1040.0, 64.0, 60.0], + "iscrowd": 0 + }, + { + "id": 75, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 287.0, 3293.0, 365.0, 3293.0, 365.0, 3363.0, 287.0, 3363.0, 287.0, + 3293.0 + ] + ], + "area": 5460.0, + "bbox": [287.0, 3293.0, 78.0, 70.0], + "iscrowd": 0 + }, + { + "id": 76, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1460.0, 2852.0, 1531.0, 2852.0, 1531.0, 2931.0, 1460.0, 2931.0, + 1460.0, 2852.0 + ] + ], + "area": 5609.0, + "bbox": [1460.0, 2852.0, 71.0, 79.0], + "iscrowd": 0 + }, + { + "id": 77, + "image_id": 1, + "category_id": 2, + "segmentation": [ + [ + 2648.5, 1586.0, 2651.57, 1585.81, 2654.59, 1585.23, 2657.52, 1584.28, + 2660.3, 1582.97, 2662.9, 1581.32, 2665.27, 1579.36, 2667.38, 1577.12, + 2669.19, 1574.63, 2670.67, 1571.93, 2671.8, 1569.07, 2672.57, 1566.09, + 2672.95, 1563.04, 2672.95, 1559.96, 2672.57, 1556.91, 2671.8, 1553.93, + 2670.67, 1551.07, 2669.19, 1548.37, 2667.38, 1545.88, 2665.27, + 1543.64, 2662.9, 1541.68, 2660.3, 1540.03, 2657.52, 1538.72, 2654.59, + 1537.77, 2651.57, 1537.19, 2648.5, 1537.0, 2645.43, 1537.19, 2642.41, + 1537.77, 2639.48, 1538.72, 2636.7, 1540.03, 2634.1, 1541.68, 2631.73, + 1543.64, 2629.62, 1545.88, 2627.81, 1548.37, 2626.33, 1551.07, 2625.2, + 1553.93, 2624.43, 1556.91, 2624.05, 1559.96, 2624.05, 1563.04, + 2624.43, 1566.09, 2625.2, 1569.07, 2626.33, 1571.93, 2627.81, 1574.63, + 2629.62, 1577.12, 2631.73, 1579.36, 2634.1, 1581.32, 2636.7, 1582.97, + 2639.48, 1584.28, 2642.41, 1585.23, 2645.43, 1585.81 + ] + ], + "area": 1885.0, + "bbox": [2624.05, 1537.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 78, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 1314.0, 1027.0, 1401.0, 1027.0, 1401.0, 1120.0, 1314.0, 1120.0, + 1314.0, 1027.0 + ] + ], + "area": 8091.0, + "bbox": [1314.0, 1027.0, 87.0, 93.0], + "iscrowd": 0 + }, + { + "id": 79, + "image_id": 1, + "category_id": 3, + "segmentation": [[586.0, 1102.0, 551.0, 1163.0, 621.0, 1163.0]], + "area": 2142.0, + "bbox": [551.0, 1102.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 80, + "image_id": 1, + "category_id": 1, + "segmentation": [ + [ + 720.0, 2445.0, 774.0, 2445.0, 774.0, 2518.0, 720.0, 2518.0, 720.0, + 2445.0 + ] + ], + "area": 3942.0, + "bbox": [720.0, 2445.0, 54.0, 73.0], + "iscrowd": 0 + }, + { + "id": 81, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3012.0, 1394.0, 3078.0, 1394.0, 3078.0, 1493.0, 3012.0, 1493.0, + 3012.0, 1394.0 + ] + ], + "area": 6534.0, + "bbox": [3012.0, 1394.0, 66.0, 99.0], + "iscrowd": 0 + }, + { + "id": 82, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2218.0, 2280.0, 2294.0, 2280.0, 2294.0, 2342.0, 2218.0, 2342.0, + 2218.0, 2280.0 + ] + ], + "area": 4712.0, + "bbox": [2218.0, 2280.0, 76.0, 62.0], + "iscrowd": 0 + }, + { + "id": 83, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1355.0, 683.5, 1354.75, 687.45, 1354.01, 691.33, 1352.79, 695.1, + 1351.1, 698.68, 1348.98, 702.02, 1346.46, 705.06, 1343.58, 707.77, + 1340.38, 710.1, 1336.91, 712.0, 1333.23, 713.46, 1329.4, 714.44, + 1325.48, 714.94, 1321.52, 714.94, 1317.6, 714.44, 1313.77, 713.46, + 1310.09, 712.0, 1306.62, 710.1, 1303.42, 707.77, 1300.54, 705.06, + 1298.02, 702.02, 1295.9, 698.68, 1294.21, 695.1, 1292.99, 691.33, + 1292.25, 687.45, 1292.0, 683.5, 1292.25, 679.55, 1292.99, 675.67, + 1294.21, 671.9, 1295.9, 668.32, 1298.02, 664.98, 1300.54, 661.94, + 1303.42, 659.23, 1306.62, 656.9, 1310.09, 655.0, 1313.77, 653.54, + 1317.6, 652.56, 1321.52, 652.06, 1325.48, 652.06, 1329.4, 652.56, + 1333.23, 653.54, 1336.91, 655.0, 1340.38, 656.9, 1343.58, 659.23, + 1346.46, 661.94, 1348.98, 664.98, 1351.1, 668.32, 1352.79, 671.9, + 1354.01, 675.67, 1354.75, 679.55 + ] + ], + "area": 3122.0, + "bbox": [1292.0, 652.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 84, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [3171.0, 18.0, 3272.0, 18.0, 3272.0, 83.0, 3171.0, 83.0, 3171.0, 18.0] + ], + "area": 6565.0, + "bbox": [3171.0, 18.0, 101.0, 65.0], + "iscrowd": 0 + }, + { + "id": 85, + "image_id": 2, + "category_id": 3, + "segmentation": [[2493.0, 2561.0, 2453.0, 2631.0, 2533.0, 2631.0]], + "area": 2800.0, + "bbox": [2453.0, 2561.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 86, + "image_id": 2, + "category_id": 3, + "segmentation": [[1347.0, 2083.0, 1316.0, 2137.0, 1378.0, 2137.0]], + "area": 1680.0, + "bbox": [1316.0, 2083.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 87, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 724.5, 2737.0, 729.7, 2736.67, 734.82, 2735.7, 739.78, 2734.09, + 744.49, 2731.87, 748.89, 2729.07, 752.91, 2725.75, 756.48, 2721.95, + 759.54, 2717.74, 762.05, 2713.17, 763.97, 2708.32, 765.26, 2703.28, + 765.92, 2698.11, 765.92, 2692.89, 765.26, 2687.72, 763.97, 2682.68, + 762.05, 2677.83, 759.54, 2673.26, 756.48, 2669.05, 752.91, 2665.25, + 748.89, 2661.93, 744.49, 2659.13, 739.78, 2656.91, 734.82, 2655.3, + 729.7, 2654.33, 724.5, 2654.0, 719.3, 2654.33, 714.18, 2655.3, 709.22, + 2656.91, 704.51, 2659.13, 700.11, 2661.93, 696.09, 2665.25, 692.52, + 2669.05, 689.46, 2673.26, 686.95, 2677.83, 685.03, 2682.68, 683.74, + 2687.72, 683.08, 2692.89, 683.08, 2698.11, 683.74, 2703.28, 685.03, + 2708.32, 686.95, 2713.17, 689.46, 2717.74, 692.52, 2721.95, 696.09, + 2725.75, 700.11, 2729.07, 704.51, 2731.87, 709.22, 2734.09, 714.18, + 2735.7, 719.3, 2736.67 + ] + ], + "area": 5392.0, + "bbox": [683.08, 2654.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 88, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2074.0, 1303.5, 2073.66, 1308.83, 2072.66, 1314.07, 2071.02, 1319.15, + 2068.74, 1323.97, 2065.88, 1328.48, 2062.48, 1332.59, 2058.59, + 1336.25, 2054.27, 1339.38, 2049.6, 1341.96, 2044.63, 1343.92, 2039.46, + 1345.25, 2034.17, 1345.92, 2028.83, 1345.92, 2023.54, 1345.25, + 2018.37, 1343.92, 2013.4, 1341.96, 2008.73, 1339.38, 2004.41, 1336.25, + 2000.52, 1332.59, 1997.12, 1328.48, 1994.26, 1323.97, 1991.98, + 1319.15, 1990.34, 1314.07, 1989.34, 1308.83, 1989.0, 1303.5, 1989.34, + 1298.17, 1990.34, 1292.93, 1991.98, 1287.85, 1994.26, 1283.03, + 1997.12, 1278.52, 2000.52, 1274.41, 2004.41, 1270.75, 2008.73, + 1267.62, 2013.4, 1265.04, 2018.37, 1263.08, 2023.54, 1261.75, 2028.83, + 1261.08, 2034.17, 1261.08, 2039.46, 1261.75, 2044.63, 1263.08, 2049.6, + 1265.04, 2054.27, 1267.62, 2058.59, 1270.75, 2062.48, 1274.41, + 2065.88, 1278.52, 2068.74, 1283.03, 2071.02, 1287.85, 2072.66, + 1292.93, 2073.66, 1298.17 + ] + ], + "area": 5651.0, + "bbox": [1989.0, 1261.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 89, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 557.0, 1268.5, 556.68, 1273.58, 555.73, 1278.57, 554.16, 1283.41, + 551.99, 1288.01, 549.27, 1292.31, 546.02, 1296.22, 542.32, 1299.71, + 538.2, 1302.7, 533.74, 1305.15, 529.02, 1307.02, 524.09, 1308.28, + 519.04, 1308.92, 513.96, 1308.92, 508.91, 1308.28, 503.98, 1307.02, + 499.26, 1305.15, 494.8, 1302.7, 490.68, 1299.71, 486.98, 1296.22, + 483.73, 1292.31, 481.01, 1288.01, 478.84, 1283.41, 477.27, 1278.57, + 476.32, 1273.58, 476.0, 1268.5, 476.32, 1263.42, 477.27, 1258.43, + 478.84, 1253.59, 481.01, 1248.99, 483.73, 1244.69, 486.98, 1240.78, + 490.68, 1237.29, 494.8, 1234.3, 499.26, 1231.85, 503.98, 1229.98, + 508.91, 1228.72, 513.96, 1228.08, 519.04, 1228.08, 524.09, 1228.72, + 529.02, 1229.98, 533.74, 1231.85, 538.2, 1234.3, 542.32, 1237.29, + 546.02, 1240.78, 549.27, 1244.69, 551.99, 1248.99, 554.16, 1253.59, + 555.73, 1258.43, 556.68, 1263.42 + ] + ], + "area": 5149.0, + "bbox": [476.0, 1228.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 90, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1562.5, 3305.0, 1566.7, 3304.74, 1570.83, 3303.95, 1574.83, 3302.65, + 1578.64, 3300.86, 1582.19, 3298.6, 1585.43, 3295.92, 1588.31, 3292.85, + 1590.78, 3289.45, 1592.81, 3285.76, 1594.36, 3281.85, 1595.41, + 3277.78, 1595.93, 3273.6, 1595.93, 3269.4, 1595.41, 3265.22, 1594.36, + 3261.15, 1592.81, 3257.24, 1590.78, 3253.55, 1588.31, 3250.15, + 1585.43, 3247.08, 1582.19, 3244.4, 1578.64, 3242.14, 1574.83, 3240.35, + 1570.83, 3239.05, 1566.7, 3238.26, 1562.5, 3238.0, 1558.3, 3238.26, + 1554.17, 3239.05, 1550.17, 3240.35, 1546.36, 3242.14, 1542.81, 3244.4, + 1539.57, 3247.08, 1536.69, 3250.15, 1534.22, 3253.55, 1532.19, + 3257.24, 1530.64, 3261.15, 1529.59, 3265.22, 1529.07, 3269.4, 1529.07, + 3273.6, 1529.59, 3277.78, 1530.64, 3281.85, 1532.19, 3285.76, 1534.22, + 3289.45, 1536.69, 3292.85, 1539.57, 3295.92, 1542.81, 3298.6, 1546.36, + 3300.86, 1550.17, 3302.65, 1554.17, 3303.95, 1558.3, 3304.74 + ] + ], + "area": 3520.0, + "bbox": [1529.07, 3238.0, 66.86, 67.0], + "iscrowd": 0 + }, + { + "id": 91, + "image_id": 2, + "category_id": 3, + "segmentation": [[2177.5, 3058.0, 2136.0, 3131.0, 2219.0, 3131.0]], + "area": 3040.0, + "bbox": [2136.0, 3058.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 92, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2504.0, 187.0, 2583.0, 187.0, 2583.0, 250.0, 2504.0, 250.0, 2504.0, + 187.0 + ] + ], + "area": 4977.0, + "bbox": [2504.0, 187.0, 79.0, 63.0], + "iscrowd": 0 + }, + { + "id": 93, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2202.5, 1624.0, 2207.83, 1623.66, 2213.07, 1622.66, 2218.15, 1621.02, + 2222.97, 1618.74, 2227.48, 1615.88, 2231.59, 1612.48, 2235.25, + 1608.59, 2238.38, 1604.27, 2240.96, 1599.6, 2242.92, 1594.63, 2244.25, + 1589.46, 2244.92, 1584.17, 2244.92, 1578.83, 2244.25, 1573.54, + 2242.92, 1568.37, 2240.96, 1563.4, 2238.38, 1558.73, 2235.25, 1554.41, + 2231.59, 1550.52, 2227.48, 1547.12, 2222.97, 1544.26, 2218.15, + 1541.98, 2213.07, 1540.34, 2207.83, 1539.34, 2202.5, 1539.0, 2197.17, + 1539.34, 2191.93, 1540.34, 2186.85, 1541.98, 2182.03, 1544.26, + 2177.52, 1547.12, 2173.41, 1550.52, 2169.75, 1554.41, 2166.62, + 1558.73, 2164.04, 1563.4, 2162.08, 1568.37, 2160.75, 1573.54, 2160.08, + 1578.83, 2160.08, 1584.17, 2160.75, 1589.46, 2162.08, 1594.63, + 2164.04, 1599.6, 2166.62, 1604.27, 2169.75, 1608.59, 2173.41, 1612.48, + 2177.52, 1615.88, 2182.03, 1618.74, 2186.85, 1621.02, 2191.93, + 1622.66, 2197.17, 1623.66 + ] + ], + "area": 5651.0, + "bbox": [2160.08, 1539.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 94, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3310.0, 2061.0, 3397.0, 2061.0, 3397.0, 2152.0, 3310.0, 2152.0, + 3310.0, 2061.0 + ] + ], + "area": 7917.0, + "bbox": [3310.0, 2061.0, 87.0, 91.0], + "iscrowd": 0 + }, + { + "id": 95, + "image_id": 2, + "category_id": 3, + "segmentation": [[3275.5, 831.0, 3244.0, 886.0, 3307.0, 886.0]], + "area": 1739.0, + "bbox": [3244.0, 831.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 96, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1458.0, 1406.0, 1542.0, 1406.0, 1542.0, 1505.0, 1458.0, 1505.0, + 1458.0, 1406.0 + ] + ], + "area": 8316.0, + "bbox": [1458.0, 1406.0, 84.0, 99.0], + "iscrowd": 0 + }, + { + "id": 97, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2691.0, 1125.0, 2768.0, 1125.0, 2768.0, 1194.0, 2691.0, 1194.0, + 2691.0, 1125.0 + ] + ], + "area": 5313.0, + "bbox": [2691.0, 1125.0, 77.0, 69.0], + "iscrowd": 0 + }, + { + "id": 98, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2571.0, 551.0, 2644.0, 551.0, 2644.0, 637.0, 2571.0, 637.0, 2571.0, + 551.0 + ] + ], + "area": 6278.0, + "bbox": [2571.0, 551.0, 73.0, 86.0], + "iscrowd": 0 + }, + { + "id": 99, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3011.0, 3427.0, 3073.0, 3427.0, 3073.0, 3494.0, 3011.0, 3494.0, + 3011.0, 3427.0 + ] + ], + "area": 4154.0, + "bbox": [3011.0, 3427.0, 62.0, 67.0], + "iscrowd": 0 + }, + { + "id": 100, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 572.0, 1910.0, 664.0, 1910.0, 664.0, 1966.0, 572.0, 1966.0, 572.0, + 1910.0 + ] + ], + "area": 5152.0, + "bbox": [572.0, 1910.0, 92.0, 56.0], + "iscrowd": 0 + }, + { + "id": 101, + "image_id": 2, + "category_id": 3, + "segmentation": [[1206.5, 1514.0, 1181.0, 1559.0, 1232.0, 1559.0]], + "area": 1154.0, + "bbox": [1181.0, 1514.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 102, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2713.0, 2144.5, 2712.71, 2149.07, 2711.85, 2153.58, 2710.44, 2157.94, + 2708.49, 2162.08, 2706.03, 2165.95, 2703.11, 2169.49, 2699.77, + 2172.62, 2696.06, 2175.32, 2692.04, 2177.53, 2687.78, 2179.21, + 2683.34, 2180.35, 2678.79, 2180.93, 2674.21, 2180.93, 2669.66, + 2180.35, 2665.22, 2179.21, 2660.96, 2177.53, 2656.94, 2175.32, + 2653.23, 2172.62, 2649.89, 2169.49, 2646.97, 2165.95, 2644.51, + 2162.08, 2642.56, 2157.94, 2641.15, 2153.58, 2640.29, 2149.07, 2640.0, + 2144.5, 2640.29, 2139.93, 2641.15, 2135.42, 2642.56, 2131.06, 2644.51, + 2126.92, 2646.97, 2123.05, 2649.89, 2119.51, 2653.23, 2116.38, + 2656.94, 2113.68, 2660.96, 2111.47, 2665.22, 2109.79, 2669.66, + 2108.65, 2674.21, 2108.07, 2678.79, 2108.07, 2683.34, 2108.65, + 2687.78, 2109.79, 2692.04, 2111.47, 2696.06, 2113.68, 2699.77, + 2116.38, 2703.11, 2119.51, 2706.03, 2123.05, 2708.49, 2126.92, + 2710.44, 2131.06, 2711.85, 2135.42, 2712.71, 2139.93 + ] + ], + "area": 4187.0, + "bbox": [2640.0, 2108.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 103, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3307.0, 3242.0, 3402.0, 3242.0, 3402.0, 3313.0, 3307.0, 3313.0, + 3307.0, 3242.0 + ] + ], + "area": 6745.0, + "bbox": [3307.0, 3242.0, 95.0, 71.0], + "iscrowd": 0 + }, + { + "id": 104, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2041.0, 2619.0, 2096.0, 2619.0, 2096.0, 2716.0, 2041.0, 2716.0, + 2041.0, 2619.0 + ] + ], + "area": 5335.0, + "bbox": [2041.0, 2619.0, 55.0, 97.0], + "iscrowd": 0 + }, + { + "id": 105, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2247.0, 2189.0, 2311.0, 2189.0, 2311.0, 2273.0, 2247.0, 2273.0, + 2247.0, 2189.0 + ] + ], + "area": 5376.0, + "bbox": [2247.0, 2189.0, 64.0, 84.0], + "iscrowd": 0 + }, + { + "id": 106, + "image_id": 2, + "category_id": 3, + "segmentation": [[359.0, 971.0, 332.0, 1018.0, 386.0, 1018.0]], + "area": 1274.0, + "bbox": [332.0, 971.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 107, + "image_id": 2, + "category_id": 3, + "segmentation": [[1775.5, 1401.0, 1743.0, 1458.0, 1808.0, 1458.0]], + "area": 1857.0, + "bbox": [1743.0, 1401.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 108, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [294.0, 375.0, 353.0, 375.0, 353.0, 438.0, 294.0, 438.0, 294.0, 375.0] + ], + "area": 3717.0, + "bbox": [294.0, 375.0, 59.0, 63.0], + "iscrowd": 0 + }, + { + "id": 109, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3405.0, 1796.0, 3477.0, 1796.0, 3477.0, 1884.0, 3405.0, 1884.0, + 3405.0, 1796.0 + ] + ], + "area": 6336.0, + "bbox": [3405.0, 1796.0, 72.0, 88.0], + "iscrowd": 0 + }, + { + "id": 110, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2960.0, 3116.0, 3041.0, 3116.0, 3041.0, 3211.0, 2960.0, 3211.0, + 2960.0, 3116.0 + ] + ], + "area": 7695.0, + "bbox": [2960.0, 3116.0, 81.0, 95.0], + "iscrowd": 0 + }, + { + "id": 111, + "image_id": 2, + "category_id": 3, + "segmentation": [[3315.0, 2486.0, 3278.0, 2551.0, 3352.0, 2551.0]], + "area": 2412.0, + "bbox": [3278.0, 2486.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 112, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [62.0, 3175.0, 145.0, 3175.0, 145.0, 3271.0, 62.0, 3271.0, 62.0, 3175.0] + ], + "area": 7968.0, + "bbox": [62.0, 3175.0, 83.0, 96.0], + "iscrowd": 0 + }, + { + "id": 113, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2286.0, 1972.0, 2344.0, 1972.0, 2344.0, 2032.0, 2286.0, 2032.0, + 2286.0, 1972.0 + ] + ], + "area": 3480.0, + "bbox": [2286.0, 1972.0, 58.0, 60.0], + "iscrowd": 0 + }, + { + "id": 114, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1187.0, 1263.0, 1264.0, 1263.0, 1264.0, 1332.0, 1187.0, 1332.0, + 1187.0, 1263.0 + ] + ], + "area": 5313.0, + "bbox": [1187.0, 1263.0, 77.0, 69.0], + "iscrowd": 0 + }, + { + "id": 115, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1440.0, 1770.0, 1513.0, 1770.0, 1513.0, 1855.0, 1440.0, 1855.0, + 1440.0, 1770.0 + ] + ], + "area": 6205.0, + "bbox": [1440.0, 1770.0, 73.0, 85.0], + "iscrowd": 0 + }, + { + "id": 116, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2146.0, 695.0, 2209.0, 695.0, 2209.0, 778.0, 2146.0, 778.0, 2146.0, + 695.0 + ] + ], + "area": 5229.0, + "bbox": [2146.0, 695.0, 63.0, 83.0], + "iscrowd": 0 + }, + { + "id": 117, + "image_id": 2, + "category_id": 3, + "segmentation": [[2433.0, 1507.0, 2390.0, 1582.0, 2476.0, 1582.0]], + "area": 3234.0, + "bbox": [2390.0, 1507.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 118, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [3.0, 452.0, 53.0, 452.0, 53.0, 545.0, 3.0, 545.0, 3.0, 452.0] + ], + "area": 4650.0, + "bbox": [3.0, 452.0, 50.0, 93.0], + "iscrowd": 0 + }, + { + "id": 119, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2732.0, 3227.0, 2823.0, 3227.0, 2823.0, 3305.0, 2732.0, 3305.0, + 2732.0, 3227.0 + ] + ], + "area": 7098.0, + "bbox": [2732.0, 3227.0, 91.0, 78.0], + "iscrowd": 0 + }, + { + "id": 120, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2795.0, 1595.0, 2848.0, 1595.0, 2848.0, 1670.0, 2795.0, 1670.0, + 2795.0, 1595.0 + ] + ], + "area": 3975.0, + "bbox": [2795.0, 1595.0, 53.0, 75.0], + "iscrowd": 0 + }, + { + "id": 121, + "image_id": 2, + "category_id": 3, + "segmentation": [[1791.0, 1816.0, 1751.0, 1886.0, 1831.0, 1886.0]], + "area": 2800.0, + "bbox": [1751.0, 1816.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 122, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1980.0, 35.5, 1979.78, 38.95, 1979.14, 42.34, 1978.07, 45.62, 1976.6, + 48.75, 1974.75, 51.66, 1972.55, 54.33, 1970.03, 56.69, 1967.24, 58.72, + 1964.21, 60.38, 1961.0, 61.65, 1957.65, 62.51, 1954.23, 62.95, + 1950.77, 62.95, 1947.35, 62.51, 1944.0, 61.65, 1940.79, 60.38, + 1937.76, 58.72, 1934.97, 56.69, 1932.45, 54.33, 1930.25, 51.66, + 1928.4, 48.75, 1926.93, 45.62, 1925.86, 42.34, 1925.22, 38.95, 1925.0, + 35.5, 1925.22, 32.05, 1925.86, 28.66, 1926.93, 25.38, 1928.4, 22.25, + 1930.25, 19.34, 1932.45, 16.67, 1934.97, 14.31, 1937.76, 12.28, + 1940.79, 10.62, 1944.0, 9.35, 1947.35, 8.49, 1950.77, 8.05, 1954.23, + 8.05, 1957.65, 8.49, 1961.0, 9.35, 1964.21, 10.62, 1967.24, 12.28, + 1970.03, 14.31, 1972.55, 16.67, 1974.75, 19.34, 1976.6, 22.25, + 1978.07, 25.38, 1979.14, 28.66, 1979.78, 32.05 + ] + ], + "area": 2375.0, + "bbox": [1925.0, 8.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 123, + "image_id": 2, + "category_id": 3, + "segmentation": [[955.5, 1724.0, 919.0, 1788.0, 992.0, 1788.0]], + "area": 2341.0, + "bbox": [919.0, 1724.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 124, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1834.0, 3138.0, 1922.0, 3138.0, 1922.0, 3213.0, 1834.0, 3213.0, + 1834.0, 3138.0 + ] + ], + "area": 6600.0, + "bbox": [1834.0, 3138.0, 88.0, 75.0], + "iscrowd": 0 + }, + { + "id": 125, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [49.0, 1305.0, 120.0, 1305.0, 120.0, 1360.0, 49.0, 1360.0, 49.0, 1305.0] + ], + "area": 3905.0, + "bbox": [49.0, 1305.0, 71.0, 55.0], + "iscrowd": 0 + }, + { + "id": 126, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 577.5, 2617.0, 581.82, 2616.73, 586.08, 2615.92, 590.2, 2614.58, + 594.12, 2612.73, 597.78, 2610.41, 601.12, 2607.65, 604.08, 2604.49, + 606.63, 2600.99, 608.72, 2597.19, 610.31, 2593.16, 611.39, 2588.96, + 611.93, 2584.67, 611.93, 2580.33, 611.39, 2576.04, 610.31, 2571.84, + 608.72, 2567.81, 606.63, 2564.01, 604.08, 2560.51, 601.12, 2557.35, + 597.78, 2554.59, 594.12, 2552.27, 590.2, 2550.42, 586.08, 2549.08, + 581.82, 2548.27, 577.5, 2548.0, 573.18, 2548.27, 568.92, 2549.08, + 564.8, 2550.42, 560.88, 2552.27, 557.22, 2554.59, 553.88, 2557.35, + 550.92, 2560.51, 548.37, 2564.01, 546.28, 2567.81, 544.69, 2571.84, + 543.61, 2576.04, 543.07, 2580.33, 543.07, 2584.67, 543.61, 2588.96, + 544.69, 2593.16, 546.28, 2597.19, 548.37, 2600.99, 550.92, 2604.49, + 553.88, 2607.65, 557.22, 2610.41, 560.88, 2612.73, 564.8, 2614.58, + 568.92, 2615.92, 573.18, 2616.73 + ] + ], + "area": 3743.0, + "bbox": [543.07, 2548.0, 68.86, 69.0], + "iscrowd": 0 + }, + { + "id": 127, + "image_id": 2, + "category_id": 3, + "segmentation": [[1891.0, 1055.0, 1861.0, 1108.0, 1921.0, 1108.0]], + "area": 1596.0, + "bbox": [1861.0, 1055.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 128, + "image_id": 2, + "category_id": 3, + "segmentation": [[3306.5, 2130.0, 3264.0, 2204.0, 3349.0, 2204.0]], + "area": 3154.0, + "bbox": [3264.0, 2130.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 129, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 958.5, 1340.0, 963.2, 1339.7, 967.83, 1338.82, 972.3, 1337.37, 976.57, + 1335.36, 980.54, 1332.84, 984.17, 1329.84, 987.39, 1326.4, 990.16, + 1322.59, 992.43, 1318.47, 994.16, 1314.09, 995.34, 1309.53, 995.93, + 1304.85, 995.93, 1300.15, 995.34, 1295.47, 994.16, 1290.91, 992.43, + 1286.53, 990.16, 1282.41, 987.39, 1278.6, 984.17, 1275.16, 980.54, + 1272.16, 976.57, 1269.64, 972.3, 1267.63, 967.83, 1266.18, 963.2, + 1265.3, 958.5, 1265.0, 953.8, 1265.3, 949.17, 1266.18, 944.7, 1267.63, + 940.43, 1269.64, 936.46, 1272.16, 932.83, 1275.16, 929.61, 1278.6, + 926.84, 1282.41, 924.57, 1286.53, 922.84, 1290.91, 921.66, 1295.47, + 921.07, 1300.15, 921.07, 1304.85, 921.66, 1309.53, 922.84, 1314.09, + 924.57, 1318.47, 926.84, 1322.59, 929.61, 1326.4, 932.83, 1329.84, + 936.46, 1332.84, 940.43, 1335.36, 944.7, 1337.37, 949.17, 1338.82, + 953.8, 1339.7 + ] + ], + "area": 4409.0, + "bbox": [921.07, 1265.0, 74.86, 75.0], + "iscrowd": 0 + }, + { + "id": 130, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 441.0, 1943.0, 505.0, 1943.0, 505.0, 2010.0, 441.0, 2010.0, 441.0, + 1943.0 + ] + ], + "area": 4288.0, + "bbox": [441.0, 1943.0, 64.0, 67.0], + "iscrowd": 0 + }, + { + "id": 131, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 852.0, 1137.0, 938.0, 1137.0, 938.0, 1204.0, 852.0, 1204.0, 852.0, + 1137.0 + ] + ], + "area": 5762.0, + "bbox": [852.0, 1137.0, 86.0, 67.0], + "iscrowd": 0 + }, + { + "id": 132, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1183.0, 3044.0, 1247.0, 3044.0, 1247.0, 3132.0, 1183.0, 3132.0, + 1183.0, 3044.0 + ] + ], + "area": 5632.0, + "bbox": [1183.0, 3044.0, 64.0, 88.0], + "iscrowd": 0 + }, + { + "id": 133, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1117.5, 572.0, 1121.45, 571.75, 1125.33, 571.01, 1129.1, 569.79, + 1132.68, 568.1, 1136.02, 565.98, 1139.06, 563.46, 1141.77, 560.58, + 1144.1, 557.38, 1146.0, 553.91, 1147.46, 550.23, 1148.44, 546.4, + 1148.94, 542.48, 1148.94, 538.52, 1148.44, 534.6, 1147.46, 530.77, + 1146.0, 527.09, 1144.1, 523.62, 1141.77, 520.42, 1139.06, 517.54, + 1136.02, 515.02, 1132.68, 512.9, 1129.1, 511.21, 1125.33, 509.99, + 1121.45, 509.25, 1117.5, 509.0, 1113.55, 509.25, 1109.67, 509.99, + 1105.9, 511.21, 1102.32, 512.9, 1098.98, 515.02, 1095.94, 517.54, + 1093.23, 520.42, 1090.9, 523.62, 1089.0, 527.09, 1087.54, 530.77, + 1086.56, 534.6, 1086.06, 538.52, 1086.06, 542.48, 1086.56, 546.4, + 1087.54, 550.23, 1089.0, 553.91, 1090.9, 557.38, 1093.23, 560.58, + 1095.94, 563.46, 1098.98, 565.98, 1102.32, 568.1, 1105.9, 569.79, + 1109.67, 571.01, 1113.55, 571.75 + ] + ], + "area": 3121.0, + "bbox": [1086.06, 509.0, 62.88, 63.0], + "iscrowd": 0 + }, + { + "id": 134, + "image_id": 2, + "category_id": 3, + "segmentation": [[655.5, 2450.0, 620.0, 2512.0, 691.0, 2512.0]], + "area": 2209.0, + "bbox": [620.0, 2450.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 135, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 833.0, 3322.0, 884.0, 3322.0, 884.0, 3391.0, 833.0, 3391.0, 833.0, + 3322.0 + ] + ], + "area": 3519.0, + "bbox": [833.0, 3322.0, 51.0, 69.0], + "iscrowd": 0 + }, + { + "id": 136, + "image_id": 2, + "category_id": 3, + "segmentation": [[503.5, 599.0, 460.0, 675.0, 547.0, 675.0]], + "area": 3315.0, + "bbox": [460.0, 599.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 137, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2743.0, 3313.0, 2798.0, 3313.0, 2798.0, 3368.0, 2743.0, 3368.0, + 2743.0, 3313.0 + ] + ], + "area": 3025.0, + "bbox": [2743.0, 3313.0, 55.0, 55.0], + "iscrowd": 0 + }, + { + "id": 138, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2666.0, 3026.0, 2725.0, 3026.0, 2725.0, 3101.0, 2666.0, 3101.0, + 2666.0, 3026.0 + ] + ], + "area": 4425.0, + "bbox": [2666.0, 3026.0, 59.0, 75.0], + "iscrowd": 0 + }, + { + "id": 139, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1682.0, 2628.0, 1771.0, 2628.0, 1771.0, 2703.0, 1682.0, 2703.0, + 1682.0, 2628.0 + ] + ], + "area": 6675.0, + "bbox": [1682.0, 2628.0, 89.0, 75.0], + "iscrowd": 0 + }, + { + "id": 140, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2847.0, 2227.0, 2939.0, 2227.0, 2939.0, 2316.0, 2847.0, 2316.0, + 2847.0, 2227.0 + ] + ], + "area": 8188.0, + "bbox": [2847.0, 2227.0, 92.0, 89.0], + "iscrowd": 0 + }, + { + "id": 141, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 985.0, 758.5, 984.81, 761.57, 984.23, 764.59, 983.28, 767.52, 981.97, + 770.3, 980.32, 772.9, 978.36, 775.27, 976.12, 777.38, 973.63, 779.19, + 970.93, 780.67, 968.07, 781.8, 965.09, 782.57, 962.04, 782.95, 958.96, + 782.95, 955.91, 782.57, 952.93, 781.8, 950.07, 780.67, 947.37, 779.19, + 944.88, 777.38, 942.64, 775.27, 940.68, 772.9, 939.03, 770.3, 937.72, + 767.52, 936.77, 764.59, 936.19, 761.57, 936.0, 758.5, 936.19, 755.43, + 936.77, 752.41, 937.72, 749.48, 939.03, 746.7, 940.68, 744.1, 942.64, + 741.73, 944.88, 739.62, 947.37, 737.81, 950.07, 736.33, 952.93, 735.2, + 955.91, 734.43, 958.96, 734.05, 962.04, 734.05, 965.09, 734.43, + 968.07, 735.2, 970.93, 736.33, 973.63, 737.81, 976.12, 739.62, 978.36, + 741.73, 980.32, 744.1, 981.97, 746.7, 983.28, 749.48, 984.23, 752.41, + 984.81, 755.43 + ] + ], + "area": 1885.0, + "bbox": [936.0, 734.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 142, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 533.0, 982.5, 532.74, 986.7, 531.95, 990.83, 530.65, 994.83, 528.86, + 998.64, 526.6, 1002.19, 523.92, 1005.43, 520.85, 1008.31, 517.45, + 1010.78, 513.76, 1012.81, 509.85, 1014.36, 505.78, 1015.41, 501.6, + 1015.93, 497.4, 1015.93, 493.22, 1015.41, 489.15, 1014.36, 485.24, + 1012.81, 481.55, 1010.78, 478.15, 1008.31, 475.08, 1005.43, 472.4, + 1002.19, 470.14, 998.64, 468.35, 994.83, 467.05, 990.83, 466.26, + 986.7, 466.0, 982.5, 466.26, 978.3, 467.05, 974.17, 468.35, 970.17, + 470.14, 966.36, 472.4, 962.81, 475.08, 959.57, 478.15, 956.69, 481.55, + 954.22, 485.24, 952.19, 489.15, 950.64, 493.22, 949.59, 497.4, 949.07, + 501.6, 949.07, 505.78, 949.59, 509.85, 950.64, 513.76, 952.19, 517.45, + 954.22, 520.85, 956.69, 523.92, 959.57, 526.6, 962.81, 528.86, 966.36, + 530.65, 970.17, 531.95, 974.17, 532.74, 978.3 + ] + ], + "area": 3519.0, + "bbox": [466.0, 949.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 143, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 146.0, 1787.0, 218.0, 1787.0, 218.0, 1879.0, 146.0, 1879.0, 146.0, + 1787.0 + ] + ], + "area": 6624.0, + "bbox": [146.0, 1787.0, 72.0, 92.0], + "iscrowd": 0 + }, + { + "id": 144, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2230.0, 3221.0, 2305.0, 3221.0, 2305.0, 3302.0, 2230.0, 3302.0, + 2230.0, 3221.0 + ] + ], + "area": 6075.0, + "bbox": [2230.0, 3221.0, 75.0, 81.0], + "iscrowd": 0 + }, + { + "id": 145, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2793.0, 2758.0, 2863.0, 2758.0, 2863.0, 2839.0, 2793.0, 2839.0, + 2793.0, 2758.0 + ] + ], + "area": 5670.0, + "bbox": [2793.0, 2758.0, 70.0, 81.0], + "iscrowd": 0 + }, + { + "id": 146, + "image_id": 2, + "category_id": 3, + "segmentation": [[2629.0, 848.0, 2588.0, 920.0, 2670.0, 920.0]], + "area": 2960.0, + "bbox": [2588.0, 848.0, 82.0, 72.0], + "iscrowd": 0 + }, + { + "id": 147, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1184.0, 2995.5, 1183.77, 2999.2, 1183.07, 3002.84, 1181.93, 3006.36, + 1180.35, 3009.71, 1178.37, 3012.84, 1176.0, 3015.69, 1173.3, 3018.23, + 1170.31, 3020.41, 1167.06, 3022.19, 1163.62, 3023.56, 1160.03, + 3024.48, 1156.35, 3024.94, 1152.65, 3024.94, 1148.97, 3024.48, + 1145.38, 3023.56, 1141.94, 3022.19, 1138.69, 3020.41, 1135.7, 3018.23, + 1133.0, 3015.69, 1130.63, 3012.84, 1128.65, 3009.71, 1127.07, 3006.36, + 1125.93, 3002.84, 1125.23, 2999.2, 1125.0, 2995.5, 1125.23, 2991.8, + 1125.93, 2988.16, 1127.07, 2984.64, 1128.65, 2981.29, 1130.63, + 2978.16, 1133.0, 2975.31, 1135.7, 2972.77, 1138.69, 2970.59, 1141.94, + 2968.81, 1145.38, 2967.44, 1148.97, 2966.52, 1152.65, 2966.06, + 1156.35, 2966.06, 1160.03, 2966.52, 1163.62, 2967.44, 1167.06, + 2968.81, 1170.31, 2970.59, 1173.3, 2972.77, 1176.0, 2975.31, 1178.37, + 2978.16, 1180.35, 2981.29, 1181.93, 2984.64, 1183.07, 2988.16, + 1183.77, 2991.8 + ] + ], + "area": 2729.0, + "bbox": [1125.0, 2966.06, 59.0, 58.88], + "iscrowd": 0 + }, + { + "id": 148, + "image_id": 2, + "category_id": 3, + "segmentation": [[3181.5, 1356.0, 3139.0, 1430.0, 3224.0, 1430.0]], + "area": 3154.0, + "bbox": [3139.0, 1356.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 149, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 43.5, 198.0, 46.7, 197.8, 49.84, 197.2, 52.89, 196.21, 55.78, 194.85, + 58.49, 193.13, 60.96, 191.09, 63.15, 188.75, 65.03, 186.16, 66.57, + 183.36, 67.75, 180.38, 68.55, 177.28, 68.95, 174.1, 68.95, 170.9, + 68.55, 167.72, 67.75, 164.62, 66.57, 161.64, 65.03, 158.84, 63.15, + 156.25, 60.96, 153.91, 58.49, 151.87, 55.78, 150.15, 52.89, 148.79, + 49.84, 147.8, 46.7, 147.2, 43.5, 147.0, 40.3, 147.2, 37.16, 147.8, + 34.11, 148.79, 31.22, 150.15, 28.51, 151.87, 26.04, 153.91, 23.85, + 156.25, 21.97, 158.84, 20.43, 161.64, 19.25, 164.62, 18.45, 167.72, + 18.05, 170.9, 18.05, 174.1, 18.45, 177.28, 19.25, 180.38, 20.43, + 183.36, 21.97, 186.16, 23.85, 188.75, 26.04, 191.09, 28.51, 193.13, + 31.22, 194.85, 34.11, 196.21, 37.16, 197.2, 40.3, 197.8 + ] + ], + "area": 2036.0, + "bbox": [18.05, 147.0, 50.9, 51.0], + "iscrowd": 0 + }, + { + "id": 150, + "image_id": 2, + "category_id": 3, + "segmentation": [[2548.5, 867.0, 2504.0, 945.0, 2593.0, 945.0]], + "area": 3477.0, + "bbox": [2504.0, 867.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 151, + "image_id": 2, + "category_id": 3, + "segmentation": [[2685.0, 2885.0, 2645.0, 2955.0, 2725.0, 2955.0]], + "area": 2800.0, + "bbox": [2645.0, 2885.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 152, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3285.5, 3493.0, 3290.95, 3492.66, 3296.32, 3491.63, 3301.51, 3489.95, + 3306.46, 3487.62, 3311.07, 3484.69, 3315.28, 3481.21, 3319.02, + 3477.23, 3322.23, 3472.81, 3324.86, 3468.02, 3326.87, 3462.94, + 3328.23, 3457.65, 3328.91, 3452.23, 3328.91, 3446.77, 3328.23, + 3441.35, 3326.87, 3436.06, 3324.86, 3430.98, 3322.23, 3426.19, + 3319.02, 3421.77, 3315.28, 3417.79, 3311.07, 3414.31, 3306.46, + 3411.38, 3301.51, 3409.05, 3296.32, 3407.37, 3290.95, 3406.34, 3285.5, + 3406.0, 3280.05, 3406.34, 3274.68, 3407.37, 3269.49, 3409.05, 3264.54, + 3411.38, 3259.93, 3414.31, 3255.72, 3417.79, 3251.98, 3421.77, + 3248.77, 3426.19, 3246.14, 3430.98, 3244.13, 3436.06, 3242.77, + 3441.35, 3242.09, 3446.77, 3242.09, 3452.23, 3242.77, 3457.65, + 3244.13, 3462.94, 3246.14, 3468.02, 3248.77, 3472.81, 3251.98, + 3477.23, 3255.72, 3481.21, 3259.93, 3484.69, 3264.54, 3487.62, + 3269.49, 3489.95, 3274.68, 3491.63, 3280.05, 3492.66 + ] + ], + "area": 5930.0, + "bbox": [3242.09, 3406.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 153, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1740.0, 1964.0, 1818.0, 1964.0, 1818.0, 2059.0, 1740.0, 2059.0, + 1740.0, 1964.0 + ] + ], + "area": 7410.0, + "bbox": [1740.0, 1964.0, 78.0, 95.0], + "iscrowd": 0 + }, + { + "id": 154, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3405.0, 1974.5, 3404.71, 1979.07, 3403.85, 1983.58, 3402.44, 1987.94, + 3400.49, 1992.08, 3398.03, 1995.95, 3395.11, 1999.49, 3391.77, + 2002.62, 3388.06, 2005.32, 3384.04, 2007.53, 3379.78, 2009.21, + 3375.34, 2010.35, 3370.79, 2010.93, 3366.21, 2010.93, 3361.66, + 2010.35, 3357.22, 2009.21, 3352.96, 2007.53, 3348.94, 2005.32, + 3345.23, 2002.62, 3341.89, 1999.49, 3338.97, 1995.95, 3336.51, + 1992.08, 3334.56, 1987.94, 3333.15, 1983.58, 3332.29, 1979.07, 3332.0, + 1974.5, 3332.29, 1969.93, 3333.15, 1965.42, 3334.56, 1961.06, 3336.51, + 1956.92, 3338.97, 1953.05, 3341.89, 1949.51, 3345.23, 1946.38, + 3348.94, 1943.68, 3352.96, 1941.47, 3357.22, 1939.79, 3361.66, + 1938.65, 3366.21, 1938.07, 3370.79, 1938.07, 3375.34, 1938.65, + 3379.78, 1939.79, 3384.04, 1941.47, 3388.06, 1943.68, 3391.77, + 1946.38, 3395.11, 1949.51, 3398.03, 1953.05, 3400.49, 1956.92, + 3402.44, 1961.06, 3403.85, 1965.42, 3404.71, 1969.93 + ] + ], + "area": 4187.0, + "bbox": [3332.0, 1938.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 155, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1575.0, 1858.0, 1639.0, 1858.0, 1639.0, 1922.0, 1575.0, 1922.0, + 1575.0, 1858.0 + ] + ], + "area": 4096.0, + "bbox": [1575.0, 1858.0, 64.0, 64.0], + "iscrowd": 0 + }, + { + "id": 156, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1083.5, 943.0, 1086.95, 942.78, 1090.34, 942.14, 1093.62, 941.07, + 1096.75, 939.6, 1099.66, 937.75, 1102.33, 935.55, 1104.69, 933.03, + 1106.72, 930.24, 1108.38, 927.21, 1109.65, 924.0, 1110.51, 920.65, + 1110.95, 917.23, 1110.95, 913.77, 1110.51, 910.35, 1109.65, 907.0, + 1108.38, 903.79, 1106.72, 900.76, 1104.69, 897.97, 1102.33, 895.45, + 1099.66, 893.25, 1096.75, 891.4, 1093.62, 889.93, 1090.34, 888.86, + 1086.95, 888.22, 1083.5, 888.0, 1080.05, 888.22, 1076.66, 888.86, + 1073.38, 889.93, 1070.25, 891.4, 1067.34, 893.25, 1064.67, 895.45, + 1062.31, 897.97, 1060.28, 900.76, 1058.62, 903.79, 1057.35, 907.0, + 1056.49, 910.35, 1056.05, 913.77, 1056.05, 917.23, 1056.49, 920.65, + 1057.35, 924.0, 1058.62, 927.21, 1060.28, 930.24, 1062.31, 933.03, + 1064.67, 935.55, 1067.34, 937.75, 1070.25, 939.6, 1073.38, 941.07, + 1076.66, 942.14, 1080.05, 942.78 + ] + ], + "area": 2375.0, + "bbox": [1056.05, 888.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 157, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3226.5, 1558.0, 3231.2, 1557.7, 3235.83, 1556.82, 3240.3, 1555.37, + 3244.57, 1553.36, 3248.54, 1550.84, 3252.17, 1547.84, 3255.39, 1544.4, + 3258.16, 1540.59, 3260.43, 1536.47, 3262.16, 1532.09, 3263.34, + 1527.53, 3263.93, 1522.85, 3263.93, 1518.15, 3263.34, 1513.47, + 3262.16, 1508.91, 3260.43, 1504.53, 3258.16, 1500.41, 3255.39, 1496.6, + 3252.17, 1493.16, 3248.54, 1490.16, 3244.57, 1487.64, 3240.3, 1485.63, + 3235.83, 1484.18, 3231.2, 1483.3, 3226.5, 1483.0, 3221.8, 1483.3, + 3217.17, 1484.18, 3212.7, 1485.63, 3208.43, 1487.64, 3204.46, 1490.16, + 3200.83, 1493.16, 3197.61, 1496.6, 3194.84, 1500.41, 3192.57, 1504.53, + 3190.84, 1508.91, 3189.66, 1513.47, 3189.07, 1518.15, 3189.07, + 1522.85, 3189.66, 1527.53, 3190.84, 1532.09, 3192.57, 1536.47, + 3194.84, 1540.59, 3197.61, 1544.4, 3200.83, 1547.84, 3204.46, 1550.84, + 3208.43, 1553.36, 3212.7, 1555.37, 3217.17, 1556.82, 3221.8, 1557.7 + ] + ], + "area": 4409.0, + "bbox": [3189.07, 1483.0, 74.86, 75.0], + "iscrowd": 0 + }, + { + "id": 158, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1140.0, 2228.0, 1238.0, 2228.0, 1238.0, 2301.0, 1140.0, 2301.0, + 1140.0, 2228.0 + ] + ], + "area": 7154.0, + "bbox": [1140.0, 2228.0, 98.0, 73.0], + "iscrowd": 0 + }, + { + "id": 159, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2829.0, 156.0, 2922.0, 156.0, 2922.0, 216.0, 2829.0, 216.0, 2829.0, + 156.0 + ] + ], + "area": 5580.0, + "bbox": [2829.0, 156.0, 93.0, 60.0], + "iscrowd": 0 + }, + { + "id": 160, + "image_id": 2, + "category_id": 3, + "segmentation": [[2763.0, 1525.0, 2721.0, 1598.0, 2805.0, 1598.0]], + "area": 3074.0, + "bbox": [2721.0, 1525.0, 84.0, 73.0], + "iscrowd": 0 + }, + { + "id": 161, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2411.0, 696.0, 2489.0, 696.0, 2489.0, 746.0, 2411.0, 746.0, 2411.0, + 696.0 + ] + ], + "area": 3900.0, + "bbox": [2411.0, 696.0, 78.0, 50.0], + "iscrowd": 0 + }, + { + "id": 162, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2787.0, 3024.0, 2858.0, 3024.0, 2858.0, 3107.0, 2787.0, 3107.0, + 2787.0, 3024.0 + ] + ], + "area": 5893.0, + "bbox": [2787.0, 3024.0, 71.0, 83.0], + "iscrowd": 0 + }, + { + "id": 163, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1157.0, 216.0, 1243.0, 216.0, 1243.0, 297.0, 1157.0, 297.0, 1157.0, + 216.0 + ] + ], + "area": 6966.0, + "bbox": [1157.0, 216.0, 86.0, 81.0], + "iscrowd": 0 + }, + { + "id": 164, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1671.0, 2275.5, 1670.7, 2280.33, 1669.79, 2285.07, 1668.3, 2289.67, + 1666.24, 2294.05, 1663.65, 2298.13, 1660.57, 2301.86, 1657.04, + 2305.16, 1653.13, 2308.01, 1648.89, 2310.34, 1644.4, 2312.12, 1639.71, + 2313.32, 1634.92, 2313.92, 1630.08, 2313.92, 1625.29, 2313.32, 1620.6, + 2312.12, 1616.11, 2310.34, 1611.87, 2308.01, 1607.96, 2305.16, + 1604.43, 2301.86, 1601.35, 2298.13, 1598.76, 2294.05, 1596.7, 2289.67, + 1595.21, 2285.07, 1594.3, 2280.33, 1594.0, 2275.5, 1594.3, 2270.67, + 1595.21, 2265.93, 1596.7, 2261.33, 1598.76, 2256.95, 1601.35, 2252.87, + 1604.43, 2249.14, 1607.96, 2245.84, 1611.87, 2242.99, 1616.11, + 2240.66, 1620.6, 2238.88, 1625.29, 2237.68, 1630.08, 2237.08, 1634.92, + 2237.08, 1639.71, 2237.68, 1644.4, 2238.88, 1648.89, 2240.66, 1653.13, + 2242.99, 1657.04, 2245.84, 1660.57, 2249.14, 1663.65, 2252.87, + 1666.24, 2256.95, 1668.3, 2261.33, 1669.79, 2265.93, 1670.7, 2270.67 + ] + ], + "area": 4653.0, + "bbox": [1594.0, 2237.08, 77.0, 76.84], + "iscrowd": 0 + }, + { + "id": 165, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 223.0, 1625.0, 279.0, 1625.0, 279.0, 1709.0, 223.0, 1709.0, 223.0, + 1625.0 + ] + ], + "area": 4704.0, + "bbox": [223.0, 1625.0, 56.0, 84.0], + "iscrowd": 0 + }, + { + "id": 166, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [943.0, 326.0, 1005.0, 326.0, 1005.0, 405.0, 943.0, 405.0, 943.0, 326.0] + ], + "area": 4898.0, + "bbox": [943.0, 326.0, 62.0, 79.0], + "iscrowd": 0 + }, + { + "id": 167, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1736.0, 3045.0, 1810.0, 3045.0, 1810.0, 3128.0, 1736.0, 3128.0, + 1736.0, 3045.0 + ] + ], + "area": 6142.0, + "bbox": [1736.0, 3045.0, 74.0, 83.0], + "iscrowd": 0 + }, + { + "id": 168, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [743.0, 355.0, 832.0, 355.0, 832.0, 444.0, 743.0, 444.0, 743.0, 355.0] + ], + "area": 7921.0, + "bbox": [743.0, 355.0, 89.0, 89.0], + "iscrowd": 0 + }, + { + "id": 169, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [545.0, 702.0, 640.0, 702.0, 640.0, 797.0, 545.0, 797.0, 545.0, 702.0] + ], + "area": 9025.0, + "bbox": [545.0, 702.0, 95.0, 95.0], + "iscrowd": 0 + }, + { + "id": 170, + "image_id": 2, + "category_id": 3, + "segmentation": [[1029.5, 2292.0, 1002.0, 2340.0, 1057.0, 2340.0]], + "area": 1326.0, + "bbox": [1002.0, 2292.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 171, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1793.0, 1708.5, 1792.75, 1712.45, 1792.01, 1716.33, 1790.79, 1720.1, + 1789.1, 1723.68, 1786.98, 1727.02, 1784.46, 1730.06, 1781.58, 1732.77, + 1778.38, 1735.1, 1774.91, 1737.0, 1771.23, 1738.46, 1767.4, 1739.44, + 1763.48, 1739.94, 1759.52, 1739.94, 1755.6, 1739.44, 1751.77, 1738.46, + 1748.09, 1737.0, 1744.62, 1735.1, 1741.42, 1732.77, 1738.54, 1730.06, + 1736.02, 1727.02, 1733.9, 1723.68, 1732.21, 1720.1, 1730.99, 1716.33, + 1730.25, 1712.45, 1730.0, 1708.5, 1730.25, 1704.55, 1730.99, 1700.67, + 1732.21, 1696.9, 1733.9, 1693.32, 1736.02, 1689.98, 1738.54, 1686.94, + 1741.42, 1684.23, 1744.62, 1681.9, 1748.09, 1680.0, 1751.77, 1678.54, + 1755.6, 1677.56, 1759.52, 1677.06, 1763.48, 1677.06, 1767.4, 1677.56, + 1771.23, 1678.54, 1774.91, 1680.0, 1778.38, 1681.9, 1781.58, 1684.23, + 1784.46, 1686.94, 1786.98, 1689.98, 1789.1, 1693.32, 1790.79, 1696.9, + 1792.01, 1700.67, 1792.75, 1704.55 + ] + ], + "area": 3122.0, + "bbox": [1730.0, 1677.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 172, + "image_id": 2, + "category_id": 3, + "segmentation": [[886.0, 242.0, 848.0, 308.0, 924.0, 308.0]], + "area": 2514.0, + "bbox": [848.0, 242.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 173, + "image_id": 2, + "category_id": 3, + "segmentation": [[1696.5, 3110.0, 1670.0, 3157.0, 1723.0, 3157.0]], + "area": 1251.0, + "bbox": [1670.0, 3110.0, 53.0, 47.0], + "iscrowd": 0 + }, + { + "id": 174, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3043.0, 930.0, 3096.0, 930.0, 3096.0, 987.0, 3043.0, 987.0, 3043.0, + 930.0 + ] + ], + "area": 3021.0, + "bbox": [3043.0, 930.0, 53.0, 57.0], + "iscrowd": 0 + }, + { + "id": 175, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 606.0, 2660.0, 665.0, 2660.0, 665.0, 2717.0, 606.0, 2717.0, 606.0, + 2660.0 + ] + ], + "area": 3363.0, + "bbox": [606.0, 2660.0, 59.0, 57.0], + "iscrowd": 0 + }, + { + "id": 176, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 573.5, 365.0, 578.58, 364.68, 583.57, 363.73, 588.41, 362.16, 593.01, + 359.99, 597.31, 357.27, 601.22, 354.02, 604.71, 350.32, 607.7, 346.2, + 610.15, 341.74, 612.02, 337.02, 613.28, 332.09, 613.92, 327.04, + 613.92, 321.96, 613.28, 316.91, 612.02, 311.98, 610.15, 307.26, 607.7, + 302.8, 604.71, 298.68, 601.22, 294.98, 597.31, 291.73, 593.01, 289.01, + 588.41, 286.84, 583.57, 285.27, 578.58, 284.32, 573.5, 284.0, 568.42, + 284.32, 563.43, 285.27, 558.59, 286.84, 553.99, 289.01, 549.69, + 291.73, 545.78, 294.98, 542.29, 298.68, 539.3, 302.8, 536.85, 307.26, + 534.98, 311.98, 533.72, 316.91, 533.08, 321.96, 533.08, 327.04, + 533.72, 332.09, 534.98, 337.02, 536.85, 341.74, 539.3, 346.2, 542.29, + 350.32, 545.78, 354.02, 549.69, 357.27, 553.99, 359.99, 558.59, + 362.16, 563.43, 363.73, 568.42, 364.68 + ] + ], + "area": 5150.0, + "bbox": [533.08, 284.0, 80.84, 81.0], + "iscrowd": 0 + }, + { + "id": 177, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1951.0, 301.0, 2032.0, 301.0, 2032.0, 384.0, 1951.0, 384.0, 1951.0, + 301.0 + ] + ], + "area": 6723.0, + "bbox": [1951.0, 301.0, 81.0, 83.0], + "iscrowd": 0 + }, + { + "id": 178, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [39.0, 1931.0, 111.0, 1931.0, 111.0, 2029.0, 39.0, 2029.0, 39.0, 1931.0] + ], + "area": 7056.0, + "bbox": [39.0, 1931.0, 72.0, 98.0], + "iscrowd": 0 + }, + { + "id": 179, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1281.0, 1648.0, 1356.0, 1648.0, 1356.0, 1703.0, 1281.0, 1703.0, + 1281.0, 1648.0 + ] + ], + "area": 4125.0, + "bbox": [1281.0, 1648.0, 75.0, 55.0], + "iscrowd": 0 + }, + { + "id": 180, + "image_id": 2, + "category_id": 3, + "segmentation": [[684.5, 488.0, 657.0, 536.0, 712.0, 536.0]], + "area": 1326.0, + "bbox": [657.0, 488.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 181, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 632.0, 2807.0, 689.0, 2807.0, 689.0, 2886.0, 632.0, 2886.0, 632.0, + 2807.0 + ] + ], + "area": 4503.0, + "bbox": [632.0, 2807.0, 57.0, 79.0], + "iscrowd": 0 + }, + { + "id": 182, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2418.0, 2053.0, 2517.0, 2053.0, 2517.0, 2120.0, 2418.0, 2120.0, + 2418.0, 2053.0 + ] + ], + "area": 6633.0, + "bbox": [2418.0, 2053.0, 99.0, 67.0], + "iscrowd": 0 + }, + { + "id": 183, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 945.0, 1926.0, 1004.0, 1926.0, 1004.0, 1986.0, 945.0, 1986.0, 945.0, + 1926.0 + ] + ], + "area": 3540.0, + "bbox": [945.0, 1926.0, 59.0, 60.0], + "iscrowd": 0 + }, + { + "id": 184, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1637.0, 717.0, 1701.0, 717.0, 1701.0, 804.0, 1637.0, 804.0, 1637.0, + 717.0 + ] + ], + "area": 5568.0, + "bbox": [1637.0, 717.0, 64.0, 87.0], + "iscrowd": 0 + }, + { + "id": 185, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3309.0, 455.0, 3393.0, 455.0, 3393.0, 513.0, 3309.0, 513.0, 3309.0, + 455.0 + ] + ], + "area": 4872.0, + "bbox": [3309.0, 455.0, 84.0, 58.0], + "iscrowd": 0 + }, + { + "id": 186, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1398.0, 884.5, 1397.74, 888.57, 1396.98, 892.58, 1395.72, 896.46, + 1393.98, 900.16, 1391.79, 903.6, 1389.19, 906.75, 1386.22, 909.54, + 1382.91, 911.94, 1379.34, 913.91, 1375.54, 915.41, 1371.59, 916.42, + 1367.54, 916.94, 1363.46, 916.94, 1359.41, 916.42, 1355.46, 915.41, + 1351.66, 913.91, 1348.09, 911.94, 1344.78, 909.54, 1341.81, 906.75, + 1339.21, 903.6, 1337.02, 900.16, 1335.28, 896.46, 1334.02, 892.58, + 1333.26, 888.57, 1333.0, 884.5, 1333.26, 880.43, 1334.02, 876.42, + 1335.28, 872.54, 1337.02, 868.84, 1339.21, 865.4, 1341.81, 862.25, + 1344.78, 859.46, 1348.09, 857.06, 1351.66, 855.09, 1355.46, 853.59, + 1359.41, 852.58, 1363.46, 852.06, 1367.54, 852.06, 1371.59, 852.58, + 1375.54, 853.59, 1379.34, 855.09, 1382.91, 857.06, 1386.22, 859.46, + 1389.19, 862.25, 1391.79, 865.4, 1393.98, 868.84, 1395.72, 872.54, + 1396.98, 876.42, 1397.74, 880.43 + ] + ], + "area": 3315.0, + "bbox": [1333.0, 852.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 187, + "image_id": 2, + "category_id": 3, + "segmentation": [[1603.5, 1675.0, 1576.0, 1723.0, 1631.0, 1723.0]], + "area": 1326.0, + "bbox": [1576.0, 1675.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 188, + "image_id": 2, + "category_id": 3, + "segmentation": [[3341.0, 604.0, 3308.0, 662.0, 3374.0, 662.0]], + "area": 1920.0, + "bbox": [3308.0, 604.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 189, + "image_id": 2, + "category_id": 3, + "segmentation": [[369.0, 320.0, 338.0, 374.0, 400.0, 374.0]], + "area": 1680.0, + "bbox": [338.0, 320.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 190, + "image_id": 2, + "category_id": 3, + "segmentation": [[576.0, 2746.0, 528.0, 2830.0, 624.0, 2830.0]], + "area": 4032.0, + "bbox": [528.0, 2746.0, 96.0, 84.0], + "iscrowd": 0 + }, + { + "id": 191, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2947.5, 2840.0, 2951.32, 2839.76, 2955.09, 2839.04, 2958.73, 2837.86, + 2962.19, 2836.23, 2965.43, 2834.18, 2968.38, 2831.73, 2971.0, 2828.94, + 2973.25, 2825.84, 2975.1, 2822.49, 2976.51, 2818.93, 2977.46, 2815.22, + 2977.94, 2811.42, 2977.94, 2807.58, 2977.46, 2803.78, 2976.51, + 2800.07, 2975.1, 2796.51, 2973.25, 2793.16, 2971.0, 2790.06, 2968.38, + 2787.27, 2965.43, 2784.82, 2962.19, 2782.77, 2958.73, 2781.14, + 2955.09, 2779.96, 2951.32, 2779.24, 2947.5, 2779.0, 2943.68, 2779.24, + 2939.91, 2779.96, 2936.27, 2781.14, 2932.81, 2782.77, 2929.57, + 2784.82, 2926.62, 2787.27, 2924.0, 2790.06, 2921.75, 2793.16, 2919.9, + 2796.51, 2918.49, 2800.07, 2917.54, 2803.78, 2917.06, 2807.58, + 2917.06, 2811.42, 2917.54, 2815.22, 2918.49, 2818.93, 2919.9, 2822.49, + 2921.75, 2825.84, 2924.0, 2828.94, 2926.62, 2831.73, 2929.57, 2834.18, + 2932.81, 2836.23, 2936.27, 2837.86, 2939.91, 2839.04, 2943.68, 2839.76 + ] + ], + "area": 2916.0, + "bbox": [2917.06, 2779.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 192, + "image_id": 2, + "category_id": 3, + "segmentation": [[1110.5, 1913.0, 1076.0, 1973.0, 1145.0, 1973.0]], + "area": 2078.0, + "bbox": [1076.0, 1913.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 193, + "image_id": 2, + "category_id": 3, + "segmentation": [[2311.5, 2756.0, 2266.0, 2835.0, 2357.0, 2835.0]], + "area": 3604.0, + "bbox": [2266.0, 2756.0, 91.0, 79.0], + "iscrowd": 0 + }, + { + "id": 194, + "image_id": 2, + "category_id": 3, + "segmentation": [[2864.0, 2360.0, 2825.0, 2428.0, 2903.0, 2428.0]], + "area": 2660.0, + "bbox": [2825.0, 2360.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 195, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 543.0, 1576.0, 628.0, 1576.0, 628.0, 1665.0, 543.0, 1665.0, 543.0, + 1576.0 + ] + ], + "area": 7565.0, + "bbox": [543.0, 1576.0, 85.0, 89.0], + "iscrowd": 0 + }, + { + "id": 196, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 262.0, 1143.0, 355.0, 1143.0, 355.0, 1207.0, 262.0, 1207.0, 262.0, + 1143.0 + ] + ], + "area": 5952.0, + "bbox": [262.0, 1143.0, 93.0, 64.0], + "iscrowd": 0 + }, + { + "id": 197, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1119.0, 3252.5, 1118.63, 3258.45, 1117.51, 3264.31, 1115.66, 3269.99, + 1113.12, 3275.38, 1109.93, 3280.42, 1106.13, 3285.02, 1101.78, 3289.1, + 1096.95, 3292.61, 1091.72, 3295.48, 1086.18, 3297.68, 1080.4, 3299.16, + 1074.48, 3299.91, 1068.52, 3299.91, 1062.6, 3299.16, 1056.82, 3297.68, + 1051.28, 3295.48, 1046.05, 3292.61, 1041.22, 3289.1, 1036.87, 3285.02, + 1033.07, 3280.42, 1029.88, 3275.38, 1027.34, 3269.99, 1025.49, + 3264.31, 1024.37, 3258.45, 1024.0, 3252.5, 1024.37, 3246.55, 1025.49, + 3240.69, 1027.34, 3235.01, 1029.88, 3229.62, 1033.07, 3224.58, + 1036.87, 3219.98, 1041.22, 3215.9, 1046.05, 3212.39, 1051.28, 3209.52, + 1056.82, 3207.32, 1062.6, 3205.84, 1068.52, 3205.09, 1074.48, 3205.09, + 1080.4, 3205.84, 1086.18, 3207.32, 1091.72, 3209.52, 1096.95, 3212.39, + 1101.78, 3215.9, 1106.13, 3219.98, 1109.93, 3224.58, 1113.12, 3229.62, + 1115.66, 3235.01, 1117.51, 3240.69, 1118.63, 3246.55 + ] + ], + "area": 7083.0, + "bbox": [1024.0, 3205.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 198, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2534.0, 1874.5, 2533.73, 1878.82, 2532.92, 1883.08, 2531.58, 1887.2, + 2529.73, 1891.12, 2527.41, 1894.78, 2524.65, 1898.12, 2521.49, + 1901.08, 2517.99, 1903.63, 2514.19, 1905.72, 2510.16, 1907.31, + 2505.96, 1908.39, 2501.67, 1908.93, 2497.33, 1908.93, 2493.04, + 1908.39, 2488.84, 1907.31, 2484.81, 1905.72, 2481.01, 1903.63, + 2477.51, 1901.08, 2474.35, 1898.12, 2471.59, 1894.78, 2469.27, + 1891.12, 2467.42, 1887.2, 2466.08, 1883.08, 2465.27, 1878.82, 2465.0, + 1874.5, 2465.27, 1870.18, 2466.08, 1865.92, 2467.42, 1861.8, 2469.27, + 1857.88, 2471.59, 1854.22, 2474.35, 1850.88, 2477.51, 1847.92, + 2481.01, 1845.37, 2484.81, 1843.28, 2488.84, 1841.69, 2493.04, + 1840.61, 2497.33, 1840.07, 2501.67, 1840.07, 2505.96, 1840.61, + 2510.16, 1841.69, 2514.19, 1843.28, 2517.99, 1845.37, 2521.49, + 1847.92, 2524.65, 1850.88, 2527.41, 1854.22, 2529.73, 1857.88, + 2531.58, 1861.8, 2532.92, 1865.92, 2533.73, 1870.18 + ] + ], + "area": 3743.0, + "bbox": [2465.0, 1840.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 199, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 111.0, 2173.0, 202.0, 2173.0, 202.0, 2242.0, 111.0, 2242.0, 111.0, + 2173.0 + ] + ], + "area": 6279.0, + "bbox": [111.0, 2173.0, 91.0, 69.0], + "iscrowd": 0 + }, + { + "id": 200, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2545.0, 1541.0, 2609.0, 1541.0, 2609.0, 1609.0, 2545.0, 1609.0, + 2545.0, 1541.0 + ] + ], + "area": 4352.0, + "bbox": [2545.0, 1541.0, 64.0, 68.0], + "iscrowd": 0 + }, + { + "id": 201, + "image_id": 2, + "category_id": 3, + "segmentation": [[511.5, 1085.0, 478.0, 1144.0, 545.0, 1144.0]], + "area": 1985.0, + "bbox": [478.0, 1085.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 202, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 686.0, 2165.5, 685.69, 2170.45, 684.76, 2175.32, 683.23, 2180.04, + 681.11, 2184.53, 678.46, 2188.72, 675.29, 2192.54, 671.68, 2195.94, + 667.67, 2198.85, 663.32, 2201.24, 658.71, 2203.07, 653.9, 2204.3, + 648.98, 2204.92, 644.02, 2204.92, 639.1, 2204.3, 634.29, 2203.07, + 629.68, 2201.24, 625.33, 2198.85, 621.32, 2195.94, 617.71, 2192.54, + 614.54, 2188.72, 611.89, 2184.53, 609.77, 2180.04, 608.24, 2175.32, + 607.31, 2170.45, 607.0, 2165.5, 607.31, 2160.55, 608.24, 2155.68, + 609.77, 2150.96, 611.89, 2146.47, 614.54, 2142.28, 617.71, 2138.46, + 621.32, 2135.06, 625.33, 2132.15, 629.68, 2129.76, 634.29, 2127.93, + 639.1, 2126.7, 644.02, 2126.08, 648.98, 2126.08, 653.9, 2126.7, + 658.71, 2127.93, 663.32, 2129.76, 667.67, 2132.15, 671.68, 2135.06, + 675.29, 2138.46, 678.46, 2142.28, 681.11, 2146.47, 683.23, 2150.96, + 684.76, 2155.68, 685.69, 2160.55 + ] + ], + "area": 4893.0, + "bbox": [607.0, 2126.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 203, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 440.5, 2175.0, 445.83, 2174.66, 451.07, 2173.66, 456.15, 2172.02, + 460.97, 2169.74, 465.48, 2166.88, 469.59, 2163.48, 473.25, 2159.59, + 476.38, 2155.27, 478.96, 2150.6, 480.92, 2145.63, 482.25, 2140.46, + 482.92, 2135.17, 482.92, 2129.83, 482.25, 2124.54, 480.92, 2119.37, + 478.96, 2114.4, 476.38, 2109.73, 473.25, 2105.41, 469.59, 2101.52, + 465.48, 2098.12, 460.97, 2095.26, 456.15, 2092.98, 451.07, 2091.34, + 445.83, 2090.34, 440.5, 2090.0, 435.17, 2090.34, 429.93, 2091.34, + 424.85, 2092.98, 420.03, 2095.26, 415.52, 2098.12, 411.41, 2101.52, + 407.75, 2105.41, 404.62, 2109.73, 402.04, 2114.4, 400.08, 2119.37, + 398.75, 2124.54, 398.08, 2129.83, 398.08, 2135.17, 398.75, 2140.46, + 400.08, 2145.63, 402.04, 2150.6, 404.62, 2155.27, 407.75, 2159.59, + 411.41, 2163.48, 415.52, 2166.88, 420.03, 2169.74, 424.85, 2172.02, + 429.93, 2173.66, 435.17, 2174.66 + ] + ], + "area": 5651.0, + "bbox": [398.08, 2090.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 204, + "image_id": 2, + "category_id": 3, + "segmentation": [[2045.5, 28.0, 2008.0, 94.0, 2083.0, 94.0]], + "area": 2485.0, + "bbox": [2008.0, 28.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 205, + "image_id": 2, + "category_id": 3, + "segmentation": [[2287.5, 1807.0, 2245.0, 1881.0, 2330.0, 1881.0]], + "area": 3154.0, + "bbox": [2245.0, 1807.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 206, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2545.0, 818.5, 2544.78, 821.95, 2544.14, 825.34, 2543.07, 828.62, + 2541.6, 831.75, 2539.75, 834.66, 2537.55, 837.33, 2535.03, 839.69, + 2532.24, 841.72, 2529.21, 843.38, 2526.0, 844.65, 2522.65, 845.51, + 2519.23, 845.95, 2515.77, 845.95, 2512.35, 845.51, 2509.0, 844.65, + 2505.79, 843.38, 2502.76, 841.72, 2499.97, 839.69, 2497.45, 837.33, + 2495.25, 834.66, 2493.4, 831.75, 2491.93, 828.62, 2490.86, 825.34, + 2490.22, 821.95, 2490.0, 818.5, 2490.22, 815.05, 2490.86, 811.66, + 2491.93, 808.38, 2493.4, 805.25, 2495.25, 802.34, 2497.45, 799.67, + 2499.97, 797.31, 2502.76, 795.28, 2505.79, 793.62, 2509.0, 792.35, + 2512.35, 791.49, 2515.77, 791.05, 2519.23, 791.05, 2522.65, 791.49, + 2526.0, 792.35, 2529.21, 793.62, 2532.24, 795.28, 2535.03, 797.31, + 2537.55, 799.67, 2539.75, 802.34, 2541.6, 805.25, 2543.07, 808.38, + 2544.14, 811.66, 2544.78, 815.05 + ] + ], + "area": 2375.0, + "bbox": [2490.0, 791.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 207, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2152.0, 956.5, 2151.63, 962.33, 2150.54, 968.06, 2148.73, 973.62, + 2146.25, 978.9, 2143.12, 983.83, 2139.4, 988.33, 2135.14, 992.33, + 2130.42, 995.76, 2125.3, 998.57, 2119.87, 1000.72, 2114.21, 1002.18, + 2108.42, 1002.91, 2102.58, 1002.91, 2096.79, 1002.18, 2091.13, + 1000.72, 2085.7, 998.57, 2080.58, 995.76, 2075.86, 992.33, 2071.6, + 988.33, 2067.88, 983.83, 2064.75, 978.9, 2062.27, 973.62, 2060.46, + 968.06, 2059.37, 962.33, 2059.0, 956.5, 2059.37, 950.67, 2060.46, + 944.94, 2062.27, 939.38, 2064.75, 934.1, 2067.88, 929.17, 2071.6, + 924.67, 2075.86, 920.67, 2080.58, 917.24, 2085.7, 914.43, 2091.13, + 912.28, 2096.79, 910.82, 2102.58, 910.09, 2108.42, 910.09, 2114.21, + 910.82, 2119.87, 912.28, 2125.3, 914.43, 2130.42, 917.24, 2135.14, + 920.67, 2139.4, 924.67, 2143.12, 929.17, 2146.25, 934.1, 2148.73, + 939.38, 2150.54, 944.94, 2151.63, 950.67 + ] + ], + "area": 6782.0, + "bbox": [2059.0, 910.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 208, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1648.0, 596.0, 1707.0, 596.0, 1707.0, 651.0, 1648.0, 651.0, 1648.0, + 596.0 + ] + ], + "area": 3245.0, + "bbox": [1648.0, 596.0, 59.0, 55.0], + "iscrowd": 0 + }, + { + "id": 209, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3167.0, 786.0, 3234.0, 786.0, 3234.0, 865.0, 3167.0, 865.0, 3167.0, + 786.0 + ] + ], + "area": 5293.0, + "bbox": [3167.0, 786.0, 67.0, 79.0], + "iscrowd": 0 + }, + { + "id": 210, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 205.0, 1049.0, 278.0, 1049.0, 278.0, 1106.0, 205.0, 1106.0, 205.0, + 1049.0 + ] + ], + "area": 4161.0, + "bbox": [205.0, 1049.0, 73.0, 57.0], + "iscrowd": 0 + }, + { + "id": 211, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2048.0, 3354.0, 2129.0, 3354.0, 2129.0, 3429.0, 2048.0, 3429.0, + 2048.0, 3354.0 + ] + ], + "area": 6075.0, + "bbox": [2048.0, 3354.0, 81.0, 75.0], + "iscrowd": 0 + }, + { + "id": 212, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 3242.0, 3424.5, 3241.72, 3428.95, 3240.88, 3433.33, 3239.51, 3437.57, + 3237.61, 3441.6, 3235.22, 3445.37, 3232.38, 3448.8, 3229.13, 3451.85, + 3225.52, 3454.47, 3221.62, 3456.62, 3217.47, 3458.26, 3213.15, + 3459.37, 3208.73, 3459.93, 3204.27, 3459.93, 3199.85, 3459.37, + 3195.53, 3458.26, 3191.38, 3456.62, 3187.48, 3454.47, 3183.87, + 3451.85, 3180.62, 3448.8, 3177.78, 3445.37, 3175.39, 3441.6, 3173.49, + 3437.57, 3172.12, 3433.33, 3171.28, 3428.95, 3171.0, 3424.5, 3171.28, + 3420.05, 3172.12, 3415.67, 3173.49, 3411.43, 3175.39, 3407.4, 3177.78, + 3403.63, 3180.62, 3400.2, 3183.87, 3397.15, 3187.48, 3394.53, 3191.38, + 3392.38, 3195.53, 3390.74, 3199.85, 3389.63, 3204.27, 3389.07, + 3208.73, 3389.07, 3213.15, 3389.63, 3217.47, 3390.74, 3221.62, + 3392.38, 3225.52, 3394.53, 3229.13, 3397.15, 3232.38, 3400.2, 3235.22, + 3403.63, 3237.61, 3407.4, 3239.51, 3411.43, 3240.88, 3415.67, 3241.72, + 3420.05 + ] + ], + "area": 3957.0, + "bbox": [3171.0, 3389.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 213, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3335.0, 930.0, 3430.0, 930.0, 3430.0, 1017.0, 3335.0, 1017.0, 3335.0, + 930.0 + ] + ], + "area": 8265.0, + "bbox": [3335.0, 930.0, 95.0, 87.0], + "iscrowd": 0 + }, + { + "id": 214, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 396.0, 3192.0, 461.0, 3192.0, 461.0, 3257.0, 396.0, 3257.0, 396.0, + 3192.0 + ] + ], + "area": 4225.0, + "bbox": [396.0, 3192.0, 65.0, 65.0], + "iscrowd": 0 + }, + { + "id": 215, + "image_id": 2, + "category_id": 3, + "segmentation": [[1532.5, 1594.0, 1493.0, 1663.0, 1572.0, 1663.0]], + "area": 2734.0, + "bbox": [1493.0, 1594.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 216, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3198.0, 2363.0, 3252.0, 2363.0, 3252.0, 2461.0, 3198.0, 2461.0, + 3198.0, 2363.0 + ] + ], + "area": 5292.0, + "bbox": [3198.0, 2363.0, 54.0, 98.0], + "iscrowd": 0 + }, + { + "id": 217, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1022.5, 135.0, 1028.33, 134.63, 1034.06, 133.54, 1039.62, 131.73, + 1044.9, 129.25, 1049.83, 126.12, 1054.33, 122.4, 1058.33, 118.14, + 1061.76, 113.42, 1064.57, 108.3, 1066.72, 102.87, 1068.18, 97.21, + 1068.91, 91.42, 1068.91, 85.58, 1068.18, 79.79, 1066.72, 74.13, + 1064.57, 68.7, 1061.76, 63.58, 1058.33, 58.86, 1054.33, 54.6, 1049.83, + 50.88, 1044.9, 47.75, 1039.62, 45.27, 1034.06, 43.46, 1028.33, 42.37, + 1022.5, 42.0, 1016.67, 42.37, 1010.94, 43.46, 1005.38, 45.27, 1000.1, + 47.75, 995.17, 50.88, 990.67, 54.6, 986.67, 58.86, 983.24, 63.58, + 980.43, 68.7, 978.28, 74.13, 976.82, 79.79, 976.09, 85.58, 976.09, + 91.42, 976.82, 97.21, 978.28, 102.87, 980.43, 108.3, 983.24, 113.42, + 986.67, 118.14, 990.67, 122.4, 995.17, 126.12, 1000.1, 129.25, + 1005.38, 131.73, 1010.94, 133.54, 1016.67, 134.63 + ] + ], + "area": 6781.0, + "bbox": [976.09, 42.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 218, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2051.0, 1791.0, 2130.0, 1791.0, 2130.0, 1858.0, 2051.0, 1858.0, + 2051.0, 1791.0 + ] + ], + "area": 5293.0, + "bbox": [2051.0, 1791.0, 79.0, 67.0], + "iscrowd": 0 + }, + { + "id": 219, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2477.0, 2155.0, 2562.0, 2155.0, 2562.0, 2228.0, 2477.0, 2228.0, + 2477.0, 2155.0 + ] + ], + "area": 6205.0, + "bbox": [2477.0, 2155.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 220, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2537.0, 357.0, 2588.0, 357.0, 2588.0, 424.0, 2537.0, 424.0, 2537.0, + 357.0 + ] + ], + "area": 3417.0, + "bbox": [2537.0, 357.0, 51.0, 67.0], + "iscrowd": 0 + }, + { + "id": 221, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3017.0, 1028.0, 3082.0, 1028.0, 3082.0, 1117.0, 3017.0, 1117.0, + 3017.0, 1028.0 + ] + ], + "area": 5785.0, + "bbox": [3017.0, 1028.0, 65.0, 89.0], + "iscrowd": 0 + }, + { + "id": 222, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3225.0, 446.0, 3304.0, 446.0, 3304.0, 525.0, 3225.0, 525.0, 3225.0, + 446.0 + ] + ], + "area": 6241.0, + "bbox": [3225.0, 446.0, 79.0, 79.0], + "iscrowd": 0 + }, + { + "id": 223, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3182.0, 1237.0, 3255.0, 1237.0, 3255.0, 1330.0, 3182.0, 1330.0, + 3182.0, 1237.0 + ] + ], + "area": 6789.0, + "bbox": [3182.0, 1237.0, 73.0, 93.0], + "iscrowd": 0 + }, + { + "id": 224, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3264.0, 2264.0, 3347.0, 2264.0, 3347.0, 2339.0, 3264.0, 2339.0, + 3264.0, 2264.0 + ] + ], + "area": 6225.0, + "bbox": [3264.0, 2264.0, 83.0, 75.0], + "iscrowd": 0 + }, + { + "id": 225, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2541.5, 2147.0, 2544.82, 2146.79, 2548.09, 2146.17, 2551.26, 2145.14, + 2554.27, 2143.72, 2557.08, 2141.94, 2559.64, 2139.82, 2561.92, + 2137.39, 2563.87, 2134.7, 2565.48, 2131.78, 2566.7, 2128.69, 2567.53, + 2125.47, 2567.95, 2122.16, 2567.95, 2118.84, 2567.53, 2115.53, 2566.7, + 2112.31, 2565.48, 2109.22, 2563.87, 2106.3, 2561.92, 2103.61, 2559.64, + 2101.18, 2557.08, 2099.06, 2554.27, 2097.28, 2551.26, 2095.86, + 2548.09, 2094.83, 2544.82, 2094.21, 2541.5, 2094.0, 2538.18, 2094.21, + 2534.91, 2094.83, 2531.74, 2095.86, 2528.73, 2097.28, 2525.92, + 2099.06, 2523.36, 2101.18, 2521.08, 2103.61, 2519.13, 2106.3, 2517.52, + 2109.22, 2516.3, 2112.31, 2515.47, 2115.53, 2515.05, 2118.84, 2515.05, + 2122.16, 2515.47, 2125.47, 2516.3, 2128.69, 2517.52, 2131.78, 2519.13, + 2134.7, 2521.08, 2137.39, 2523.36, 2139.82, 2525.92, 2141.94, 2528.73, + 2143.72, 2531.74, 2145.14, 2534.91, 2146.17, 2538.18, 2146.79 + ] + ], + "area": 2205.0, + "bbox": [2515.05, 2094.0, 52.9, 53.0], + "iscrowd": 0 + }, + { + "id": 226, + "image_id": 2, + "category_id": 3, + "segmentation": [[1416.5, 1788.0, 1374.0, 1862.0, 1459.0, 1862.0]], + "area": 3154.0, + "bbox": [1374.0, 1788.0, 85.0, 74.0], + "iscrowd": 0 + }, + { + "id": 227, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1984.0, 2464.0, 2039.0, 2464.0, 2039.0, 2557.0, 1984.0, 2557.0, + 1984.0, 2464.0 + ] + ], + "area": 5115.0, + "bbox": [1984.0, 2464.0, 55.0, 93.0], + "iscrowd": 0 + }, + { + "id": 228, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3361.0, 2612.0, 3443.0, 2612.0, 3443.0, 2705.0, 3361.0, 2705.0, + 3361.0, 2612.0 + ] + ], + "area": 7626.0, + "bbox": [3361.0, 2612.0, 82.0, 93.0], + "iscrowd": 0 + }, + { + "id": 229, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2168.0, 482.0, 2254.0, 482.0, 2254.0, 549.0, 2168.0, 549.0, 2168.0, + 482.0 + ] + ], + "area": 5762.0, + "bbox": [2168.0, 482.0, 86.0, 67.0], + "iscrowd": 0 + }, + { + "id": 230, + "image_id": 2, + "category_id": 3, + "segmentation": [[2141.0, 1872.0, 2111.0, 1925.0, 2171.0, 1925.0]], + "area": 1596.0, + "bbox": [2111.0, 1872.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 231, + "image_id": 2, + "category_id": 3, + "segmentation": [[2382.5, 2995.0, 2347.0, 3057.0, 2418.0, 3057.0]], + "area": 2209.0, + "bbox": [2347.0, 2995.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 232, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 353.0, 2685.0, 435.0, 2685.0, 435.0, 2766.0, 353.0, 2766.0, 353.0, + 2685.0 + ] + ], + "area": 6642.0, + "bbox": [353.0, 2685.0, 82.0, 81.0], + "iscrowd": 0 + }, + { + "id": 233, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3022.0, 807.0, 3080.0, 807.0, 3080.0, 896.0, 3022.0, 896.0, 3022.0, + 807.0 + ] + ], + "area": 5162.0, + "bbox": [3022.0, 807.0, 58.0, 89.0], + "iscrowd": 0 + }, + { + "id": 234, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3229.0, 2736.0, 3312.0, 2736.0, 3312.0, 2817.0, 3229.0, 2817.0, + 3229.0, 2736.0 + ] + ], + "area": 6723.0, + "bbox": [3229.0, 2736.0, 83.0, 81.0], + "iscrowd": 0 + }, + { + "id": 235, + "image_id": 2, + "category_id": 3, + "segmentation": [[3011.5, 1331.0, 2979.0, 1388.0, 3044.0, 1388.0]], + "area": 1857.0, + "bbox": [2979.0, 1331.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 236, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1273.0, 2571.0, 1340.0, 2571.0, 1340.0, 2658.0, 1273.0, 2658.0, + 1273.0, 2571.0 + ] + ], + "area": 5829.0, + "bbox": [1273.0, 2571.0, 67.0, 87.0], + "iscrowd": 0 + }, + { + "id": 237, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 1103.0, 1092.0, 1184.0, 1092.0, 1184.0, 1181.0, 1103.0, 1181.0, + 1103.0, 1092.0 + ] + ], + "area": 7209.0, + "bbox": [1103.0, 1092.0, 81.0, 89.0], + "iscrowd": 0 + }, + { + "id": 238, + "image_id": 2, + "category_id": 3, + "segmentation": [[559.5, 865.0, 526.0, 924.0, 593.0, 924.0]], + "area": 1985.0, + "bbox": [526.0, 865.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 239, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 3083.0, 3206.0, 3172.0, 3206.0, 3172.0, 3256.0, 3083.0, 3256.0, + 3083.0, 3206.0 + ] + ], + "area": 4450.0, + "bbox": [3083.0, 3206.0, 89.0, 50.0], + "iscrowd": 0 + }, + { + "id": 240, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 2978.5, 1607.0, 2982.32, 1606.76, 2986.09, 1606.04, 2989.73, 1604.86, + 2993.19, 1603.23, 2996.43, 1601.18, 2999.38, 1598.73, 3002.0, 1595.94, + 3004.25, 1592.84, 3006.1, 1589.49, 3007.51, 1585.93, 3008.46, 1582.22, + 3008.94, 1578.42, 3008.94, 1574.58, 3008.46, 1570.78, 3007.51, + 1567.07, 3006.1, 1563.51, 3004.25, 1560.16, 3002.0, 1557.06, 2999.38, + 1554.27, 2996.43, 1551.82, 2993.19, 1549.77, 2989.73, 1548.14, + 2986.09, 1546.96, 2982.32, 1546.24, 2978.5, 1546.0, 2974.68, 1546.24, + 2970.91, 1546.96, 2967.27, 1548.14, 2963.81, 1549.77, 2960.57, + 1551.82, 2957.62, 1554.27, 2955.0, 1557.06, 2952.75, 1560.16, 2950.9, + 1563.51, 2949.49, 1567.07, 2948.54, 1570.78, 2948.06, 1574.58, + 2948.06, 1578.42, 2948.54, 1582.22, 2949.49, 1585.93, 2950.9, 1589.49, + 2952.75, 1592.84, 2955.0, 1595.94, 2957.62, 1598.73, 2960.57, 1601.18, + 2963.81, 1603.23, 2967.27, 1604.86, 2970.91, 1606.04, 2974.68, 1606.76 + ] + ], + "area": 2916.0, + "bbox": [2948.06, 1546.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 241, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 693.5, 1533.0, 699.58, 1532.62, 705.56, 1531.48, 711.35, 1529.59, + 716.87, 1527.0, 722.01, 1523.74, 726.7, 1519.85, 730.87, 1515.42, + 734.45, 1510.49, 737.38, 1505.15, 739.63, 1499.49, 741.14, 1493.59, + 741.9, 1487.55, 741.9, 1481.45, 741.14, 1475.41, 739.63, 1469.51, + 737.38, 1463.85, 734.45, 1458.51, 730.87, 1453.58, 726.7, 1449.15, + 722.01, 1445.26, 716.87, 1442.0, 711.35, 1439.41, 705.56, 1437.52, + 699.58, 1436.38, 693.5, 1436.0, 687.42, 1436.38, 681.44, 1437.52, + 675.65, 1439.41, 670.13, 1442.0, 664.99, 1445.26, 660.3, 1449.15, + 656.13, 1453.58, 652.55, 1458.51, 649.62, 1463.85, 647.37, 1469.51, + 645.86, 1475.41, 645.1, 1481.45, 645.1, 1487.55, 645.86, 1493.59, + 647.37, 1499.49, 649.62, 1505.15, 652.55, 1510.49, 656.13, 1515.42, + 660.3, 1519.85, 664.99, 1523.74, 670.13, 1527.0, 675.65, 1529.59, + 681.44, 1531.48, 687.42, 1532.62 + ] + ], + "area": 7380.0, + "bbox": [645.1, 1436.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 242, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2574.0, 2909.0, 2642.0, 2909.0, 2642.0, 2973.0, 2574.0, 2973.0, + 2574.0, 2909.0 + ] + ], + "area": 4352.0, + "bbox": [2574.0, 2909.0, 68.0, 64.0], + "iscrowd": 0 + }, + { + "id": 243, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 2828.0, 1895.0, 2885.0, 1895.0, 2885.0, 1958.0, 2828.0, 1958.0, + 2828.0, 1895.0 + ] + ], + "area": 3591.0, + "bbox": [2828.0, 1895.0, 57.0, 63.0], + "iscrowd": 0 + }, + { + "id": 244, + "image_id": 2, + "category_id": 3, + "segmentation": [[1070.0, 2489.0, 1036.0, 2549.0, 1104.0, 2549.0]], + "area": 2048.0, + "bbox": [1036.0, 2489.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 245, + "image_id": 2, + "category_id": 3, + "segmentation": [[368.5, 1030.0, 328.0, 1101.0, 409.0, 1101.0]], + "area": 2881.0, + "bbox": [328.0, 1030.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 246, + "image_id": 2, + "category_id": 2, + "segmentation": [ + [ + 1204.0, 812.5, 1203.63, 818.33, 1202.54, 824.06, 1200.73, 829.62, + 1198.25, 834.9, 1195.12, 839.83, 1191.4, 844.33, 1187.14, 848.33, + 1182.42, 851.76, 1177.3, 854.57, 1171.87, 856.72, 1166.21, 858.18, + 1160.42, 858.91, 1154.58, 858.91, 1148.79, 858.18, 1143.13, 856.72, + 1137.7, 854.57, 1132.58, 851.76, 1127.86, 848.33, 1123.6, 844.33, + 1119.88, 839.83, 1116.75, 834.9, 1114.27, 829.62, 1112.46, 824.06, + 1111.37, 818.33, 1111.0, 812.5, 1111.37, 806.67, 1112.46, 800.94, + 1114.27, 795.38, 1116.75, 790.1, 1119.88, 785.17, 1123.6, 780.67, + 1127.86, 776.67, 1132.58, 773.24, 1137.7, 770.43, 1143.13, 768.28, + 1148.79, 766.82, 1154.58, 766.09, 1160.42, 766.09, 1166.21, 766.82, + 1171.87, 768.28, 1177.3, 770.43, 1182.42, 773.24, 1187.14, 776.67, + 1191.4, 780.67, 1195.12, 785.17, 1198.25, 790.1, 1200.73, 795.38, + 1202.54, 800.94, 1203.63, 806.67 + ] + ], + "area": 6782.0, + "bbox": [1111.0, 766.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 247, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 2497.0, 1858.0, 2586.0, 1858.0, 2586.0, 1923.0, 2497.0, 1923.0, + 2497.0, 1858.0 + ] + ], + "area": 5785.0, + "bbox": [2497.0, 1858.0, 89.0, 65.0], + "iscrowd": 0 + }, + { + "id": 248, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 1882.0, 2814.0, 1953.0, 2814.0, 1953.0, 2903.0, 1882.0, 2903.0, + 1882.0, 2814.0 + ] + ], + "area": 6319.0, + "bbox": [1882.0, 2814.0, 71.0, 89.0], + "iscrowd": 0 + }, + { + "id": 249, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 2744.0, 1094.0, 2841.0, 1094.0, 2841.0, 1147.0, 2744.0, 1147.0, + 2744.0, 1094.0 + ] + ], + "area": 5141.0, + "bbox": [2744.0, 1094.0, 97.0, 53.0], + "iscrowd": 0 + }, + { + "id": 250, + "image_id": 3, + "category_id": 3, + "segmentation": [[2941.0, 1451.0, 2910.0, 1505.0, 2972.0, 1505.0]], + "area": 1680.0, + "bbox": [2910.0, 1451.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 251, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 3231.0, 1630.0, 3307.0, 1630.0, 3307.0, 1721.0, 3231.0, 1721.0, + 3231.0, 1630.0 + ] + ], + "area": 6916.0, + "bbox": [3231.0, 1630.0, 76.0, 91.0], + "iscrowd": 0 + }, + { + "id": 252, + "image_id": 3, + "category_id": 3, + "segmentation": [[3444.0, 2105.0, 3407.0, 2170.0, 3481.0, 2170.0]], + "area": 2412.0, + "bbox": [3407.0, 2105.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 253, + "image_id": 3, + "category_id": 3, + "segmentation": [[219.5, 2755.0, 188.0, 2810.0, 251.0, 2810.0]], + "area": 1739.0, + "bbox": [188.0, 2755.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 254, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 3062.0, 1796.0, 3123.0, 1796.0, 3123.0, 1851.0, 3062.0, 1851.0, + 3062.0, 1796.0 + ] + ], + "area": 3355.0, + "bbox": [3062.0, 1796.0, 61.0, 55.0], + "iscrowd": 0 + }, + { + "id": 255, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 2433.0, 1383.0, 2499.0, 1383.0, 2499.0, 1454.0, 2433.0, 1454.0, + 2433.0, 1383.0 + ] + ], + "area": 4686.0, + "bbox": [2433.0, 1383.0, 66.0, 71.0], + "iscrowd": 0 + }, + { + "id": 256, + "image_id": 3, + "category_id": 1, + "segmentation": [ + [ + 1290.0, 3359.0, 1383.0, 3359.0, 1383.0, 3438.0, 1290.0, 3438.0, + 1290.0, 3359.0 + ] + ], + "area": 7347.0, + "bbox": [1290.0, 3359.0, 93.0, 79.0], + "iscrowd": 0 + }, + { + "id": 257, + "image_id": 4, + "category_id": 3, + "segmentation": [[1035.0, 3288.0, 1004.0, 3342.0, 1066.0, 3342.0]], + "area": 1680.0, + "bbox": [1004.0, 3288.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 258, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 759.0, 2638.5, 758.76, 2642.32, 758.04, 2646.09, 756.86, 2649.73, + 755.23, 2653.19, 753.18, 2656.43, 750.73, 2659.38, 747.94, 2662.0, + 744.84, 2664.25, 741.49, 2666.1, 737.93, 2667.51, 734.22, 2668.46, + 730.42, 2668.94, 726.58, 2668.94, 722.78, 2668.46, 719.07, 2667.51, + 715.51, 2666.1, 712.16, 2664.25, 709.06, 2662.0, 706.27, 2659.38, + 703.82, 2656.43, 701.77, 2653.19, 700.14, 2649.73, 698.96, 2646.09, + 698.24, 2642.32, 698.0, 2638.5, 698.24, 2634.68, 698.96, 2630.91, + 700.14, 2627.27, 701.77, 2623.81, 703.82, 2620.57, 706.27, 2617.62, + 709.06, 2615.0, 712.16, 2612.75, 715.51, 2610.9, 719.07, 2609.49, + 722.78, 2608.54, 726.58, 2608.06, 730.42, 2608.06, 734.22, 2608.54, + 737.93, 2609.49, 741.49, 2610.9, 744.84, 2612.75, 747.94, 2615.0, + 750.73, 2617.62, 753.18, 2620.57, 755.23, 2623.81, 756.86, 2627.27, + 758.04, 2630.91, 758.76, 2634.68 + ] + ], + "area": 2915.0, + "bbox": [698.0, 2608.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 259, + "image_id": 4, + "category_id": 3, + "segmentation": [[1317.0, 2457.0, 1278.0, 2525.0, 1356.0, 2525.0]], + "area": 2660.0, + "bbox": [1278.0, 2457.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 260, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 3397.0, 476.5, 3396.63, 482.33, 3395.54, 488.06, 3393.73, 493.62, + 3391.25, 498.9, 3388.12, 503.83, 3384.4, 508.33, 3380.14, 512.33, + 3375.42, 515.76, 3370.3, 518.57, 3364.87, 520.72, 3359.21, 522.18, + 3353.42, 522.91, 3347.58, 522.91, 3341.79, 522.18, 3336.13, 520.72, + 3330.7, 518.57, 3325.58, 515.76, 3320.86, 512.33, 3316.6, 508.33, + 3312.88, 503.83, 3309.75, 498.9, 3307.27, 493.62, 3305.46, 488.06, + 3304.37, 482.33, 3304.0, 476.5, 3304.37, 470.67, 3305.46, 464.94, + 3307.27, 459.38, 3309.75, 454.1, 3312.88, 449.17, 3316.6, 444.67, + 3320.86, 440.67, 3325.58, 437.24, 3330.7, 434.43, 3336.13, 432.28, + 3341.79, 430.82, 3347.58, 430.09, 3353.42, 430.09, 3359.21, 430.82, + 3364.87, 432.28, 3370.3, 434.43, 3375.42, 437.24, 3380.14, 440.67, + 3384.4, 444.67, 3388.12, 449.17, 3391.25, 454.1, 3393.73, 459.38, + 3395.54, 464.94, 3396.63, 470.67 + ] + ], + "area": 6782.0, + "bbox": [3304.0, 430.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 261, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 452.0, 1431.5, 451.78, 1434.95, 451.14, 1438.34, 450.07, 1441.62, + 448.6, 1444.75, 446.75, 1447.66, 444.55, 1450.33, 442.03, 1452.69, + 439.24, 1454.72, 436.21, 1456.38, 433.0, 1457.65, 429.65, 1458.51, + 426.23, 1458.95, 422.77, 1458.95, 419.35, 1458.51, 416.0, 1457.65, + 412.79, 1456.38, 409.76, 1454.72, 406.97, 1452.69, 404.45, 1450.33, + 402.25, 1447.66, 400.4, 1444.75, 398.93, 1441.62, 397.86, 1438.34, + 397.22, 1434.95, 397.0, 1431.5, 397.22, 1428.05, 397.86, 1424.66, + 398.93, 1421.38, 400.4, 1418.25, 402.25, 1415.34, 404.45, 1412.67, + 406.97, 1410.31, 409.76, 1408.28, 412.79, 1406.62, 416.0, 1405.35, + 419.35, 1404.49, 422.77, 1404.05, 426.23, 1404.05, 429.65, 1404.49, + 433.0, 1405.35, 436.21, 1406.62, 439.24, 1408.28, 442.03, 1410.31, + 444.55, 1412.67, 446.75, 1415.34, 448.6, 1418.25, 450.07, 1421.38, + 451.14, 1424.66, 451.78, 1428.05 + ] + ], + "area": 2375.0, + "bbox": [397.0, 1404.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 262, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1957.0, 595.0, 2028.0, 595.0, 2028.0, 682.0, 1957.0, 682.0, 1957.0, + 595.0 + ] + ], + "area": 6177.0, + "bbox": [1957.0, 595.0, 71.0, 87.0], + "iscrowd": 0 + }, + { + "id": 263, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2530.0, 2468.0, 2587.0, 2468.0, 2587.0, 2535.0, 2530.0, 2535.0, + 2530.0, 2468.0 + ] + ], + "area": 3819.0, + "bbox": [2530.0, 2468.0, 57.0, 67.0], + "iscrowd": 0 + }, + { + "id": 264, + "image_id": 4, + "category_id": 3, + "segmentation": [[1788.0, 350.0, 1747.0, 422.0, 1829.0, 422.0]], + "area": 2960.0, + "bbox": [1747.0, 350.0, 82.0, 72.0], + "iscrowd": 0 + }, + { + "id": 265, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 3437.0, 2325.5, 3436.72, 2329.95, 3435.88, 2334.33, 3434.51, 2338.57, + 3432.61, 2342.6, 3430.22, 2346.37, 3427.38, 2349.8, 3424.13, 2352.85, + 3420.52, 2355.47, 3416.62, 2357.62, 3412.47, 2359.26, 3408.15, + 2360.37, 3403.73, 2360.93, 3399.27, 2360.93, 3394.85, 2360.37, + 3390.53, 2359.26, 3386.38, 2357.62, 3382.48, 2355.47, 3378.87, + 2352.85, 3375.62, 2349.8, 3372.78, 2346.37, 3370.39, 2342.6, 3368.49, + 2338.57, 3367.12, 2334.33, 3366.28, 2329.95, 3366.0, 2325.5, 3366.28, + 2321.05, 3367.12, 2316.67, 3368.49, 2312.43, 3370.39, 2308.4, 3372.78, + 2304.63, 3375.62, 2301.2, 3378.87, 2298.15, 3382.48, 2295.53, 3386.38, + 2293.38, 3390.53, 2291.74, 3394.85, 2290.63, 3399.27, 2290.07, + 3403.73, 2290.07, 3408.15, 2290.63, 3412.47, 2291.74, 3416.62, + 2293.38, 3420.52, 2295.53, 3424.13, 2298.15, 3427.38, 2301.2, 3430.22, + 2304.63, 3432.61, 2308.4, 3434.51, 2312.43, 3435.88, 2316.67, 3436.72, + 2321.05 + ] + ], + "area": 3957.0, + "bbox": [3366.0, 2290.07, 71.0, 70.86], + "iscrowd": 0 + }, + { + "id": 266, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2101.0, 2592.0, 2186.0, 2592.0, 2186.0, 2653.0, 2101.0, 2653.0, + 2101.0, 2592.0 + ] + ], + "area": 5185.0, + "bbox": [2101.0, 2592.0, 85.0, 61.0], + "iscrowd": 0 + }, + { + "id": 267, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2112.0, 1330.5, 2111.73, 1334.82, 2110.92, 1339.08, 2109.58, 1343.2, + 2107.73, 1347.12, 2105.41, 1350.78, 2102.65, 1354.12, 2099.49, + 1357.08, 2095.99, 1359.63, 2092.19, 1361.72, 2088.16, 1363.31, + 2083.96, 1364.39, 2079.67, 1364.93, 2075.33, 1364.93, 2071.04, + 1364.39, 2066.84, 1363.31, 2062.81, 1361.72, 2059.01, 1359.63, + 2055.51, 1357.08, 2052.35, 1354.12, 2049.59, 1350.78, 2047.27, + 1347.12, 2045.42, 1343.2, 2044.08, 1339.08, 2043.27, 1334.82, 2043.0, + 1330.5, 2043.27, 1326.18, 2044.08, 1321.92, 2045.42, 1317.8, 2047.27, + 1313.88, 2049.59, 1310.22, 2052.35, 1306.88, 2055.51, 1303.92, + 2059.01, 1301.37, 2062.81, 1299.28, 2066.84, 1297.69, 2071.04, + 1296.61, 2075.33, 1296.07, 2079.67, 1296.07, 2083.96, 1296.61, + 2088.16, 1297.69, 2092.19, 1299.28, 2095.99, 1301.37, 2099.49, + 1303.92, 2102.65, 1306.88, 2105.41, 1310.22, 2107.73, 1313.88, + 2109.58, 1317.8, 2110.92, 1321.92, 2111.73, 1326.18 + ] + ], + "area": 3743.0, + "bbox": [2043.0, 1296.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 268, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1231.0, 3044.5, 1230.76, 3048.32, 1230.04, 3052.09, 1228.86, 3055.73, + 1227.23, 3059.19, 1225.18, 3062.43, 1222.73, 3065.38, 1219.94, 3068.0, + 1216.84, 3070.25, 1213.49, 3072.1, 1209.93, 3073.51, 1206.22, 3074.46, + 1202.42, 3074.94, 1198.58, 3074.94, 1194.78, 3074.46, 1191.07, + 3073.51, 1187.51, 3072.1, 1184.16, 3070.25, 1181.06, 3068.0, 1178.27, + 3065.38, 1175.82, 3062.43, 1173.77, 3059.19, 1172.14, 3055.73, + 1170.96, 3052.09, 1170.24, 3048.32, 1170.0, 3044.5, 1170.24, 3040.68, + 1170.96, 3036.91, 1172.14, 3033.27, 1173.77, 3029.81, 1175.82, + 3026.57, 1178.27, 3023.62, 1181.06, 3021.0, 1184.16, 3018.75, 1187.51, + 3016.9, 1191.07, 3015.49, 1194.78, 3014.54, 1198.58, 3014.06, 1202.42, + 3014.06, 1206.22, 3014.54, 1209.93, 3015.49, 1213.49, 3016.9, 1216.84, + 3018.75, 1219.94, 3021.0, 1222.73, 3023.62, 1225.18, 3026.57, 1227.23, + 3029.81, 1228.86, 3033.27, 1230.04, 3036.91, 1230.76, 3040.68 + ] + ], + "area": 2915.0, + "bbox": [1170.0, 3014.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 269, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3235.0, 3245.0, 3314.0, 3245.0, 3314.0, 3300.0, 3235.0, 3300.0, + 3235.0, 3245.0 + ] + ], + "area": 4345.0, + "bbox": [3235.0, 3245.0, 79.0, 55.0], + "iscrowd": 0 + }, + { + "id": 270, + "image_id": 4, + "category_id": 3, + "segmentation": [[2922.0, 107.0, 2878.0, 184.0, 2966.0, 184.0]], + "area": 3388.0, + "bbox": [2878.0, 107.0, 88.0, 77.0], + "iscrowd": 0 + }, + { + "id": 271, + "image_id": 4, + "category_id": 3, + "segmentation": [[1467.5, 858.0, 1440.0, 906.0, 1495.0, 906.0]], + "area": 1326.0, + "bbox": [1440.0, 858.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 272, + "image_id": 4, + "category_id": 3, + "segmentation": [[3442.5, 2431.0, 3409.0, 2490.0, 3476.0, 2490.0]], + "area": 1985.0, + "bbox": [3409.0, 2431.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 273, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3172.0, 578.0, 3255.0, 578.0, 3255.0, 661.0, 3172.0, 661.0, 3172.0, + 578.0 + ] + ], + "area": 6889.0, + "bbox": [3172.0, 578.0, 83.0, 83.0], + "iscrowd": 0 + }, + { + "id": 274, + "image_id": 4, + "category_id": 3, + "segmentation": [[2967.0, 851.0, 2927.0, 921.0, 3007.0, 921.0]], + "area": 2800.0, + "bbox": [2927.0, 851.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 275, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [820.0, 432.0, 879.0, 432.0, 879.0, 482.0, 820.0, 482.0, 820.0, 432.0] + ], + "area": 2950.0, + "bbox": [820.0, 432.0, 59.0, 50.0], + "iscrowd": 0 + }, + { + "id": 276, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1160.0, 1643.0, 1254.0, 1643.0, 1254.0, 1726.0, 1160.0, 1726.0, + 1160.0, 1643.0 + ] + ], + "area": 7802.0, + "bbox": [1160.0, 1643.0, 94.0, 83.0], + "iscrowd": 0 + }, + { + "id": 277, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 3115.5, 1276.0, 3121.2, 1275.64, 3126.82, 1274.57, 3132.25, 1272.8, + 3137.42, 1270.37, 3142.24, 1267.31, 3146.65, 1263.67, 3150.56, 1259.5, + 3153.92, 1254.88, 3156.67, 1249.87, 3158.77, 1244.56, 3160.19, + 1239.03, 3160.91, 1233.36, 3160.91, 1227.64, 3160.19, 1221.97, + 3158.77, 1216.44, 3156.67, 1211.13, 3153.92, 1206.12, 3150.56, 1201.5, + 3146.65, 1197.33, 3142.24, 1193.69, 3137.42, 1190.63, 3132.25, 1188.2, + 3126.82, 1186.43, 3121.2, 1185.36, 3115.5, 1185.0, 3109.8, 1185.36, + 3104.18, 1186.43, 3098.75, 1188.2, 3093.58, 1190.63, 3088.76, 1193.69, + 3084.35, 1197.33, 3080.44, 1201.5, 3077.08, 1206.12, 3074.33, 1211.13, + 3072.23, 1216.44, 3070.81, 1221.97, 3070.09, 1227.64, 3070.09, + 1233.36, 3070.81, 1239.03, 3072.23, 1244.56, 3074.33, 1249.87, + 3077.08, 1254.88, 3080.44, 1259.5, 3084.35, 1263.67, 3088.76, 1267.31, + 3093.58, 1270.37, 3098.75, 1272.8, 3104.18, 1274.57, 3109.8, 1275.64 + ] + ], + "area": 6499.0, + "bbox": [3070.09, 1185.0, 90.82, 91.0], + "iscrowd": 0 + }, + { + "id": 278, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1006.0, 1611.0, 1085.0, 1611.0, 1085.0, 1670.0, 1006.0, 1670.0, + 1006.0, 1611.0 + ] + ], + "area": 4661.0, + "bbox": [1006.0, 1611.0, 79.0, 59.0], + "iscrowd": 0 + }, + { + "id": 279, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1492.0, 2334.0, 1588.0, 2334.0, 1588.0, 2416.0, 1492.0, 2416.0, + 1492.0, 2334.0 + ] + ], + "area": 7872.0, + "bbox": [1492.0, 2334.0, 96.0, 82.0], + "iscrowd": 0 + }, + { + "id": 280, + "image_id": 4, + "category_id": 3, + "segmentation": [[166.5, 3011.0, 132.0, 3071.0, 201.0, 3071.0]], + "area": 2078.0, + "bbox": [132.0, 3011.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 281, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2195.0, 2512.0, 2258.0, 2512.0, 2258.0, 2572.0, 2195.0, 2572.0, + 2195.0, 2512.0 + ] + ], + "area": 3780.0, + "bbox": [2195.0, 2512.0, 63.0, 60.0], + "iscrowd": 0 + }, + { + "id": 282, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2937.0, 875.5, 2936.8, 878.7, 2936.2, 881.84, 2935.21, 884.89, + 2933.85, 887.78, 2932.13, 890.49, 2930.09, 892.96, 2927.75, 895.15, + 2925.16, 897.03, 2922.36, 898.57, 2919.38, 899.75, 2916.28, 900.55, + 2913.1, 900.95, 2909.9, 900.95, 2906.72, 900.55, 2903.62, 899.75, + 2900.64, 898.57, 2897.84, 897.03, 2895.25, 895.15, 2892.91, 892.96, + 2890.87, 890.49, 2889.15, 887.78, 2887.79, 884.89, 2886.8, 881.84, + 2886.2, 878.7, 2886.0, 875.5, 2886.2, 872.3, 2886.8, 869.16, 2887.79, + 866.11, 2889.15, 863.22, 2890.87, 860.51, 2892.91, 858.04, 2895.25, + 855.85, 2897.84, 853.97, 2900.64, 852.43, 2903.62, 851.25, 2906.72, + 850.45, 2909.9, 850.05, 2913.1, 850.05, 2916.28, 850.45, 2919.38, + 851.25, 2922.36, 852.43, 2925.16, 853.97, 2927.75, 855.85, 2930.09, + 858.04, 2932.13, 860.51, 2933.85, 863.22, 2935.21, 866.11, 2936.2, + 869.16, 2936.8, 872.3 + ] + ], + "area": 2037.0, + "bbox": [2886.0, 850.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 283, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 821.0, 2612.0, 915.0, 2612.0, 915.0, 2676.0, 821.0, 2676.0, 821.0, + 2612.0 + ] + ], + "area": 6016.0, + "bbox": [821.0, 2612.0, 94.0, 64.0], + "iscrowd": 0 + }, + { + "id": 284, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [225.0, 385.0, 296.0, 385.0, 296.0, 470.0, 225.0, 470.0, 225.0, 385.0] + ], + "area": 6035.0, + "bbox": [225.0, 385.0, 71.0, 85.0], + "iscrowd": 0 + }, + { + "id": 285, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2122.0, 3101.0, 2215.0, 3101.0, 2215.0, 3197.0, 2122.0, 3197.0, + 2122.0, 3101.0 + ] + ], + "area": 8928.0, + "bbox": [2122.0, 3101.0, 93.0, 96.0], + "iscrowd": 0 + }, + { + "id": 286, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 274.0, 2751.0, 367.0, 2751.0, 367.0, 2824.0, 274.0, 2824.0, 274.0, + 2751.0 + ] + ], + "area": 6789.0, + "bbox": [274.0, 2751.0, 93.0, 73.0], + "iscrowd": 0 + }, + { + "id": 287, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 491.5, 1211.0, 495.95, 1210.72, 500.33, 1209.88, 504.57, 1208.51, + 508.6, 1206.61, 512.37, 1204.22, 515.8, 1201.38, 518.85, 1198.13, + 521.47, 1194.52, 523.62, 1190.62, 525.26, 1186.47, 526.37, 1182.15, + 526.93, 1177.73, 526.93, 1173.27, 526.37, 1168.85, 525.26, 1164.53, + 523.62, 1160.38, 521.47, 1156.48, 518.85, 1152.87, 515.8, 1149.62, + 512.37, 1146.78, 508.6, 1144.39, 504.57, 1142.49, 500.33, 1141.12, + 495.95, 1140.28, 491.5, 1140.0, 487.05, 1140.28, 482.67, 1141.12, + 478.43, 1142.49, 474.4, 1144.39, 470.63, 1146.78, 467.2, 1149.62, + 464.15, 1152.87, 461.53, 1156.48, 459.38, 1160.38, 457.74, 1164.53, + 456.63, 1168.85, 456.07, 1173.27, 456.07, 1177.73, 456.63, 1182.15, + 457.74, 1186.47, 459.38, 1190.62, 461.53, 1194.52, 464.15, 1198.13, + 467.2, 1201.38, 470.63, 1204.22, 474.4, 1206.61, 478.43, 1208.51, + 482.67, 1209.88, 487.05, 1210.72 + ] + ], + "area": 3956.0, + "bbox": [456.07, 1140.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 288, + "image_id": 4, + "category_id": 3, + "segmentation": [[1571.0, 0.0, 1546.0, 12.0, 1596.0, 12.0]], + "area": 302.0, + "bbox": [1546.0, 0.0, 50.0, 12.0], + "iscrowd": 0 + }, + { + "id": 289, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1031.0, 1215.5, 1030.66, 1220.95, 1029.63, 1226.32, 1027.95, 1231.51, + 1025.62, 1236.46, 1022.69, 1241.07, 1019.21, 1245.28, 1015.23, + 1249.02, 1010.81, 1252.23, 1006.02, 1254.86, 1000.94, 1256.87, 995.65, + 1258.23, 990.23, 1258.91, 984.77, 1258.91, 979.35, 1258.23, 974.06, + 1256.87, 968.98, 1254.86, 964.19, 1252.23, 959.77, 1249.02, 955.79, + 1245.28, 952.31, 1241.07, 949.38, 1236.46, 947.05, 1231.51, 945.37, + 1226.32, 944.34, 1220.95, 944.0, 1215.5, 944.34, 1210.05, 945.37, + 1204.68, 947.05, 1199.49, 949.38, 1194.54, 952.31, 1189.93, 955.79, + 1185.72, 959.77, 1181.98, 964.19, 1178.77, 968.98, 1176.14, 974.06, + 1174.13, 979.35, 1172.77, 984.77, 1172.09, 990.23, 1172.09, 995.65, + 1172.77, 1000.94, 1174.13, 1006.02, 1176.14, 1010.81, 1178.77, + 1015.23, 1181.98, 1019.21, 1185.72, 1022.69, 1189.93, 1025.62, + 1194.54, 1027.95, 1199.49, 1029.63, 1204.68, 1030.66, 1210.05 + ] + ], + "area": 5927.0, + "bbox": [944.0, 1172.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 290, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1946.0, 1898.0, 2018.0, 1898.0, 2018.0, 1961.0, 1946.0, 1961.0, + 1946.0, 1898.0 + ] + ], + "area": 4536.0, + "bbox": [1946.0, 1898.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 291, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [433.0, 816.0, 525.0, 816.0, 525.0, 897.0, 433.0, 897.0, 433.0, 816.0] + ], + "area": 7452.0, + "bbox": [433.0, 816.0, 92.0, 81.0], + "iscrowd": 0 + }, + { + "id": 292, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2449.0, 3377.0, 2528.0, 3377.0, 2528.0, 3456.0, 2449.0, 3456.0, + 2449.0, 3377.0 + ] + ], + "area": 6241.0, + "bbox": [2449.0, 3377.0, 79.0, 79.0], + "iscrowd": 0 + }, + { + "id": 293, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2979.0, 1211.0, 3054.0, 1211.0, 3054.0, 1294.0, 2979.0, 1294.0, + 2979.0, 1211.0 + ] + ], + "area": 6225.0, + "bbox": [2979.0, 1211.0, 75.0, 83.0], + "iscrowd": 0 + }, + { + "id": 294, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3363.0, 643.0, 3434.0, 643.0, 3434.0, 724.0, 3363.0, 724.0, 3363.0, + 643.0 + ] + ], + "area": 5751.0, + "bbox": [3363.0, 643.0, 71.0, 81.0], + "iscrowd": 0 + }, + { + "id": 295, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 812.5, 1390.0, 817.7, 1389.67, 822.82, 1388.7, 827.78, 1387.09, + 832.49, 1384.87, 836.89, 1382.07, 840.91, 1378.75, 844.48, 1374.95, + 847.54, 1370.74, 850.05, 1366.17, 851.97, 1361.32, 853.26, 1356.28, + 853.92, 1351.11, 853.92, 1345.89, 853.26, 1340.72, 851.97, 1335.68, + 850.05, 1330.83, 847.54, 1326.26, 844.48, 1322.05, 840.91, 1318.25, + 836.89, 1314.93, 832.49, 1312.13, 827.78, 1309.91, 822.82, 1308.3, + 817.7, 1307.33, 812.5, 1307.0, 807.3, 1307.33, 802.18, 1308.3, 797.22, + 1309.91, 792.51, 1312.13, 788.11, 1314.93, 784.09, 1318.25, 780.52, + 1322.05, 777.46, 1326.26, 774.95, 1330.83, 773.03, 1335.68, 771.74, + 1340.72, 771.08, 1345.89, 771.08, 1351.11, 771.74, 1356.28, 773.03, + 1361.32, 774.95, 1366.17, 777.46, 1370.74, 780.52, 1374.95, 784.09, + 1378.75, 788.11, 1382.07, 792.51, 1384.87, 797.22, 1387.09, 802.18, + 1388.7, 807.3, 1389.67 + ] + ], + "area": 5392.0, + "bbox": [771.08, 1307.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 296, + "image_id": 4, + "category_id": 3, + "segmentation": [[3046.0, 1107.0, 3011.0, 1168.0, 3081.0, 1168.0]], + "area": 2142.0, + "bbox": [3011.0, 1107.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 297, + "image_id": 4, + "category_id": 3, + "segmentation": [[1708.5, 2103.0, 1677.0, 2158.0, 1740.0, 2158.0]], + "area": 1739.0, + "bbox": [1677.0, 2103.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 298, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1526.0, 1453.0, 1617.0, 1453.0, 1617.0, 1542.0, 1526.0, 1542.0, + 1526.0, 1453.0 + ] + ], + "area": 8099.0, + "bbox": [1526.0, 1453.0, 91.0, 89.0], + "iscrowd": 0 + }, + { + "id": 299, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2095.0, 1209.0, 2180.0, 1209.0, 2180.0, 1310.0, 2095.0, 1310.0, + 2095.0, 1209.0 + ] + ], + "area": 8585.0, + "bbox": [2095.0, 1209.0, 85.0, 101.0], + "iscrowd": 0 + }, + { + "id": 300, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2614.0, 1356.0, 2701.0, 1356.0, 2701.0, 1449.0, 2614.0, 1449.0, + 2614.0, 1356.0 + ] + ], + "area": 8091.0, + "bbox": [2614.0, 1356.0, 87.0, 93.0], + "iscrowd": 0 + }, + { + "id": 301, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2375.0, 1217.0, 2460.0, 1217.0, 2460.0, 1300.0, 2375.0, 1300.0, + 2375.0, 1217.0 + ] + ], + "area": 7055.0, + "bbox": [2375.0, 1217.0, 85.0, 83.0], + "iscrowd": 0 + }, + { + "id": 302, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1835.5, 108.0, 1839.32, 107.76, 1843.09, 107.04, 1846.73, 105.86, + 1850.19, 104.23, 1853.43, 102.18, 1856.38, 99.73, 1859.0, 96.94, + 1861.25, 93.84, 1863.1, 90.49, 1864.51, 86.93, 1865.46, 83.22, + 1865.94, 79.42, 1865.94, 75.58, 1865.46, 71.78, 1864.51, 68.07, + 1863.1, 64.51, 1861.25, 61.16, 1859.0, 58.06, 1856.38, 55.27, 1853.43, + 52.82, 1850.19, 50.77, 1846.73, 49.14, 1843.09, 47.96, 1839.32, 47.24, + 1835.5, 47.0, 1831.68, 47.24, 1827.91, 47.96, 1824.27, 49.14, 1820.81, + 50.77, 1817.57, 52.82, 1814.62, 55.27, 1812.0, 58.06, 1809.75, 61.16, + 1807.9, 64.51, 1806.49, 68.07, 1805.54, 71.78, 1805.06, 75.58, + 1805.06, 79.42, 1805.54, 83.22, 1806.49, 86.93, 1807.9, 90.49, + 1809.75, 93.84, 1812.0, 96.94, 1814.62, 99.73, 1817.57, 102.18, + 1820.81, 104.23, 1824.27, 105.86, 1827.91, 107.04, 1831.68, 107.76 + ] + ], + "area": 2916.0, + "bbox": [1805.06, 47.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 303, + "image_id": 4, + "category_id": 3, + "segmentation": [[903.0, 1183.0, 869.0, 1243.0, 937.0, 1243.0]], + "area": 2048.0, + "bbox": [869.0, 1183.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 304, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2601.0, 1224.0, 2674.0, 1224.0, 2674.0, 1297.0, 2601.0, 1297.0, + 2601.0, 1224.0 + ] + ], + "area": 5329.0, + "bbox": [2601.0, 1224.0, 73.0, 73.0], + "iscrowd": 0 + }, + { + "id": 305, + "image_id": 4, + "category_id": 3, + "segmentation": [[2731.0, 2171.0, 2693.0, 2237.0, 2769.0, 2237.0]], + "area": 2514.0, + "bbox": [2693.0, 2171.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 306, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 526.0, 2596.0, 595.0, 2596.0, 595.0, 2675.0, 526.0, 2675.0, 526.0, + 2596.0 + ] + ], + "area": 5451.0, + "bbox": [526.0, 2596.0, 69.0, 79.0], + "iscrowd": 0 + }, + { + "id": 307, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 116.0, 1912.0, 193.0, 1912.0, 193.0, 1993.0, 116.0, 1993.0, 116.0, + 1912.0 + ] + ], + "area": 6237.0, + "bbox": [116.0, 1912.0, 77.0, 81.0], + "iscrowd": 0 + }, + { + "id": 308, + "image_id": 4, + "category_id": 3, + "segmentation": [[3288.5, 1613.0, 3251.0, 1679.0, 3326.0, 1679.0]], + "area": 2485.0, + "bbox": [3251.0, 1613.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 309, + "image_id": 4, + "category_id": 3, + "segmentation": [[138.0, 1668.0, 113.0, 1712.0, 163.0, 1712.0]], + "area": 1105.0, + "bbox": [113.0, 1668.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 310, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1732.0, 1256.0, 1817.0, 1256.0, 1817.0, 1311.0, 1732.0, 1311.0, + 1732.0, 1256.0 + ] + ], + "area": 4675.0, + "bbox": [1732.0, 1256.0, 85.0, 55.0], + "iscrowd": 0 + }, + { + "id": 311, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2330.0, 1767.5, 2329.67, 1772.7, 2328.7, 1777.82, 2327.09, 1782.78, + 2324.87, 1787.49, 2322.07, 1791.89, 2318.75, 1795.91, 2314.95, + 1799.48, 2310.74, 1802.54, 2306.17, 1805.05, 2301.32, 1806.97, + 2296.28, 1808.26, 2291.11, 1808.92, 2285.89, 1808.92, 2280.72, + 1808.26, 2275.68, 1806.97, 2270.83, 1805.05, 2266.26, 1802.54, + 2262.05, 1799.48, 2258.25, 1795.91, 2254.93, 1791.89, 2252.13, + 1787.49, 2249.91, 1782.78, 2248.3, 1777.82, 2247.33, 1772.7, 2247.0, + 1767.5, 2247.33, 1762.3, 2248.3, 1757.18, 2249.91, 1752.22, 2252.13, + 1747.51, 2254.93, 1743.11, 2258.25, 1739.09, 2262.05, 1735.52, + 2266.26, 1732.46, 2270.83, 1729.95, 2275.68, 1728.03, 2280.72, + 1726.74, 2285.89, 1726.08, 2291.11, 1726.08, 2296.28, 1726.74, + 2301.32, 1728.03, 2306.17, 1729.95, 2310.74, 1732.46, 2314.95, + 1735.52, 2318.75, 1739.09, 2322.07, 1743.11, 2324.87, 1747.51, + 2327.09, 1752.22, 2328.7, 1757.18, 2329.67, 1762.3 + ] + ], + "area": 5394.0, + "bbox": [2247.0, 1726.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 312, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2919.0, 1799.0, 2998.0, 1799.0, 2998.0, 1872.0, 2919.0, 1872.0, + 2919.0, 1799.0 + ] + ], + "area": 5767.0, + "bbox": [2919.0, 1799.0, 79.0, 73.0], + "iscrowd": 0 + }, + { + "id": 313, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 341.0, 1430.0, 395.0, 1430.0, 395.0, 1510.0, 341.0, 1510.0, 341.0, + 1430.0 + ] + ], + "area": 4320.0, + "bbox": [341.0, 1430.0, 54.0, 80.0], + "iscrowd": 0 + }, + { + "id": 314, + "image_id": 4, + "category_id": 3, + "segmentation": [[2857.0, 3079.0, 2832.0, 3123.0, 2882.0, 3123.0]], + "area": 1105.0, + "bbox": [2832.0, 3079.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 315, + "image_id": 4, + "category_id": 3, + "segmentation": [[525.0, 979.0, 476.0, 1065.0, 574.0, 1065.0]], + "area": 4224.0, + "bbox": [476.0, 979.0, 98.0, 86.0], + "iscrowd": 0 + }, + { + "id": 316, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 899.0, 3016.0, 957.0, 3016.0, 957.0, 3095.0, 899.0, 3095.0, 899.0, + 3016.0 + ] + ], + "area": 4582.0, + "bbox": [899.0, 3016.0, 58.0, 79.0], + "iscrowd": 0 + }, + { + "id": 317, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 93.0, 2057.5, 92.64, 2063.2, 91.57, 2068.82, 89.8, 2074.25, 87.37, + 2079.42, 84.31, 2084.24, 80.67, 2088.65, 76.5, 2092.56, 71.88, + 2095.92, 66.87, 2098.67, 61.56, 2100.77, 56.03, 2102.19, 50.36, + 2102.91, 44.64, 2102.91, 38.97, 2102.19, 33.44, 2100.77, 28.13, + 2098.67, 23.12, 2095.92, 18.5, 2092.56, 14.33, 2088.65, 10.69, + 2084.24, 7.63, 2079.42, 5.2, 2074.25, 3.43, 2068.82, 2.36, 2063.2, + 2.0, 2057.5, 2.36, 2051.8, 3.43, 2046.18, 5.2, 2040.75, 7.63, 2035.58, + 10.69, 2030.76, 14.33, 2026.35, 18.5, 2022.44, 23.12, 2019.08, 28.13, + 2016.33, 33.44, 2014.23, 38.97, 2012.81, 44.64, 2012.09, 50.36, + 2012.09, 56.03, 2012.81, 61.56, 2014.23, 66.87, 2016.33, 71.88, + 2019.08, 76.5, 2022.44, 80.67, 2026.35, 84.31, 2030.76, 87.37, + 2035.58, 89.8, 2040.75, 91.57, 2046.18, 92.64, 2051.8 + ] + ], + "area": 6498.0, + "bbox": [2.0, 2012.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 318, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2398.0, 618.0, 2485.0, 618.0, 2485.0, 695.0, 2398.0, 695.0, 2398.0, + 618.0 + ] + ], + "area": 6699.0, + "bbox": [2398.0, 618.0, 87.0, 77.0], + "iscrowd": 0 + }, + { + "id": 319, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1953.0, 1210.5, 1952.69, 1215.45, 1951.76, 1220.32, 1950.23, 1225.04, + 1948.11, 1229.53, 1945.46, 1233.72, 1942.29, 1237.54, 1938.68, + 1240.94, 1934.67, 1243.85, 1930.32, 1246.24, 1925.71, 1248.07, 1920.9, + 1249.3, 1915.98, 1249.92, 1911.02, 1249.92, 1906.1, 1249.3, 1901.29, + 1248.07, 1896.68, 1246.24, 1892.33, 1243.85, 1888.32, 1240.94, + 1884.71, 1237.54, 1881.54, 1233.72, 1878.89, 1229.53, 1876.77, + 1225.04, 1875.24, 1220.32, 1874.31, 1215.45, 1874.0, 1210.5, 1874.31, + 1205.55, 1875.24, 1200.68, 1876.77, 1195.96, 1878.89, 1191.47, + 1881.54, 1187.28, 1884.71, 1183.46, 1888.32, 1180.06, 1892.33, + 1177.15, 1896.68, 1174.76, 1901.29, 1172.93, 1906.1, 1171.7, 1911.02, + 1171.08, 1915.98, 1171.08, 1920.9, 1171.7, 1925.71, 1172.93, 1930.32, + 1174.76, 1934.67, 1177.15, 1938.68, 1180.06, 1942.29, 1183.46, + 1945.46, 1187.28, 1948.11, 1191.47, 1950.23, 1195.96, 1951.76, + 1200.68, 1952.69, 1205.55 + ] + ], + "area": 4893.0, + "bbox": [1874.0, 1171.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 320, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3314.0, 291.0, 3393.0, 291.0, 3393.0, 376.0, 3314.0, 376.0, 3314.0, + 291.0 + ] + ], + "area": 6715.0, + "bbox": [3314.0, 291.0, 79.0, 85.0], + "iscrowd": 0 + }, + { + "id": 321, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2914.0, 286.5, 2913.67, 291.7, 2912.7, 296.82, 2911.09, 301.78, + 2908.87, 306.49, 2906.07, 310.89, 2902.75, 314.91, 2898.95, 318.48, + 2894.74, 321.54, 2890.17, 324.05, 2885.32, 325.97, 2880.28, 327.26, + 2875.11, 327.92, 2869.89, 327.92, 2864.72, 327.26, 2859.68, 325.97, + 2854.83, 324.05, 2850.26, 321.54, 2846.05, 318.48, 2842.25, 314.91, + 2838.93, 310.89, 2836.13, 306.49, 2833.91, 301.78, 2832.3, 296.82, + 2831.33, 291.7, 2831.0, 286.5, 2831.33, 281.3, 2832.3, 276.18, + 2833.91, 271.22, 2836.13, 266.51, 2838.93, 262.11, 2842.25, 258.09, + 2846.05, 254.52, 2850.26, 251.46, 2854.83, 248.95, 2859.68, 247.03, + 2864.72, 245.74, 2869.89, 245.08, 2875.11, 245.08, 2880.28, 245.74, + 2885.32, 247.03, 2890.17, 248.95, 2894.74, 251.46, 2898.95, 254.52, + 2902.75, 258.09, 2906.07, 262.11, 2908.87, 266.51, 2911.09, 271.22, + 2912.7, 276.18, 2913.67, 281.3 + ] + ], + "area": 5394.0, + "bbox": [2831.0, 245.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 322, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 499.0, 2013.0, 560.0, 2013.0, 560.0, 2098.0, 499.0, 2098.0, 499.0, + 2013.0 + ] + ], + "area": 5185.0, + "bbox": [499.0, 2013.0, 61.0, 85.0], + "iscrowd": 0 + }, + { + "id": 323, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2231.0, 1518.0, 2327.0, 1518.0, 2327.0, 1582.0, 2231.0, 1582.0, + 2231.0, 1518.0 + ] + ], + "area": 6144.0, + "bbox": [2231.0, 1518.0, 96.0, 64.0], + "iscrowd": 0 + }, + { + "id": 324, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [98.0, 2171.0, 176.0, 2171.0, 176.0, 2240.0, 98.0, 2240.0, 98.0, 2171.0] + ], + "area": 5382.0, + "bbox": [98.0, 2171.0, 78.0, 69.0], + "iscrowd": 0 + }, + { + "id": 325, + "image_id": 4, + "category_id": 3, + "segmentation": [[1893.0, 3208.0, 1857.0, 3271.0, 1929.0, 3271.0]], + "area": 2268.0, + "bbox": [1857.0, 3208.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 326, + "image_id": 4, + "category_id": 3, + "segmentation": [[281.5, 738.0, 234.0, 821.0, 329.0, 821.0]], + "area": 3952.0, + "bbox": [234.0, 738.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 327, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3164.0, 1372.0, 3218.0, 1372.0, 3218.0, 1443.0, 3164.0, 1443.0, + 3164.0, 1372.0 + ] + ], + "area": 3834.0, + "bbox": [3164.0, 1372.0, 54.0, 71.0], + "iscrowd": 0 + }, + { + "id": 328, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1767.0, 1702.0, 1819.0, 1702.0, 1819.0, 1765.0, 1767.0, 1765.0, + 1767.0, 1702.0 + ] + ], + "area": 3276.0, + "bbox": [1767.0, 1702.0, 52.0, 63.0], + "iscrowd": 0 + }, + { + "id": 329, + "image_id": 4, + "category_id": 3, + "segmentation": [[2689.0, 2855.0, 2663.0, 2901.0, 2715.0, 2901.0]], + "area": 1202.0, + "bbox": [2663.0, 2855.0, 52.0, 46.0], + "iscrowd": 0 + }, + { + "id": 330, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 588.0, 3212.0, 641.0, 3212.0, 641.0, 3293.0, 588.0, 3293.0, 588.0, + 3212.0 + ] + ], + "area": 4293.0, + "bbox": [588.0, 3212.0, 53.0, 81.0], + "iscrowd": 0 + }, + { + "id": 331, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2335.5, 2972.0, 2339.2, 2971.77, 2342.84, 2971.07, 2346.36, 2969.93, + 2349.71, 2968.35, 2352.84, 2966.37, 2355.69, 2964.0, 2358.23, 2961.3, + 2360.41, 2958.31, 2362.19, 2955.06, 2363.56, 2951.62, 2364.48, + 2948.03, 2364.94, 2944.35, 2364.94, 2940.65, 2364.48, 2936.97, + 2363.56, 2933.38, 2362.19, 2929.94, 2360.41, 2926.69, 2358.23, 2923.7, + 2355.69, 2921.0, 2352.84, 2918.63, 2349.71, 2916.65, 2346.36, 2915.07, + 2342.84, 2913.93, 2339.2, 2913.23, 2335.5, 2913.0, 2331.8, 2913.23, + 2328.16, 2913.93, 2324.64, 2915.07, 2321.29, 2916.65, 2318.16, + 2918.63, 2315.31, 2921.0, 2312.77, 2923.7, 2310.59, 2926.69, 2308.81, + 2929.94, 2307.44, 2933.38, 2306.52, 2936.97, 2306.06, 2940.65, + 2306.06, 2944.35, 2306.52, 2948.03, 2307.44, 2951.62, 2308.81, + 2955.06, 2310.59, 2958.31, 2312.77, 2961.3, 2315.31, 2964.0, 2318.16, + 2966.37, 2321.29, 2968.35, 2324.64, 2969.93, 2328.16, 2971.07, 2331.8, + 2971.77 + ] + ], + "area": 2732.0, + "bbox": [2306.06, 2913.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 332, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [312.0, 503.0, 411.0, 503.0, 411.0, 592.0, 312.0, 592.0, 312.0, 503.0] + ], + "area": 8811.0, + "bbox": [312.0, 503.0, 99.0, 89.0], + "iscrowd": 0 + }, + { + "id": 333, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3349.0, 1064.0, 3402.0, 1064.0, 3402.0, 1119.0, 3349.0, 1119.0, + 3349.0, 1064.0 + ] + ], + "area": 2915.0, + "bbox": [3349.0, 1064.0, 53.0, 55.0], + "iscrowd": 0 + }, + { + "id": 334, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2954.0, 1669.0, 3043.0, 1669.0, 3043.0, 1726.0, 2954.0, 1726.0, + 2954.0, 1669.0 + ] + ], + "area": 5073.0, + "bbox": [2954.0, 1669.0, 89.0, 57.0], + "iscrowd": 0 + }, + { + "id": 335, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2214.0, 848.0, 2281.0, 848.0, 2281.0, 940.0, 2214.0, 940.0, 2214.0, + 848.0 + ] + ], + "area": 6164.0, + "bbox": [2214.0, 848.0, 67.0, 92.0], + "iscrowd": 0 + }, + { + "id": 336, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2040.0, 1060.0, 2129.0, 1060.0, 2129.0, 1124.0, 2040.0, 1124.0, + 2040.0, 1060.0 + ] + ], + "area": 5696.0, + "bbox": [2040.0, 1060.0, 89.0, 64.0], + "iscrowd": 0 + }, + { + "id": 337, + "image_id": 4, + "category_id": 3, + "segmentation": [[2595.0, 1014.0, 2568.0, 1061.0, 2622.0, 1061.0]], + "area": 1274.0, + "bbox": [2568.0, 1014.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 338, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2010.0, 691.0, 2083.0, 691.0, 2083.0, 771.0, 2010.0, 771.0, 2010.0, + 691.0 + ] + ], + "area": 5840.0, + "bbox": [2010.0, 691.0, 73.0, 80.0], + "iscrowd": 0 + }, + { + "id": 339, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 163.0, 2507.0, 222.0, 2507.0, 222.0, 2564.0, 163.0, 2564.0, 163.0, + 2507.0 + ] + ], + "area": 3363.0, + "bbox": [163.0, 2507.0, 59.0, 57.0], + "iscrowd": 0 + }, + { + "id": 340, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1672.0, 1694.5, 1671.64, 1700.2, 1670.57, 1705.82, 1668.8, 1711.25, + 1666.37, 1716.42, 1663.31, 1721.24, 1659.67, 1725.65, 1655.5, 1729.56, + 1650.88, 1732.92, 1645.87, 1735.67, 1640.56, 1737.77, 1635.03, + 1739.19, 1629.36, 1739.91, 1623.64, 1739.91, 1617.97, 1739.19, + 1612.44, 1737.77, 1607.13, 1735.67, 1602.12, 1732.92, 1597.5, 1729.56, + 1593.33, 1725.65, 1589.69, 1721.24, 1586.63, 1716.42, 1584.2, 1711.25, + 1582.43, 1705.82, 1581.36, 1700.2, 1581.0, 1694.5, 1581.36, 1688.8, + 1582.43, 1683.18, 1584.2, 1677.75, 1586.63, 1672.58, 1589.69, 1667.76, + 1593.33, 1663.35, 1597.5, 1659.44, 1602.12, 1656.08, 1607.13, 1653.33, + 1612.44, 1651.23, 1617.97, 1649.81, 1623.64, 1649.09, 1629.36, + 1649.09, 1635.03, 1649.81, 1640.56, 1651.23, 1645.87, 1653.33, + 1650.88, 1656.08, 1655.5, 1659.44, 1659.67, 1663.35, 1663.31, 1667.76, + 1666.37, 1672.58, 1668.8, 1677.75, 1670.57, 1683.18, 1671.64, 1688.8 + ] + ], + "area": 6498.0, + "bbox": [1581.0, 1649.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 341, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2758.5, 3061.0, 2762.2, 3060.77, 2765.84, 3060.07, 2769.36, 3058.93, + 2772.71, 3057.35, 2775.84, 3055.37, 2778.69, 3053.0, 2781.23, 3050.3, + 2783.41, 3047.31, 2785.19, 3044.06, 2786.56, 3040.62, 2787.48, + 3037.03, 2787.94, 3033.35, 2787.94, 3029.65, 2787.48, 3025.97, + 2786.56, 3022.38, 2785.19, 3018.94, 2783.41, 3015.69, 2781.23, 3012.7, + 2778.69, 3010.0, 2775.84, 3007.63, 2772.71, 3005.65, 2769.36, 3004.07, + 2765.84, 3002.93, 2762.2, 3002.23, 2758.5, 3002.0, 2754.8, 3002.23, + 2751.16, 3002.93, 2747.64, 3004.07, 2744.29, 3005.65, 2741.16, + 3007.63, 2738.31, 3010.0, 2735.77, 3012.7, 2733.59, 3015.69, 2731.81, + 3018.94, 2730.44, 3022.38, 2729.52, 3025.97, 2729.06, 3029.65, + 2729.06, 3033.35, 2729.52, 3037.03, 2730.44, 3040.62, 2731.81, + 3044.06, 2733.59, 3047.31, 2735.77, 3050.3, 2738.31, 3053.0, 2741.16, + 3055.37, 2744.29, 3057.35, 2747.64, 3058.93, 2751.16, 3060.07, 2754.8, + 3060.77 + ] + ], + "area": 2732.0, + "bbox": [2729.06, 3002.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 342, + "image_id": 4, + "category_id": 3, + "segmentation": [[2020.5, 3200.0, 1987.0, 3259.0, 2054.0, 3259.0]], + "area": 1985.0, + "bbox": [1987.0, 3200.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 343, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 3152.0, 505.0, 3205.0, 505.0, 3205.0, 568.0, 3152.0, 568.0, 3152.0, + 505.0 + ] + ], + "area": 3339.0, + "bbox": [3152.0, 505.0, 53.0, 63.0], + "iscrowd": 0 + }, + { + "id": 344, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 2399.0, 3031.5, 2398.71, 3036.07, 2397.85, 3040.58, 2396.44, 3044.94, + 2394.49, 3049.08, 2392.03, 3052.95, 2389.11, 3056.49, 2385.77, + 3059.62, 2382.06, 3062.32, 2378.04, 3064.53, 2373.78, 3066.21, + 2369.34, 3067.35, 2364.79, 3067.93, 2360.21, 3067.93, 2355.66, + 3067.35, 2351.22, 3066.21, 2346.96, 3064.53, 2342.94, 3062.32, + 2339.23, 3059.62, 2335.89, 3056.49, 2332.97, 3052.95, 2330.51, + 3049.08, 2328.56, 3044.94, 2327.15, 3040.58, 2326.29, 3036.07, 2326.0, + 3031.5, 2326.29, 3026.93, 2327.15, 3022.42, 2328.56, 3018.06, 2330.51, + 3013.92, 2332.97, 3010.05, 2335.89, 3006.51, 2339.23, 3003.38, + 2342.94, 3000.68, 2346.96, 2998.47, 2351.22, 2996.79, 2355.66, + 2995.65, 2360.21, 2995.07, 2364.79, 2995.07, 2369.34, 2995.65, + 2373.78, 2996.79, 2378.04, 2998.47, 2382.06, 3000.68, 2385.77, + 3003.38, 2389.11, 3006.51, 2392.03, 3010.05, 2394.49, 3013.92, + 2396.44, 3018.06, 2397.85, 3022.42, 2398.71, 3026.93 + ] + ], + "area": 4187.0, + "bbox": [2326.0, 2995.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 345, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 2629.0, 3199.0, 2686.0, 3199.0, 2686.0, 3254.0, 2629.0, 3254.0, + 2629.0, 3199.0 + ] + ], + "area": 3135.0, + "bbox": [2629.0, 3199.0, 57.0, 55.0], + "iscrowd": 0 + }, + { + "id": 346, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 1366.5, 2230.0, 1370.07, 2229.78, 1373.59, 2229.1, 1376.99, 2228.0, + 1380.23, 2226.47, 1383.25, 2224.56, 1386.01, 2222.28, 1388.46, + 2219.67, 1390.56, 2216.77, 1392.29, 2213.63, 1393.61, 2210.31, 1394.5, + 2206.84, 1394.94, 2203.29, 1394.94, 2199.71, 1394.5, 2196.16, 1393.61, + 2192.69, 1392.29, 2189.37, 1390.56, 2186.23, 1388.46, 2183.33, + 1386.01, 2180.72, 1383.25, 2178.44, 1380.23, 2176.53, 1376.99, 2175.0, + 1373.59, 2173.9, 1370.07, 2173.22, 1366.5, 2173.0, 1362.93, 2173.22, + 1359.41, 2173.9, 1356.01, 2175.0, 1352.77, 2176.53, 1349.75, 2178.44, + 1346.99, 2180.72, 1344.54, 2183.33, 1342.44, 2186.23, 1340.71, + 2189.37, 1339.39, 2192.69, 1338.5, 2196.16, 1338.06, 2199.71, 1338.06, + 2203.29, 1338.5, 2206.84, 1339.39, 2210.31, 1340.71, 2213.63, 1342.44, + 2216.77, 1344.54, 2219.67, 1346.99, 2222.28, 1349.75, 2224.56, + 1352.77, 2226.47, 1356.01, 2228.0, 1359.41, 2229.1, 1362.93, 2229.78 + ] + ], + "area": 2547.0, + "bbox": [1338.06, 2173.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 347, + "image_id": 4, + "category_id": 2, + "segmentation": [ + [ + 350.0, 3429.5, 349.63, 3435.33, 348.54, 3441.06, 346.73, 3446.62, + 344.25, 3451.9, 341.12, 3456.83, 337.4, 3461.33, 333.14, 3465.33, + 328.42, 3468.76, 323.3, 3471.57, 317.87, 3473.72, 312.21, 3475.18, + 306.42, 3475.91, 300.58, 3475.91, 294.79, 3475.18, 289.13, 3473.72, + 283.7, 3471.57, 278.58, 3468.76, 273.86, 3465.33, 269.6, 3461.33, + 265.88, 3456.83, 262.75, 3451.9, 260.27, 3446.62, 258.46, 3441.06, + 257.37, 3435.33, 257.0, 3429.5, 257.37, 3423.67, 258.46, 3417.94, + 260.27, 3412.38, 262.75, 3407.1, 265.88, 3402.17, 269.6, 3397.67, + 273.86, 3393.67, 278.58, 3390.24, 283.7, 3387.43, 289.13, 3385.28, + 294.79, 3383.82, 300.58, 3383.09, 306.42, 3383.09, 312.21, 3383.82, + 317.87, 3385.28, 323.3, 3387.43, 328.42, 3390.24, 333.14, 3393.67, + 337.4, 3397.67, 341.12, 3402.17, 344.25, 3407.1, 346.73, 3412.38, + 348.54, 3417.94, 349.63, 3423.67 + ] + ], + "area": 6782.0, + "bbox": [257.0, 3383.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 348, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 885.0, 1051.0, 945.0, 1051.0, 945.0, 1114.0, 885.0, 1114.0, 885.0, + 1051.0 + ] + ], + "area": 3780.0, + "bbox": [885.0, 1051.0, 60.0, 63.0], + "iscrowd": 0 + }, + { + "id": 349, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 1642.0, 2564.0, 1720.0, 2564.0, 1720.0, 2654.0, 1642.0, 2654.0, + 1642.0, 2564.0 + ] + ], + "area": 7020.0, + "bbox": [1642.0, 2564.0, 78.0, 90.0], + "iscrowd": 0 + }, + { + "id": 350, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [1427.0, 7.0, 1500.0, 7.0, 1500.0, 102.0, 1427.0, 102.0, 1427.0, 7.0] + ], + "area": 6935.0, + "bbox": [1427.0, 7.0, 73.0, 95.0], + "iscrowd": 0 + }, + { + "id": 351, + "image_id": 4, + "category_id": 3, + "segmentation": [[1654.5, 1947.0, 1617.0, 2013.0, 1692.0, 2013.0]], + "area": 2485.0, + "bbox": [1617.0, 1947.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 352, + "image_id": 4, + "category_id": 3, + "segmentation": [[1434.0, 3365.0, 1395.0, 3433.0, 1473.0, 3433.0]], + "area": 2660.0, + "bbox": [1395.0, 3365.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 353, + "image_id": 4, + "category_id": 3, + "segmentation": [[3315.5, 1897.0, 3266.0, 1983.0, 3365.0, 1983.0]], + "area": 4268.0, + "bbox": [3266.0, 1897.0, 99.0, 86.0], + "iscrowd": 0 + }, + { + "id": 354, + "image_id": 5, + "category_id": 3, + "segmentation": [[1848.5, 194.0, 1801.0, 277.0, 1896.0, 277.0]], + "area": 3952.0, + "bbox": [1801.0, 194.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 355, + "image_id": 5, + "category_id": 3, + "segmentation": [[3312.0, 12.0, 3273.0, 80.0, 3351.0, 80.0]], + "area": 2660.0, + "bbox": [3273.0, 12.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 356, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1723.0, 2602.5, 1722.73, 2606.82, 1721.92, 2611.08, 1720.58, 2615.2, + 1718.73, 2619.12, 1716.41, 2622.78, 1713.65, 2626.12, 1710.49, + 2629.08, 1706.99, 2631.63, 1703.19, 2633.72, 1699.16, 2635.31, + 1694.96, 2636.39, 1690.67, 2636.93, 1686.33, 2636.93, 1682.04, + 2636.39, 1677.84, 2635.31, 1673.81, 2633.72, 1670.01, 2631.63, + 1666.51, 2629.08, 1663.35, 2626.12, 1660.59, 2622.78, 1658.27, + 2619.12, 1656.42, 2615.2, 1655.08, 2611.08, 1654.27, 2606.82, 1654.0, + 2602.5, 1654.27, 2598.18, 1655.08, 2593.92, 1656.42, 2589.8, 1658.27, + 2585.88, 1660.59, 2582.22, 1663.35, 2578.88, 1666.51, 2575.92, + 1670.01, 2573.37, 1673.81, 2571.28, 1677.84, 2569.69, 1682.04, + 2568.61, 1686.33, 2568.07, 1690.67, 2568.07, 1694.96, 2568.61, + 1699.16, 2569.69, 1703.19, 2571.28, 1706.99, 2573.37, 1710.49, + 2575.92, 1713.65, 2578.88, 1716.41, 2582.22, 1718.73, 2585.88, + 1720.58, 2589.8, 1721.92, 2593.92, 1722.73, 2598.18 + ] + ], + "area": 3743.0, + "bbox": [1654.0, 2568.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 357, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2299.0, 1722.5, 2298.65, 1728.08, 2297.6, 1733.57, 2295.88, 1738.88, + 2293.5, 1743.94, 2290.5, 1748.66, 2286.94, 1752.96, 2282.87, 1756.79, + 2278.34, 1760.07, 2273.45, 1762.76, 2268.25, 1764.82, 2262.84, + 1766.21, 2257.29, 1766.91, 2251.71, 1766.91, 2246.16, 1766.21, + 2240.75, 1764.82, 2235.55, 1762.76, 2230.66, 1760.07, 2226.13, + 1756.79, 2222.06, 1752.96, 2218.5, 1748.66, 2215.5, 1743.94, 2213.12, + 1738.88, 2211.4, 1733.57, 2210.35, 1728.08, 2210.0, 1722.5, 2210.35, + 1716.92, 2211.4, 1711.43, 2213.12, 1706.12, 2215.5, 1701.06, 2218.5, + 1696.34, 2222.06, 1692.04, 2226.13, 1688.21, 2230.66, 1684.93, + 2235.55, 1682.24, 2240.75, 1680.18, 2246.16, 1678.79, 2251.71, + 1678.09, 2257.29, 1678.09, 2262.84, 1678.79, 2268.25, 1680.18, + 2273.45, 1682.24, 2278.34, 1684.93, 2282.87, 1688.21, 2286.94, + 1692.04, 2290.5, 1696.34, 2293.5, 1701.06, 2295.88, 1706.12, 2297.6, + 1711.43, 2298.65, 1716.92 + ] + ], + "area": 6208.0, + "bbox": [2210.0, 1678.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 358, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2448.0, 2978.5, 2447.62, 2984.58, 2446.48, 2990.56, 2444.59, 2996.35, + 2442.0, 3001.87, 2438.74, 3007.01, 2434.85, 3011.7, 2430.42, 3015.87, + 2425.49, 3019.45, 2420.15, 3022.38, 2414.49, 3024.63, 2408.59, + 3026.14, 2402.55, 3026.9, 2396.45, 3026.9, 2390.41, 3026.14, 2384.51, + 3024.63, 2378.85, 3022.38, 2373.51, 3019.45, 2368.58, 3015.87, + 2364.15, 3011.7, 2360.26, 3007.01, 2357.0, 3001.87, 2354.41, 2996.35, + 2352.52, 2990.56, 2351.38, 2984.58, 2351.0, 2978.5, 2351.38, 2972.42, + 2352.52, 2966.44, 2354.41, 2960.65, 2357.0, 2955.13, 2360.26, 2949.99, + 2364.15, 2945.3, 2368.58, 2941.13, 2373.51, 2937.55, 2378.85, 2934.62, + 2384.51, 2932.37, 2390.41, 2930.86, 2396.45, 2930.1, 2402.55, 2930.1, + 2408.59, 2930.86, 2414.49, 2932.37, 2420.15, 2934.62, 2425.49, + 2937.55, 2430.42, 2941.13, 2434.85, 2945.3, 2438.74, 2949.99, 2442.0, + 2955.13, 2444.59, 2960.65, 2446.48, 2966.44, 2447.62, 2972.42 + ] + ], + "area": 7381.0, + "bbox": [2351.0, 2930.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 359, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3262.0, 943.0, 3339.0, 943.0, 3339.0, 995.0, 3262.0, 995.0, 3262.0, + 943.0 + ] + ], + "area": 4004.0, + "bbox": [3262.0, 943.0, 77.0, 52.0], + "iscrowd": 0 + }, + { + "id": 360, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 164.0, 1055.0, 251.0, 1055.0, 251.0, 1118.0, 164.0, 1118.0, 164.0, + 1055.0 + ] + ], + "area": 5481.0, + "bbox": [164.0, 1055.0, 87.0, 63.0], + "iscrowd": 0 + }, + { + "id": 361, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2668.0, 3151.0, 2749.0, 3151.0, 2749.0, 3222.0, 2668.0, 3222.0, + 2668.0, 3151.0 + ] + ], + "area": 5751.0, + "bbox": [2668.0, 3151.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 362, + "image_id": 5, + "category_id": 3, + "segmentation": [[2514.0, 2830.0, 2489.0, 2874.0, 2539.0, 2874.0]], + "area": 1105.0, + "bbox": [2489.0, 2830.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 363, + "image_id": 5, + "category_id": 3, + "segmentation": [[1907.5, 2785.0, 1871.0, 2849.0, 1944.0, 2849.0]], + "area": 2341.0, + "bbox": [1871.0, 2785.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 364, + "image_id": 5, + "category_id": 3, + "segmentation": [[1057.0, 1880.0, 1019.0, 1946.0, 1095.0, 1946.0]], + "area": 2514.0, + "bbox": [1019.0, 1880.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 365, + "image_id": 5, + "category_id": 3, + "segmentation": [[2603.5, 1714.0, 2570.0, 1773.0, 2637.0, 1773.0]], + "area": 1985.0, + "bbox": [2570.0, 1714.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 366, + "image_id": 5, + "category_id": 3, + "segmentation": [[2740.0, 1776.0, 2713.0, 1823.0, 2767.0, 1823.0]], + "area": 1274.0, + "bbox": [2713.0, 1776.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 367, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1550.0, 3392.0, 1610.0, 3392.0, 1610.0, 3460.0, 1550.0, 3460.0, + 1550.0, 3392.0 + ] + ], + "area": 4080.0, + "bbox": [1550.0, 3392.0, 60.0, 68.0], + "iscrowd": 0 + }, + { + "id": 368, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1174.0, 411.0, 1232.0, 411.0, 1232.0, 476.0, 1174.0, 476.0, 1174.0, + 411.0 + ] + ], + "area": 3770.0, + "bbox": [1174.0, 411.0, 58.0, 65.0], + "iscrowd": 0 + }, + { + "id": 369, + "image_id": 5, + "category_id": 3, + "segmentation": [[1447.5, 2219.0, 1418.0, 2271.0, 1477.0, 2271.0]], + "area": 1542.0, + "bbox": [1418.0, 2219.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 370, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [995.0, 54.0, 1078.0, 54.0, 1078.0, 145.0, 995.0, 145.0, 995.0, 54.0] + ], + "area": 7553.0, + "bbox": [995.0, 54.0, 83.0, 91.0], + "iscrowd": 0 + }, + { + "id": 371, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1467.0, 1953.0, 1559.0, 1953.0, 1559.0, 2014.0, 1467.0, 2014.0, + 1467.0, 1953.0 + ] + ], + "area": 5612.0, + "bbox": [1467.0, 1953.0, 92.0, 61.0], + "iscrowd": 0 + }, + { + "id": 372, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2480.0, 2988.0, 2538.0, 2988.0, 2538.0, 3079.0, 2480.0, 3079.0, + 2480.0, 2988.0 + ] + ], + "area": 5278.0, + "bbox": [2480.0, 2988.0, 58.0, 91.0], + "iscrowd": 0 + }, + { + "id": 373, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2492.0, 298.0, 2561.0, 298.0, 2561.0, 359.0, 2492.0, 359.0, 2492.0, + 298.0 + ] + ], + "area": 4209.0, + "bbox": [2492.0, 298.0, 69.0, 61.0], + "iscrowd": 0 + }, + { + "id": 374, + "image_id": 5, + "category_id": 3, + "segmentation": [[961.0, 1979.0, 924.0, 2044.0, 998.0, 2044.0]], + "area": 2412.0, + "bbox": [924.0, 1979.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 375, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 627.0, 2075.0, 684.0, 2075.0, 684.0, 2134.0, 627.0, 2134.0, 627.0, + 2075.0 + ] + ], + "area": 3363.0, + "bbox": [627.0, 2075.0, 57.0, 59.0], + "iscrowd": 0 + }, + { + "id": 376, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2205.5, 2102.0, 2209.32, 2101.76, 2213.09, 2101.04, 2216.73, 2099.86, + 2220.19, 2098.23, 2223.43, 2096.18, 2226.38, 2093.73, 2229.0, 2090.94, + 2231.25, 2087.84, 2233.1, 2084.49, 2234.51, 2080.93, 2235.46, 2077.22, + 2235.94, 2073.42, 2235.94, 2069.58, 2235.46, 2065.78, 2234.51, + 2062.07, 2233.1, 2058.51, 2231.25, 2055.16, 2229.0, 2052.06, 2226.38, + 2049.27, 2223.43, 2046.82, 2220.19, 2044.77, 2216.73, 2043.14, + 2213.09, 2041.96, 2209.32, 2041.24, 2205.5, 2041.0, 2201.68, 2041.24, + 2197.91, 2041.96, 2194.27, 2043.14, 2190.81, 2044.77, 2187.57, + 2046.82, 2184.62, 2049.27, 2182.0, 2052.06, 2179.75, 2055.16, 2177.9, + 2058.51, 2176.49, 2062.07, 2175.54, 2065.78, 2175.06, 2069.58, + 2175.06, 2073.42, 2175.54, 2077.22, 2176.49, 2080.93, 2177.9, 2084.49, + 2179.75, 2087.84, 2182.0, 2090.94, 2184.62, 2093.73, 2187.57, 2096.18, + 2190.81, 2098.23, 2194.27, 2099.86, 2197.91, 2101.04, 2201.68, 2101.76 + ] + ], + "area": 2916.0, + "bbox": [2175.06, 2041.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 377, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 804.0, 2262.0, 871.0, 2262.0, 871.0, 2319.0, 804.0, 2319.0, 804.0, + 2262.0 + ] + ], + "area": 3819.0, + "bbox": [804.0, 2262.0, 67.0, 57.0], + "iscrowd": 0 + }, + { + "id": 378, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2793.0, 570.5, 2792.63, 576.33, 2791.54, 582.06, 2789.73, 587.62, + 2787.25, 592.9, 2784.12, 597.83, 2780.4, 602.33, 2776.14, 606.33, + 2771.42, 609.76, 2766.3, 612.57, 2760.87, 614.72, 2755.21, 616.18, + 2749.42, 616.91, 2743.58, 616.91, 2737.79, 616.18, 2732.13, 614.72, + 2726.7, 612.57, 2721.58, 609.76, 2716.86, 606.33, 2712.6, 602.33, + 2708.88, 597.83, 2705.75, 592.9, 2703.27, 587.62, 2701.46, 582.06, + 2700.37, 576.33, 2700.0, 570.5, 2700.37, 564.67, 2701.46, 558.94, + 2703.27, 553.38, 2705.75, 548.1, 2708.88, 543.17, 2712.6, 538.67, + 2716.86, 534.67, 2721.58, 531.24, 2726.7, 528.43, 2732.13, 526.28, + 2737.79, 524.82, 2743.58, 524.09, 2749.42, 524.09, 2755.21, 524.82, + 2760.87, 526.28, 2766.3, 528.43, 2771.42, 531.24, 2776.14, 534.67, + 2780.4, 538.67, 2784.12, 543.17, 2787.25, 548.1, 2789.73, 553.38, + 2791.54, 558.94, 2792.63, 564.67 + ] + ], + "area": 6782.0, + "bbox": [2700.0, 524.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 379, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 468.0, 2552.0, 567.0, 2552.0, 567.0, 2629.0, 468.0, 2629.0, 468.0, + 2552.0 + ] + ], + "area": 7623.0, + "bbox": [468.0, 2552.0, 99.0, 77.0], + "iscrowd": 0 + }, + { + "id": 380, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2682.0, 1179.0, 2758.0, 1179.0, 2758.0, 1245.0, 2682.0, 1245.0, + 2682.0, 1179.0 + ] + ], + "area": 5016.0, + "bbox": [2682.0, 1179.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 381, + "image_id": 5, + "category_id": 3, + "segmentation": [[787.0, 2565.0, 749.0, 2631.0, 825.0, 2631.0]], + "area": 2514.0, + "bbox": [749.0, 2565.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 382, + "image_id": 5, + "category_id": 3, + "segmentation": [[1979.0, 2117.0, 1950.0, 2168.0, 2008.0, 2168.0]], + "area": 1484.0, + "bbox": [1950.0, 2117.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 383, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2572.0, 3412.0, 2652.0, 3412.0, 2652.0, 3486.0, 2572.0, 3486.0, + 2572.0, 3412.0 + ] + ], + "area": 5920.0, + "bbox": [2572.0, 3412.0, 80.0, 74.0], + "iscrowd": 0 + }, + { + "id": 384, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [180.0, 29.0, 272.0, 29.0, 272.0, 82.0, 180.0, 82.0, 180.0, 29.0] + ], + "area": 4876.0, + "bbox": [180.0, 29.0, 92.0, 53.0], + "iscrowd": 0 + }, + { + "id": 385, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1097.0, 1281.0, 1167.0, 1281.0, 1167.0, 1340.0, 1097.0, 1340.0, + 1097.0, 1281.0 + ] + ], + "area": 4130.0, + "bbox": [1097.0, 1281.0, 70.0, 59.0], + "iscrowd": 0 + }, + { + "id": 386, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1773.5, 634.0, 1779.08, 633.65, 1784.57, 632.6, 1789.88, 630.88, + 1794.94, 628.5, 1799.66, 625.5, 1803.96, 621.94, 1807.79, 617.87, + 1811.07, 613.34, 1813.76, 608.45, 1815.82, 603.25, 1817.21, 597.84, + 1817.91, 592.29, 1817.91, 586.71, 1817.21, 581.16, 1815.82, 575.75, + 1813.76, 570.55, 1811.07, 565.66, 1807.79, 561.13, 1803.96, 557.06, + 1799.66, 553.5, 1794.94, 550.5, 1789.88, 548.12, 1784.57, 546.4, + 1779.08, 545.35, 1773.5, 545.0, 1767.92, 545.35, 1762.43, 546.4, + 1757.12, 548.12, 1752.06, 550.5, 1747.34, 553.5, 1743.04, 557.06, + 1739.21, 561.13, 1735.93, 565.66, 1733.24, 570.55, 1731.18, 575.75, + 1729.79, 581.16, 1729.09, 586.71, 1729.09, 592.29, 1729.79, 597.84, + 1731.18, 603.25, 1733.24, 608.45, 1735.93, 613.34, 1739.21, 617.87, + 1743.04, 621.94, 1747.34, 625.5, 1752.06, 628.5, 1757.12, 630.88, + 1762.43, 632.6, 1767.92, 633.65 + ] + ], + "area": 6209.0, + "bbox": [1729.09, 545.0, 88.82, 89.0], + "iscrowd": 0 + }, + { + "id": 387, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1530.0, 1005.0, 1620.0, 1005.0, 1620.0, 1075.0, 1530.0, 1075.0, + 1530.0, 1005.0 + ] + ], + "area": 6300.0, + "bbox": [1530.0, 1005.0, 90.0, 70.0], + "iscrowd": 0 + }, + { + "id": 388, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2176.5, 137.0, 2180.2, 136.77, 2183.84, 136.07, 2187.36, 134.93, + 2190.71, 133.35, 2193.84, 131.37, 2196.69, 129.0, 2199.23, 126.3, + 2201.41, 123.31, 2203.19, 120.06, 2204.56, 116.62, 2205.48, 113.03, + 2205.94, 109.35, 2205.94, 105.65, 2205.48, 101.97, 2204.56, 98.38, + 2203.19, 94.94, 2201.41, 91.69, 2199.23, 88.7, 2196.69, 86.0, 2193.84, + 83.63, 2190.71, 81.65, 2187.36, 80.07, 2183.84, 78.93, 2180.2, 78.23, + 2176.5, 78.0, 2172.8, 78.23, 2169.16, 78.93, 2165.64, 80.07, 2162.29, + 81.65, 2159.16, 83.63, 2156.31, 86.0, 2153.77, 88.7, 2151.59, 91.69, + 2149.81, 94.94, 2148.44, 98.38, 2147.52, 101.97, 2147.06, 105.65, + 2147.06, 109.35, 2147.52, 113.03, 2148.44, 116.62, 2149.81, 120.06, + 2151.59, 123.31, 2153.77, 126.3, 2156.31, 129.0, 2159.16, 131.37, + 2162.29, 133.35, 2165.64, 134.93, 2169.16, 136.07, 2172.8, 136.77 + ] + ], + "area": 2732.0, + "bbox": [2147.06, 78.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 389, + "image_id": 5, + "category_id": 3, + "segmentation": [[2025.0, 3074.0, 1985.0, 3144.0, 2065.0, 3144.0]], + "area": 2800.0, + "bbox": [1985.0, 3074.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 390, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 444.5, 2849.0, 449.7, 2848.67, 454.82, 2847.7, 459.78, 2846.09, + 464.49, 2843.87, 468.89, 2841.07, 472.91, 2837.75, 476.48, 2833.95, + 479.54, 2829.74, 482.05, 2825.17, 483.97, 2820.32, 485.26, 2815.28, + 485.92, 2810.11, 485.92, 2804.89, 485.26, 2799.72, 483.97, 2794.68, + 482.05, 2789.83, 479.54, 2785.26, 476.48, 2781.05, 472.91, 2777.25, + 468.89, 2773.93, 464.49, 2771.13, 459.78, 2768.91, 454.82, 2767.3, + 449.7, 2766.33, 444.5, 2766.0, 439.3, 2766.33, 434.18, 2767.3, 429.22, + 2768.91, 424.51, 2771.13, 420.11, 2773.93, 416.09, 2777.25, 412.52, + 2781.05, 409.46, 2785.26, 406.95, 2789.83, 405.03, 2794.68, 403.74, + 2799.72, 403.08, 2804.89, 403.08, 2810.11, 403.74, 2815.28, 405.03, + 2820.32, 406.95, 2825.17, 409.46, 2829.74, 412.52, 2833.95, 416.09, + 2837.75, 420.11, 2841.07, 424.51, 2843.87, 429.22, 2846.09, 434.18, + 2847.7, 439.3, 2848.67 + ] + ], + "area": 5392.0, + "bbox": [403.08, 2766.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 391, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1091.0, 2434.0, 1166.0, 2434.0, 1166.0, 2489.0, 1091.0, 2489.0, + 1091.0, 2434.0 + ] + ], + "area": 4125.0, + "bbox": [1091.0, 2434.0, 75.0, 55.0], + "iscrowd": 0 + }, + { + "id": 392, + "image_id": 5, + "category_id": 3, + "segmentation": [[1790.0, 0.0, 1765.0, 43.0, 1815.0, 43.0]], + "area": 1080.0, + "bbox": [1765.0, 0.0, 50.0, 43.0], + "iscrowd": 0 + }, + { + "id": 393, + "image_id": 5, + "category_id": 3, + "segmentation": [[307.5, 2162.0, 275.0, 2219.0, 340.0, 2219.0]], + "area": 1857.0, + "bbox": [275.0, 2162.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 394, + "image_id": 5, + "category_id": 3, + "segmentation": [[3175.0, 896.0, 3148.0, 943.0, 3202.0, 943.0]], + "area": 1274.0, + "bbox": [3148.0, 896.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 395, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 485.5, 1724.0, 489.45, 1723.75, 493.33, 1723.01, 497.1, 1721.79, + 500.68, 1720.1, 504.02, 1717.98, 507.06, 1715.46, 509.77, 1712.58, + 512.1, 1709.38, 514.0, 1705.91, 515.46, 1702.23, 516.44, 1698.4, + 516.94, 1694.48, 516.94, 1690.52, 516.44, 1686.6, 515.46, 1682.77, + 514.0, 1679.09, 512.1, 1675.62, 509.77, 1672.42, 507.06, 1669.54, + 504.02, 1667.02, 500.68, 1664.9, 497.1, 1663.21, 493.33, 1661.99, + 489.45, 1661.25, 485.5, 1661.0, 481.55, 1661.25, 477.67, 1661.99, + 473.9, 1663.21, 470.32, 1664.9, 466.98, 1667.02, 463.94, 1669.54, + 461.23, 1672.42, 458.9, 1675.62, 457.0, 1679.09, 455.54, 1682.77, + 454.56, 1686.6, 454.06, 1690.52, 454.06, 1694.48, 454.56, 1698.4, + 455.54, 1702.23, 457.0, 1705.91, 458.9, 1709.38, 461.23, 1712.58, + 463.94, 1715.46, 466.98, 1717.98, 470.32, 1720.1, 473.9, 1721.79, + 477.67, 1723.01, 481.55, 1723.75 + ] + ], + "area": 3121.0, + "bbox": [454.06, 1661.0, 62.88, 63.0], + "iscrowd": 0 + }, + { + "id": 396, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 857.0, 3221.0, 941.0, 3221.0, 941.0, 3284.0, 857.0, 3284.0, 857.0, + 3221.0 + ] + ], + "area": 5292.0, + "bbox": [857.0, 3221.0, 84.0, 63.0], + "iscrowd": 0 + }, + { + "id": 397, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2135.0, 2627.0, 2187.0, 2627.0, 2187.0, 2681.0, 2135.0, 2681.0, + 2135.0, 2627.0 + ] + ], + "area": 2808.0, + "bbox": [2135.0, 2627.0, 52.0, 54.0], + "iscrowd": 0 + }, + { + "id": 398, + "image_id": 5, + "category_id": 3, + "segmentation": [[789.0, 627.0, 762.0, 674.0, 816.0, 674.0]], + "area": 1274.0, + "bbox": [762.0, 627.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 399, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3239.0, 2872.0, 3302.0, 2872.0, 3302.0, 2941.0, 3239.0, 2941.0, + 3239.0, 2872.0 + ] + ], + "area": 4347.0, + "bbox": [3239.0, 2872.0, 63.0, 69.0], + "iscrowd": 0 + }, + { + "id": 400, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1632.0, 235.0, 1701.0, 235.0, 1701.0, 314.0, 1632.0, 314.0, 1632.0, + 235.0 + ] + ], + "area": 5451.0, + "bbox": [1632.0, 235.0, 69.0, 79.0], + "iscrowd": 0 + }, + { + "id": 401, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2577.0, 315.0, 2667.0, 315.0, 2667.0, 407.0, 2577.0, 407.0, 2577.0, + 315.0 + ] + ], + "area": 8280.0, + "bbox": [2577.0, 315.0, 90.0, 92.0], + "iscrowd": 0 + }, + { + "id": 402, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2308.0, 2054.0, 2384.0, 2054.0, 2384.0, 2120.0, 2308.0, 2120.0, + 2308.0, 2054.0 + ] + ], + "area": 5016.0, + "bbox": [2308.0, 2054.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 403, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [82.0, 1263.0, 151.0, 1263.0, 151.0, 1348.0, 82.0, 1348.0, 82.0, 1263.0] + ], + "area": 5865.0, + "bbox": [82.0, 1263.0, 69.0, 85.0], + "iscrowd": 0 + }, + { + "id": 404, + "image_id": 5, + "category_id": 3, + "segmentation": [[533.0, 887.0, 502.0, 941.0, 564.0, 941.0]], + "area": 1680.0, + "bbox": [502.0, 887.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 405, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2444.0, 3391.0, 2507.0, 3391.0, 2507.0, 3468.0, 2444.0, 3468.0, + 2444.0, 3391.0 + ] + ], + "area": 4851.0, + "bbox": [2444.0, 3391.0, 63.0, 77.0], + "iscrowd": 0 + }, + { + "id": 406, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2480.0, 153.0, 2531.0, 153.0, 2531.0, 206.0, 2480.0, 206.0, 2480.0, + 153.0 + ] + ], + "area": 2703.0, + "bbox": [2480.0, 153.0, 51.0, 53.0], + "iscrowd": 0 + }, + { + "id": 407, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3081.0, 1131.0, 3164.0, 1131.0, 3164.0, 1206.0, 3081.0, 1206.0, + 3081.0, 1131.0 + ] + ], + "area": 6225.0, + "bbox": [3081.0, 1131.0, 83.0, 75.0], + "iscrowd": 0 + }, + { + "id": 408, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 985.0, 2240.5, 984.76, 2244.32, 984.04, 2248.09, 982.86, 2251.73, + 981.23, 2255.19, 979.18, 2258.43, 976.73, 2261.38, 973.94, 2264.0, + 970.84, 2266.25, 967.49, 2268.1, 963.93, 2269.51, 960.22, 2270.46, + 956.42, 2270.94, 952.58, 2270.94, 948.78, 2270.46, 945.07, 2269.51, + 941.51, 2268.1, 938.16, 2266.25, 935.06, 2264.0, 932.27, 2261.38, + 929.82, 2258.43, 927.77, 2255.19, 926.14, 2251.73, 924.96, 2248.09, + 924.24, 2244.32, 924.0, 2240.5, 924.24, 2236.68, 924.96, 2232.91, + 926.14, 2229.27, 927.77, 2225.81, 929.82, 2222.57, 932.27, 2219.62, + 935.06, 2217.0, 938.16, 2214.75, 941.51, 2212.9, 945.07, 2211.49, + 948.78, 2210.54, 952.58, 2210.06, 956.42, 2210.06, 960.22, 2210.54, + 963.93, 2211.49, 967.49, 2212.9, 970.84, 2214.75, 973.94, 2217.0, + 976.73, 2219.62, 979.18, 2222.57, 981.23, 2225.81, 982.86, 2229.27, + 984.04, 2232.91, 984.76, 2236.68 + ] + ], + "area": 2915.0, + "bbox": [924.0, 2210.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 409, + "image_id": 5, + "category_id": 3, + "segmentation": [[967.5, 1659.0, 933.0, 1719.0, 1002.0, 1719.0]], + "area": 2078.0, + "bbox": [933.0, 1659.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 410, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2074.0, 2867.5, 2073.67, 2872.7, 2072.7, 2877.82, 2071.09, 2882.78, + 2068.87, 2887.49, 2066.07, 2891.89, 2062.75, 2895.91, 2058.95, + 2899.48, 2054.74, 2902.54, 2050.17, 2905.05, 2045.32, 2906.97, + 2040.28, 2908.26, 2035.11, 2908.92, 2029.89, 2908.92, 2024.72, + 2908.26, 2019.68, 2906.97, 2014.83, 2905.05, 2010.26, 2902.54, + 2006.05, 2899.48, 2002.25, 2895.91, 1998.93, 2891.89, 1996.13, + 2887.49, 1993.91, 2882.78, 1992.3, 2877.82, 1991.33, 2872.7, 1991.0, + 2867.5, 1991.33, 2862.3, 1992.3, 2857.18, 1993.91, 2852.22, 1996.13, + 2847.51, 1998.93, 2843.11, 2002.25, 2839.09, 2006.05, 2835.52, + 2010.26, 2832.46, 2014.83, 2829.95, 2019.68, 2828.03, 2024.72, + 2826.74, 2029.89, 2826.08, 2035.11, 2826.08, 2040.28, 2826.74, + 2045.32, 2828.03, 2050.17, 2829.95, 2054.74, 2832.46, 2058.95, + 2835.52, 2062.75, 2839.09, 2066.07, 2843.11, 2068.87, 2847.51, + 2071.09, 2852.22, 2072.7, 2857.18, 2073.67, 2862.3 + ] + ], + "area": 5394.0, + "bbox": [1991.0, 2826.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 411, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 386.0, 2608.5, 385.7, 2613.2, 384.82, 2617.83, 383.37, 2622.3, 381.36, + 2626.57, 378.84, 2630.54, 375.84, 2634.17, 372.4, 2637.39, 368.59, + 2640.16, 364.47, 2642.43, 360.09, 2644.16, 355.53, 2645.34, 350.85, + 2645.93, 346.15, 2645.93, 341.47, 2645.34, 336.91, 2644.16, 332.53, + 2642.43, 328.41, 2640.16, 324.6, 2637.39, 321.16, 2634.17, 318.16, + 2630.54, 315.64, 2626.57, 313.63, 2622.3, 312.18, 2617.83, 311.3, + 2613.2, 311.0, 2608.5, 311.3, 2603.8, 312.18, 2599.17, 313.63, 2594.7, + 315.64, 2590.43, 318.16, 2586.46, 321.16, 2582.83, 324.6, 2579.61, + 328.41, 2576.84, 332.53, 2574.57, 336.91, 2572.84, 341.47, 2571.66, + 346.15, 2571.07, 350.85, 2571.07, 355.53, 2571.66, 360.09, 2572.84, + 364.47, 2574.57, 368.59, 2576.84, 372.4, 2579.61, 375.84, 2582.83, + 378.84, 2586.46, 381.36, 2590.43, 383.37, 2594.7, 384.82, 2599.17, + 385.7, 2603.8 + ] + ], + "area": 4410.0, + "bbox": [311.0, 2571.07, 75.0, 74.86], + "iscrowd": 0 + }, + { + "id": 412, + "image_id": 5, + "category_id": 3, + "segmentation": [[1325.0, 2477.0, 1282.0, 2552.0, 1368.0, 2552.0]], + "area": 3234.0, + "bbox": [1282.0, 2477.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 413, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 735.0, 1942.0, 785.0, 1942.0, 785.0, 2004.0, 735.0, 2004.0, 735.0, + 1942.0 + ] + ], + "area": 3100.0, + "bbox": [735.0, 1942.0, 50.0, 62.0], + "iscrowd": 0 + }, + { + "id": 414, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1349.0, 932.0, 1402.0, 932.0, 1402.0, 1016.0, 1349.0, 1016.0, 1349.0, + 932.0 + ] + ], + "area": 4452.0, + "bbox": [1349.0, 932.0, 53.0, 84.0], + "iscrowd": 0 + }, + { + "id": 415, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1188.0, 1477.5, 1187.78, 1480.95, 1187.14, 1484.34, 1186.07, 1487.62, + 1184.6, 1490.75, 1182.75, 1493.66, 1180.55, 1496.33, 1178.03, 1498.69, + 1175.24, 1500.72, 1172.21, 1502.38, 1169.0, 1503.65, 1165.65, 1504.51, + 1162.23, 1504.95, 1158.77, 1504.95, 1155.35, 1504.51, 1152.0, 1503.65, + 1148.79, 1502.38, 1145.76, 1500.72, 1142.97, 1498.69, 1140.45, + 1496.33, 1138.25, 1493.66, 1136.4, 1490.75, 1134.93, 1487.62, 1133.86, + 1484.34, 1133.22, 1480.95, 1133.0, 1477.5, 1133.22, 1474.05, 1133.86, + 1470.66, 1134.93, 1467.38, 1136.4, 1464.25, 1138.25, 1461.34, 1140.45, + 1458.67, 1142.97, 1456.31, 1145.76, 1454.28, 1148.79, 1452.62, 1152.0, + 1451.35, 1155.35, 1450.49, 1158.77, 1450.05, 1162.23, 1450.05, + 1165.65, 1450.49, 1169.0, 1451.35, 1172.21, 1452.62, 1175.24, 1454.28, + 1178.03, 1456.31, 1180.55, 1458.67, 1182.75, 1461.34, 1184.6, 1464.25, + 1186.07, 1467.38, 1187.14, 1470.66, 1187.78, 1474.05 + ] + ], + "area": 2375.0, + "bbox": [1133.0, 1450.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 416, + "image_id": 5, + "category_id": 3, + "segmentation": [[2225.5, 2143.0, 2177.0, 2228.0, 2274.0, 2228.0]], + "area": 4129.0, + "bbox": [2177.0, 2143.0, 97.0, 85.0], + "iscrowd": 0 + }, + { + "id": 417, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3163.0, 240.0, 3244.0, 240.0, 3244.0, 311.0, 3163.0, 311.0, 3163.0, + 240.0 + ] + ], + "area": 5751.0, + "bbox": [3163.0, 240.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 418, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 170.0, 137.5, 169.78, 140.95, 169.14, 144.34, 168.07, 147.62, 166.6, + 150.75, 164.75, 153.66, 162.55, 156.33, 160.03, 158.69, 157.24, + 160.72, 154.21, 162.38, 151.0, 163.65, 147.65, 164.51, 144.23, 164.95, + 140.77, 164.95, 137.35, 164.51, 134.0, 163.65, 130.79, 162.38, 127.76, + 160.72, 124.97, 158.69, 122.45, 156.33, 120.25, 153.66, 118.4, 150.75, + 116.93, 147.62, 115.86, 144.34, 115.22, 140.95, 115.0, 137.5, 115.22, + 134.05, 115.86, 130.66, 116.93, 127.38, 118.4, 124.25, 120.25, 121.34, + 122.45, 118.67, 124.97, 116.31, 127.76, 114.28, 130.79, 112.62, 134.0, + 111.35, 137.35, 110.49, 140.77, 110.05, 144.23, 110.05, 147.65, + 110.49, 151.0, 111.35, 154.21, 112.62, 157.24, 114.28, 160.03, 116.31, + 162.55, 118.67, 164.75, 121.34, 166.6, 124.25, 168.07, 127.38, 169.14, + 130.66, 169.78, 134.05 + ] + ], + "area": 2375.0, + "bbox": [115.0, 110.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 419, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 671.5, 1252.0, 677.58, 1251.62, 683.56, 1250.48, 689.35, 1248.59, + 694.87, 1246.0, 700.01, 1242.74, 704.7, 1238.85, 708.87, 1234.42, + 712.45, 1229.49, 715.38, 1224.15, 717.63, 1218.49, 719.14, 1212.59, + 719.9, 1206.55, 719.9, 1200.45, 719.14, 1194.41, 717.63, 1188.51, + 715.38, 1182.85, 712.45, 1177.51, 708.87, 1172.58, 704.7, 1168.15, + 700.01, 1164.26, 694.87, 1161.0, 689.35, 1158.41, 683.56, 1156.52, + 677.58, 1155.38, 671.5, 1155.0, 665.42, 1155.38, 659.44, 1156.52, + 653.65, 1158.41, 648.13, 1161.0, 642.99, 1164.26, 638.3, 1168.15, + 634.13, 1172.58, 630.55, 1177.51, 627.62, 1182.85, 625.37, 1188.51, + 623.86, 1194.41, 623.1, 1200.45, 623.1, 1206.55, 623.86, 1212.59, + 625.37, 1218.49, 627.62, 1224.15, 630.55, 1229.49, 634.13, 1234.42, + 638.3, 1238.85, 642.99, 1242.74, 648.13, 1246.0, 653.65, 1248.59, + 659.44, 1250.48, 665.42, 1251.62 + ] + ], + "area": 7380.0, + "bbox": [623.1, 1155.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 420, + "image_id": 5, + "category_id": 3, + "segmentation": [[2617.0, 2300.0, 2582.0, 2361.0, 2652.0, 2361.0]], + "area": 2142.0, + "bbox": [2582.0, 2300.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 421, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [260.0, 512.0, 312.0, 512.0, 312.0, 605.0, 260.0, 605.0, 260.0, 512.0] + ], + "area": 4836.0, + "bbox": [260.0, 512.0, 52.0, 93.0], + "iscrowd": 0 + }, + { + "id": 422, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3124.0, 1219.0, 3188.0, 1219.0, 3188.0, 1302.0, 3124.0, 1302.0, + 3124.0, 1219.0 + ] + ], + "area": 5312.0, + "bbox": [3124.0, 1219.0, 64.0, 83.0], + "iscrowd": 0 + }, + { + "id": 423, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 149.0, 2869.0, 230.0, 2869.0, 230.0, 2956.0, 149.0, 2956.0, 149.0, + 2869.0 + ] + ], + "area": 7047.0, + "bbox": [149.0, 2869.0, 81.0, 87.0], + "iscrowd": 0 + }, + { + "id": 424, + "image_id": 5, + "category_id": 3, + "segmentation": [[836.5, 1274.0, 798.0, 1341.0, 875.0, 1341.0]], + "area": 2588.0, + "bbox": [798.0, 1274.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 425, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [1279.0, 29.0, 1375.0, 29.0, 1375.0, 99.0, 1279.0, 99.0, 1279.0, 29.0] + ], + "area": 6720.0, + "bbox": [1279.0, 29.0, 96.0, 70.0], + "iscrowd": 0 + }, + { + "id": 426, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1905.0, 959.0, 1992.0, 959.0, 1992.0, 1042.0, 1905.0, 1042.0, 1905.0, + 959.0 + ] + ], + "area": 7221.0, + "bbox": [1905.0, 959.0, 87.0, 83.0], + "iscrowd": 0 + }, + { + "id": 427, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2844.0, 3020.0, 2938.0, 3020.0, 2938.0, 3078.0, 2844.0, 3078.0, + 2844.0, 3020.0 + ] + ], + "area": 5452.0, + "bbox": [2844.0, 3020.0, 94.0, 58.0], + "iscrowd": 0 + }, + { + "id": 428, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1801.0, 1839.0, 1864.0, 1839.0, 1864.0, 1900.0, 1801.0, 1900.0, + 1801.0, 1839.0 + ] + ], + "area": 3843.0, + "bbox": [1801.0, 1839.0, 63.0, 61.0], + "iscrowd": 0 + }, + { + "id": 429, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 826.0, 2114.0, 922.0, 2114.0, 922.0, 2209.0, 826.0, 2209.0, 826.0, + 2114.0 + ] + ], + "area": 9120.0, + "bbox": [826.0, 2114.0, 96.0, 95.0], + "iscrowd": 0 + }, + { + "id": 430, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1006.0, 559.0, 1087.0, 559.0, 1087.0, 625.0, 1006.0, 625.0, 1006.0, + 559.0 + ] + ], + "area": 5346.0, + "bbox": [1006.0, 559.0, 81.0, 66.0], + "iscrowd": 0 + }, + { + "id": 431, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2521.0, 1561.5, 2520.63, 1567.45, 2519.51, 1573.31, 2517.66, 1578.99, + 2515.12, 1584.38, 2511.93, 1589.42, 2508.13, 1594.02, 2503.78, 1598.1, + 2498.95, 1601.61, 2493.72, 1604.48, 2488.18, 1606.68, 2482.4, 1608.16, + 2476.48, 1608.91, 2470.52, 1608.91, 2464.6, 1608.16, 2458.82, 1606.68, + 2453.28, 1604.48, 2448.05, 1601.61, 2443.22, 1598.1, 2438.87, 1594.02, + 2435.07, 1589.42, 2431.88, 1584.38, 2429.34, 1578.99, 2427.49, + 1573.31, 2426.37, 1567.45, 2426.0, 1561.5, 2426.37, 1555.55, 2427.49, + 1549.69, 2429.34, 1544.01, 2431.88, 1538.62, 2435.07, 1533.58, + 2438.87, 1528.98, 2443.22, 1524.9, 2448.05, 1521.39, 2453.28, 1518.52, + 2458.82, 1516.32, 2464.6, 1514.84, 2470.52, 1514.09, 2476.48, 1514.09, + 2482.4, 1514.84, 2488.18, 1516.32, 2493.72, 1518.52, 2498.95, 1521.39, + 2503.78, 1524.9, 2508.13, 1528.98, 2511.93, 1533.58, 2515.12, 1538.62, + 2517.66, 1544.01, 2519.51, 1549.69, 2520.63, 1555.55 + ] + ], + "area": 7083.0, + "bbox": [2426.0, 1514.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 432, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2185.0, 172.0, 2258.0, 172.0, 2258.0, 237.0, 2185.0, 237.0, 2185.0, + 172.0 + ] + ], + "area": 4745.0, + "bbox": [2185.0, 172.0, 73.0, 65.0], + "iscrowd": 0 + }, + { + "id": 433, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [867.0, 844.0, 960.0, 844.0, 960.0, 939.0, 867.0, 939.0, 867.0, 844.0] + ], + "area": 8835.0, + "bbox": [867.0, 844.0, 93.0, 95.0], + "iscrowd": 0 + }, + { + "id": 434, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 401.0, 3057.5, 400.69, 3062.45, 399.76, 3067.32, 398.23, 3072.04, + 396.11, 3076.53, 393.46, 3080.72, 390.29, 3084.54, 386.68, 3087.94, + 382.67, 3090.85, 378.32, 3093.24, 373.71, 3095.07, 368.9, 3096.3, + 363.98, 3096.92, 359.02, 3096.92, 354.1, 3096.3, 349.29, 3095.07, + 344.68, 3093.24, 340.33, 3090.85, 336.32, 3087.94, 332.71, 3084.54, + 329.54, 3080.72, 326.89, 3076.53, 324.77, 3072.04, 323.24, 3067.32, + 322.31, 3062.45, 322.0, 3057.5, 322.31, 3052.55, 323.24, 3047.68, + 324.77, 3042.96, 326.89, 3038.47, 329.54, 3034.28, 332.71, 3030.46, + 336.32, 3027.06, 340.33, 3024.15, 344.68, 3021.76, 349.29, 3019.93, + 354.1, 3018.7, 359.02, 3018.08, 363.98, 3018.08, 368.9, 3018.7, + 373.71, 3019.93, 378.32, 3021.76, 382.67, 3024.15, 386.68, 3027.06, + 390.29, 3030.46, 393.46, 3034.28, 396.11, 3038.47, 398.23, 3042.96, + 399.76, 3047.68, 400.69, 3052.55 + ] + ], + "area": 4893.0, + "bbox": [322.0, 3018.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 435, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2790.0, 2198.0, 2861.0, 2198.0, 2861.0, 2284.0, 2790.0, 2284.0, + 2790.0, 2198.0 + ] + ], + "area": 6106.0, + "bbox": [2790.0, 2198.0, 71.0, 86.0], + "iscrowd": 0 + }, + { + "id": 436, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1154.0, 169.0, 1250.0, 169.0, 1250.0, 254.0, 1154.0, 254.0, 1154.0, + 169.0 + ] + ], + "area": 8160.0, + "bbox": [1154.0, 169.0, 96.0, 85.0], + "iscrowd": 0 + }, + { + "id": 437, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1031.0, 1720.0, 1113.0, 1720.0, 1113.0, 1818.0, 1031.0, 1818.0, + 1031.0, 1720.0 + ] + ], + "area": 8036.0, + "bbox": [1031.0, 1720.0, 82.0, 98.0], + "iscrowd": 0 + }, + { + "id": 438, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2427.0, 606.0, 2481.0, 606.0, 2481.0, 691.0, 2427.0, 691.0, 2427.0, + 606.0 + ] + ], + "area": 4590.0, + "bbox": [2427.0, 606.0, 54.0, 85.0], + "iscrowd": 0 + }, + { + "id": 439, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1962.0, 796.0, 2012.0, 796.0, 2012.0, 885.0, 1962.0, 885.0, 1962.0, + 796.0 + ] + ], + "area": 4450.0, + "bbox": [1962.0, 796.0, 50.0, 89.0], + "iscrowd": 0 + }, + { + "id": 440, + "image_id": 5, + "category_id": 3, + "segmentation": [[782.0, 242.0, 737.0, 321.0, 827.0, 321.0]], + "area": 3564.0, + "bbox": [737.0, 242.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 441, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2042.0, 1973.0, 2097.0, 1973.0, 2097.0, 2033.0, 2042.0, 2033.0, + 2042.0, 1973.0 + ] + ], + "area": 3300.0, + "bbox": [2042.0, 1973.0, 55.0, 60.0], + "iscrowd": 0 + }, + { + "id": 442, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3189.0, 2595.0, 3262.0, 2595.0, 3262.0, 2666.0, 3189.0, 2666.0, + 3189.0, 2595.0 + ] + ], + "area": 5183.0, + "bbox": [3189.0, 2595.0, 73.0, 71.0], + "iscrowd": 0 + }, + { + "id": 443, + "image_id": 5, + "category_id": 3, + "segmentation": [[1857.5, 3248.0, 1827.0, 3301.0, 1888.0, 3301.0]], + "area": 1623.0, + "bbox": [1827.0, 3248.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 444, + "image_id": 5, + "category_id": 3, + "segmentation": [[3342.0, 2210.0, 3308.0, 2270.0, 3376.0, 2270.0]], + "area": 2048.0, + "bbox": [3308.0, 2210.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 445, + "image_id": 5, + "category_id": 3, + "segmentation": [[2568.0, 33.0, 2531.0, 98.0, 2605.0, 98.0]], + "area": 2412.0, + "bbox": [2531.0, 33.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 446, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2134.5, 1551.0, 2139.33, 1550.7, 2144.07, 1549.79, 2148.67, 1548.3, + 2153.05, 1546.24, 2157.13, 1543.65, 2160.86, 1540.57, 2164.16, + 1537.04, 2167.01, 1533.13, 2169.34, 1528.89, 2171.12, 1524.4, 2172.32, + 1519.71, 2172.92, 1514.92, 2172.92, 1510.08, 2172.32, 1505.29, + 2171.12, 1500.6, 2169.34, 1496.11, 2167.01, 1491.87, 2164.16, 1487.96, + 2160.86, 1484.43, 2157.13, 1481.35, 2153.05, 1478.76, 2148.67, 1476.7, + 2144.07, 1475.21, 2139.33, 1474.3, 2134.5, 1474.0, 2129.67, 1474.3, + 2124.93, 1475.21, 2120.33, 1476.7, 2115.95, 1478.76, 2111.87, 1481.35, + 2108.14, 1484.43, 2104.84, 1487.96, 2101.99, 1491.87, 2099.66, + 1496.11, 2097.88, 1500.6, 2096.68, 1505.29, 2096.08, 1510.08, 2096.08, + 1514.92, 2096.68, 1519.71, 2097.88, 1524.4, 2099.66, 1528.89, 2101.99, + 1533.13, 2104.84, 1537.04, 2108.14, 1540.57, 2111.87, 1543.65, + 2115.95, 1546.24, 2120.33, 1548.3, 2124.93, 1549.79, 2129.67, 1550.7 + ] + ], + "area": 4651.0, + "bbox": [2096.08, 1474.0, 76.84, 77.0], + "iscrowd": 0 + }, + { + "id": 447, + "image_id": 5, + "category_id": 3, + "segmentation": [[107.0, 617.0, 80.0, 664.0, 134.0, 664.0]], + "area": 1274.0, + "bbox": [80.0, 617.0, 54.0, 47.0], + "iscrowd": 0 + }, + { + "id": 448, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3254.0, 1436.0, 3343.0, 1436.0, 3343.0, 1513.0, 3254.0, 1513.0, + 3254.0, 1436.0 + ] + ], + "area": 6853.0, + "bbox": [3254.0, 1436.0, 89.0, 77.0], + "iscrowd": 0 + }, + { + "id": 449, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2255.0, 1382.0, 2316.0, 1382.0, 2316.0, 1439.0, 2255.0, 1439.0, + 2255.0, 1382.0 + ] + ], + "area": 3477.0, + "bbox": [2255.0, 1382.0, 61.0, 57.0], + "iscrowd": 0 + }, + { + "id": 450, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 375.0, 1008.0, 436.0, 1008.0, 436.0, 1097.0, 375.0, 1097.0, 375.0, + 1008.0 + ] + ], + "area": 5429.0, + "bbox": [375.0, 1008.0, 61.0, 89.0], + "iscrowd": 0 + }, + { + "id": 451, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1903.0, 2724.5, 1902.68, 2729.58, 1901.73, 2734.57, 1900.16, 2739.41, + 1897.99, 2744.01, 1895.27, 2748.31, 1892.02, 2752.22, 1888.32, + 2755.71, 1884.2, 2758.7, 1879.74, 2761.15, 1875.02, 2763.02, 1870.09, + 2764.28, 1865.04, 2764.92, 1859.96, 2764.92, 1854.91, 2764.28, + 1849.98, 2763.02, 1845.26, 2761.15, 1840.8, 2758.7, 1836.68, 2755.71, + 1832.98, 2752.22, 1829.73, 2748.31, 1827.01, 2744.01, 1824.84, + 2739.41, 1823.27, 2734.57, 1822.32, 2729.58, 1822.0, 2724.5, 1822.32, + 2719.42, 1823.27, 2714.43, 1824.84, 2709.59, 1827.01, 2704.99, + 1829.73, 2700.69, 1832.98, 2696.78, 1836.68, 2693.29, 1840.8, 2690.3, + 1845.26, 2687.85, 1849.98, 2685.98, 1854.91, 2684.72, 1859.96, + 2684.08, 1865.04, 2684.08, 1870.09, 2684.72, 1875.02, 2685.98, + 1879.74, 2687.85, 1884.2, 2690.3, 1888.32, 2693.29, 1892.02, 2696.78, + 1895.27, 2700.69, 1897.99, 2704.99, 1900.16, 2709.59, 1901.73, + 2714.43, 1902.68, 2719.42 + ] + ], + "area": 5149.0, + "bbox": [1822.0, 2684.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 452, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 1668.5, 117.0, 1672.07, 116.78, 1675.59, 116.1, 1678.99, 115.0, + 1682.23, 113.47, 1685.25, 111.56, 1688.01, 109.28, 1690.46, 106.67, + 1692.56, 103.77, 1694.29, 100.63, 1695.61, 97.31, 1696.5, 93.84, + 1696.94, 90.29, 1696.94, 86.71, 1696.5, 83.16, 1695.61, 79.69, + 1694.29, 76.37, 1692.56, 73.23, 1690.46, 70.33, 1688.01, 67.72, + 1685.25, 65.44, 1682.23, 63.53, 1678.99, 62.0, 1675.59, 60.9, 1672.07, + 60.22, 1668.5, 60.0, 1664.93, 60.22, 1661.41, 60.9, 1658.01, 62.0, + 1654.77, 63.53, 1651.75, 65.44, 1648.99, 67.72, 1646.54, 70.33, + 1644.44, 73.23, 1642.71, 76.37, 1641.39, 79.69, 1640.5, 83.16, + 1640.06, 86.71, 1640.06, 90.29, 1640.5, 93.84, 1641.39, 97.31, + 1642.71, 100.63, 1644.44, 103.77, 1646.54, 106.67, 1648.99, 109.28, + 1651.75, 111.56, 1654.77, 113.47, 1658.01, 115.0, 1661.41, 116.1, + 1664.93, 116.78 + ] + ], + "area": 2547.0, + "bbox": [1640.06, 60.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 453, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3202.0, 2149.0, 3259.0, 2149.0, 3259.0, 2238.0, 3202.0, 2238.0, + 3202.0, 2149.0 + ] + ], + "area": 5073.0, + "bbox": [3202.0, 2149.0, 57.0, 89.0], + "iscrowd": 0 + }, + { + "id": 454, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 2374.0, 2420.5, 2373.69, 2425.45, 2372.76, 2430.32, 2371.23, 2435.04, + 2369.11, 2439.53, 2366.46, 2443.72, 2363.29, 2447.54, 2359.68, + 2450.94, 2355.67, 2453.85, 2351.32, 2456.24, 2346.71, 2458.07, 2341.9, + 2459.3, 2336.98, 2459.92, 2332.02, 2459.92, 2327.1, 2459.3, 2322.29, + 2458.07, 2317.68, 2456.24, 2313.33, 2453.85, 2309.32, 2450.94, + 2305.71, 2447.54, 2302.54, 2443.72, 2299.89, 2439.53, 2297.77, + 2435.04, 2296.24, 2430.32, 2295.31, 2425.45, 2295.0, 2420.5, 2295.31, + 2415.55, 2296.24, 2410.68, 2297.77, 2405.96, 2299.89, 2401.47, + 2302.54, 2397.28, 2305.71, 2393.46, 2309.32, 2390.06, 2313.33, + 2387.15, 2317.68, 2384.76, 2322.29, 2382.93, 2327.1, 2381.7, 2332.02, + 2381.08, 2336.98, 2381.08, 2341.9, 2381.7, 2346.71, 2382.93, 2351.32, + 2384.76, 2355.67, 2387.15, 2359.68, 2390.06, 2363.29, 2393.46, + 2366.46, 2397.28, 2369.11, 2401.47, 2371.23, 2405.96, 2372.76, + 2410.68, 2373.69, 2415.55 + ] + ], + "area": 4893.0, + "bbox": [2295.0, 2381.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 455, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2567.0, 2135.0, 2620.0, 2135.0, 2620.0, 2206.0, 2567.0, 2206.0, + 2567.0, 2135.0 + ] + ], + "area": 3763.0, + "bbox": [2567.0, 2135.0, 53.0, 71.0], + "iscrowd": 0 + }, + { + "id": 456, + "image_id": 5, + "category_id": 3, + "segmentation": [[2280.0, 1277.0, 2240.0, 1347.0, 2320.0, 1347.0]], + "area": 2800.0, + "bbox": [2240.0, 1277.0, 80.0, 70.0], + "iscrowd": 0 + }, + { + "id": 457, + "image_id": 5, + "category_id": 3, + "segmentation": [[3419.0, 196.0, 3386.0, 254.0, 3452.0, 254.0]], + "area": 1920.0, + "bbox": [3386.0, 196.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 458, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 3346.0, 2166.5, 3345.76, 2170.32, 3345.04, 2174.09, 3343.86, 2177.73, + 3342.23, 2181.19, 3340.18, 2184.43, 3337.73, 2187.38, 3334.94, 2190.0, + 3331.84, 2192.25, 3328.49, 2194.1, 3324.93, 2195.51, 3321.22, 2196.46, + 3317.42, 2196.94, 3313.58, 2196.94, 3309.78, 2196.46, 3306.07, + 2195.51, 3302.51, 2194.1, 3299.16, 2192.25, 3296.06, 2190.0, 3293.27, + 2187.38, 3290.82, 2184.43, 3288.77, 2181.19, 3287.14, 2177.73, + 3285.96, 2174.09, 3285.24, 2170.32, 3285.0, 2166.5, 3285.24, 2162.68, + 3285.96, 2158.91, 3287.14, 2155.27, 3288.77, 2151.81, 3290.82, + 2148.57, 3293.27, 2145.62, 3296.06, 2143.0, 3299.16, 2140.75, 3302.51, + 2138.9, 3306.07, 2137.49, 3309.78, 2136.54, 3313.58, 2136.06, 3317.42, + 2136.06, 3321.22, 2136.54, 3324.93, 2137.49, 3328.49, 2138.9, 3331.84, + 2140.75, 3334.94, 2143.0, 3337.73, 2145.62, 3340.18, 2148.57, 3342.23, + 2151.81, 3343.86, 2155.27, 3345.04, 2158.91, 3345.76, 2162.68 + ] + ], + "area": 2915.0, + "bbox": [3285.0, 2136.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 459, + "image_id": 5, + "category_id": 3, + "segmentation": [[1168.5, 2690.0, 1140.0, 2740.0, 1197.0, 2740.0]], + "area": 1430.0, + "bbox": [1140.0, 2690.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 460, + "image_id": 5, + "category_id": 3, + "segmentation": [[708.5, 579.0, 677.0, 634.0, 740.0, 634.0]], + "area": 1739.0, + "bbox": [677.0, 579.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 461, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1588.0, 2490.0, 1673.0, 2490.0, 1673.0, 2563.0, 1588.0, 2563.0, + 1588.0, 2490.0 + ] + ], + "area": 6205.0, + "bbox": [1588.0, 2490.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 462, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 382.0, 870.5, 381.81, 873.57, 381.23, 876.59, 380.28, 879.52, 378.97, + 882.3, 377.32, 884.9, 375.36, 887.27, 373.12, 889.38, 370.63, 891.19, + 367.93, 892.67, 365.07, 893.8, 362.09, 894.57, 359.04, 894.95, 355.96, + 894.95, 352.91, 894.57, 349.93, 893.8, 347.07, 892.67, 344.37, 891.19, + 341.88, 889.38, 339.64, 887.27, 337.68, 884.9, 336.03, 882.3, 334.72, + 879.52, 333.77, 876.59, 333.19, 873.57, 333.0, 870.5, 333.19, 867.43, + 333.77, 864.41, 334.72, 861.48, 336.03, 858.7, 337.68, 856.1, 339.64, + 853.73, 341.88, 851.62, 344.37, 849.81, 347.07, 848.33, 349.93, 847.2, + 352.91, 846.43, 355.96, 846.05, 359.04, 846.05, 362.09, 846.43, + 365.07, 847.2, 367.93, 848.33, 370.63, 849.81, 373.12, 851.62, 375.36, + 853.73, 377.32, 856.1, 378.97, 858.7, 380.28, 861.48, 381.23, 864.41, + 381.81, 867.43 + ] + ], + "area": 1885.0, + "bbox": [333.0, 846.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 463, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3052.0, 1427.0, 3107.0, 1427.0, 3107.0, 1482.0, 3052.0, 1482.0, + 3052.0, 1427.0 + ] + ], + "area": 3025.0, + "bbox": [3052.0, 1427.0, 55.0, 55.0], + "iscrowd": 0 + }, + { + "id": 464, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1618.0, 547.0, 1691.0, 547.0, 1691.0, 645.0, 1618.0, 645.0, 1618.0, + 547.0 + ] + ], + "area": 7154.0, + "bbox": [1618.0, 547.0, 73.0, 98.0], + "iscrowd": 0 + }, + { + "id": 465, + "image_id": 5, + "category_id": 3, + "segmentation": [[3436.0, 2076.0, 3399.0, 2141.0, 3473.0, 2141.0]], + "area": 2412.0, + "bbox": [3399.0, 2076.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 466, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1908.0, 2546.0, 1962.0, 2546.0, 1962.0, 2620.0, 1908.0, 2620.0, + 1908.0, 2546.0 + ] + ], + "area": 3996.0, + "bbox": [1908.0, 2546.0, 54.0, 74.0], + "iscrowd": 0 + }, + { + "id": 467, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [2053.0, 8.0, 2120.0, 8.0, 2120.0, 73.0, 2053.0, 73.0, 2053.0, 8.0] + ], + "area": 4355.0, + "bbox": [2053.0, 8.0, 67.0, 65.0], + "iscrowd": 0 + }, + { + "id": 468, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2087.0, 1900.0, 2173.0, 1900.0, 2173.0, 1957.0, 2087.0, 1957.0, + 2087.0, 1900.0 + ] + ], + "area": 4902.0, + "bbox": [2087.0, 1900.0, 86.0, 57.0], + "iscrowd": 0 + }, + { + "id": 469, + "image_id": 5, + "category_id": 3, + "segmentation": [[332.5, 118.0, 294.0, 185.0, 371.0, 185.0]], + "area": 2588.0, + "bbox": [294.0, 118.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 470, + "image_id": 5, + "category_id": 3, + "segmentation": [[2051.5, 2926.0, 2025.0, 2973.0, 2078.0, 2973.0]], + "area": 1251.0, + "bbox": [2025.0, 2926.0, 53.0, 47.0], + "iscrowd": 0 + }, + { + "id": 471, + "image_id": 5, + "category_id": 3, + "segmentation": [[3320.5, 774.0, 3295.0, 819.0, 3346.0, 819.0]], + "area": 1154.0, + "bbox": [3295.0, 774.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 472, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3378.0, 3269.0, 3433.0, 3269.0, 3433.0, 3354.0, 3378.0, 3354.0, + 3378.0, 3269.0 + ] + ], + "area": 4675.0, + "bbox": [3378.0, 3269.0, 55.0, 85.0], + "iscrowd": 0 + }, + { + "id": 473, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1919.0, 1408.0, 1978.0, 1408.0, 1978.0, 1502.0, 1919.0, 1502.0, + 1919.0, 1408.0 + ] + ], + "area": 5546.0, + "bbox": [1919.0, 1408.0, 59.0, 94.0], + "iscrowd": 0 + }, + { + "id": 474, + "image_id": 5, + "category_id": 3, + "segmentation": [[2896.0, 2066.0, 2863.0, 2124.0, 2929.0, 2124.0]], + "area": 1920.0, + "bbox": [2863.0, 2066.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 475, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1249.0, 1428.0, 1348.0, 1428.0, 1348.0, 1501.0, 1249.0, 1501.0, + 1249.0, 1428.0 + ] + ], + "area": 7227.0, + "bbox": [1249.0, 1428.0, 99.0, 73.0], + "iscrowd": 0 + }, + { + "id": 476, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1090.0, 316.0, 1143.0, 316.0, 1143.0, 369.0, 1090.0, 369.0, 1090.0, + 316.0 + ] + ], + "area": 2809.0, + "bbox": [1090.0, 316.0, 53.0, 53.0], + "iscrowd": 0 + }, + { + "id": 477, + "image_id": 5, + "category_id": 2, + "segmentation": [ + [ + 543.0, 675.5, 542.66, 680.83, 541.66, 686.07, 540.02, 691.15, 537.74, + 695.97, 534.88, 700.48, 531.48, 704.59, 527.59, 708.25, 523.27, + 711.38, 518.6, 713.96, 513.63, 715.92, 508.46, 717.25, 503.17, 717.92, + 497.83, 717.92, 492.54, 717.25, 487.37, 715.92, 482.4, 713.96, 477.73, + 711.38, 473.41, 708.25, 469.52, 704.59, 466.12, 700.48, 463.26, + 695.97, 460.98, 691.15, 459.34, 686.07, 458.34, 680.83, 458.0, 675.5, + 458.34, 670.17, 459.34, 664.93, 460.98, 659.85, 463.26, 655.03, + 466.12, 650.52, 469.52, 646.41, 473.41, 642.75, 477.73, 639.62, 482.4, + 637.04, 487.37, 635.08, 492.54, 633.75, 497.83, 633.08, 503.17, + 633.08, 508.46, 633.75, 513.63, 635.08, 518.6, 637.04, 523.27, 639.62, + 527.59, 642.75, 531.48, 646.41, 534.88, 650.52, 537.74, 655.03, + 540.02, 659.85, 541.66, 664.93, 542.66, 670.17 + ] + ], + "area": 5651.0, + "bbox": [458.0, 633.08, 85.0, 84.84], + "iscrowd": 0 + }, + { + "id": 478, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 1644.0, 1257.0, 1706.0, 1257.0, 1706.0, 1353.0, 1644.0, 1353.0, + 1644.0, 1257.0 + ] + ], + "area": 5952.0, + "bbox": [1644.0, 1257.0, 62.0, 96.0], + "iscrowd": 0 + }, + { + "id": 479, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 3286.0, 1301.0, 3345.0, 1301.0, 3345.0, 1397.0, 3286.0, 1397.0, + 3286.0, 1301.0 + ] + ], + "area": 5664.0, + "bbox": [3286.0, 1301.0, 59.0, 96.0], + "iscrowd": 0 + }, + { + "id": 480, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [ + 2263.0, 2733.0, 2332.0, 2733.0, 2332.0, 2802.0, 2263.0, 2802.0, + 2263.0, 2733.0 + ] + ], + "area": 4761.0, + "bbox": [2263.0, 2733.0, 69.0, 69.0], + "iscrowd": 0 + }, + { + "id": 481, + "image_id": 5, + "category_id": 3, + "segmentation": [[1964.0, 1717.0, 1936.0, 1766.0, 1992.0, 1766.0]], + "area": 1372.0, + "bbox": [1936.0, 1717.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 482, + "image_id": 5, + "category_id": 3, + "segmentation": [[2888.0, 1268.0, 2852.0, 1331.0, 2924.0, 1331.0]], + "area": 2268.0, + "bbox": [2852.0, 1268.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 483, + "image_id": 5, + "category_id": 1, + "segmentation": [ + [21.0, 2577.0, 86.0, 2577.0, 86.0, 2640.0, 21.0, 2640.0, 21.0, 2577.0] + ], + "area": 4095.0, + "bbox": [21.0, 2577.0, 65.0, 63.0], + "iscrowd": 0 + }, + { + "id": 484, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1870.0, 337.0, 1957.0, 337.0, 1957.0, 434.0, 1870.0, 434.0, 1870.0, + 337.0 + ] + ], + "area": 8439.0, + "bbox": [1870.0, 337.0, 87.0, 97.0], + "iscrowd": 0 + }, + { + "id": 485, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3317.0, 2814.0, 3388.0, 2814.0, 3388.0, 2910.0, 3317.0, 2910.0, + 3317.0, 2814.0 + ] + ], + "area": 6816.0, + "bbox": [3317.0, 2814.0, 71.0, 96.0], + "iscrowd": 0 + }, + { + "id": 486, + "image_id": 6, + "category_id": 3, + "segmentation": [[1558.5, 2304.0, 1528.0, 2357.0, 1589.0, 2357.0]], + "area": 1623.0, + "bbox": [1528.0, 2304.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 487, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1664.0, 1332.0, 1762.0, 1332.0, 1762.0, 1402.0, 1664.0, 1402.0, + 1664.0, 1332.0 + ] + ], + "area": 6860.0, + "bbox": [1664.0, 1332.0, 98.0, 70.0], + "iscrowd": 0 + }, + { + "id": 488, + "image_id": 6, + "category_id": 3, + "segmentation": [[2648.0, 2281.0, 2599.0, 2367.0, 2697.0, 2367.0]], + "area": 4224.0, + "bbox": [2599.0, 2281.0, 98.0, 86.0], + "iscrowd": 0 + }, + { + "id": 489, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1206.0, 959.5, 1205.78, 963.07, 1205.1, 966.59, 1204.0, 969.99, + 1202.47, 973.23, 1200.56, 976.25, 1198.28, 979.01, 1195.67, 981.46, + 1192.77, 983.56, 1189.63, 985.29, 1186.31, 986.61, 1182.84, 987.5, + 1179.29, 987.94, 1175.71, 987.94, 1172.16, 987.5, 1168.69, 986.61, + 1165.37, 985.29, 1162.23, 983.56, 1159.33, 981.46, 1156.72, 979.01, + 1154.44, 976.25, 1152.53, 973.23, 1151.0, 969.99, 1149.9, 966.59, + 1149.22, 963.07, 1149.0, 959.5, 1149.22, 955.93, 1149.9, 952.41, + 1151.0, 949.01, 1152.53, 945.77, 1154.44, 942.75, 1156.72, 939.99, + 1159.33, 937.54, 1162.23, 935.44, 1165.37, 933.71, 1168.69, 932.39, + 1172.16, 931.5, 1175.71, 931.06, 1179.29, 931.06, 1182.84, 931.5, + 1186.31, 932.39, 1189.63, 933.71, 1192.77, 935.44, 1195.67, 937.54, + 1198.28, 939.99, 1200.56, 942.75, 1202.47, 945.77, 1204.0, 949.01, + 1205.1, 952.41, 1205.78, 955.93 + ] + ], + "area": 2548.0, + "bbox": [1149.0, 931.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 490, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 931.0, 2081.0, 986.0, 2081.0, 986.0, 2159.0, 931.0, 2159.0, 931.0, + 2081.0 + ] + ], + "area": 4290.0, + "bbox": [931.0, 2081.0, 55.0, 78.0], + "iscrowd": 0 + }, + { + "id": 491, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2313.0, 963.0, 2394.0, 963.0, 2394.0, 1056.0, 2313.0, 1056.0, 2313.0, + 963.0 + ] + ], + "area": 7533.0, + "bbox": [2313.0, 963.0, 81.0, 93.0], + "iscrowd": 0 + }, + { + "id": 492, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [66.0, 2474.0, 135.0, 2474.0, 135.0, 2559.0, 66.0, 2559.0, 66.0, 2474.0] + ], + "area": 5865.0, + "bbox": [66.0, 2474.0, 69.0, 85.0], + "iscrowd": 0 + }, + { + "id": 493, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2987.0, 1724.5, 2986.78, 1727.95, 2986.14, 1731.34, 2985.07, 1734.62, + 2983.6, 1737.75, 2981.75, 1740.66, 2979.55, 1743.33, 2977.03, 1745.69, + 2974.24, 1747.72, 2971.21, 1749.38, 2968.0, 1750.65, 2964.65, 1751.51, + 2961.23, 1751.95, 2957.77, 1751.95, 2954.35, 1751.51, 2951.0, 1750.65, + 2947.79, 1749.38, 2944.76, 1747.72, 2941.97, 1745.69, 2939.45, + 1743.33, 2937.25, 1740.66, 2935.4, 1737.75, 2933.93, 1734.62, 2932.86, + 1731.34, 2932.22, 1727.95, 2932.0, 1724.5, 2932.22, 1721.05, 2932.86, + 1717.66, 2933.93, 1714.38, 2935.4, 1711.25, 2937.25, 1708.34, 2939.45, + 1705.67, 2941.97, 1703.31, 2944.76, 1701.28, 2947.79, 1699.62, 2951.0, + 1698.35, 2954.35, 1697.49, 2957.77, 1697.05, 2961.23, 1697.05, + 2964.65, 1697.49, 2968.0, 1698.35, 2971.21, 1699.62, 2974.24, 1701.28, + 2977.03, 1703.31, 2979.55, 1705.67, 2981.75, 1708.34, 2983.6, 1711.25, + 2985.07, 1714.38, 2986.14, 1717.66, 2986.78, 1721.05 + ] + ], + "area": 2375.0, + "bbox": [2932.0, 1697.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 494, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1545.0, 578.5, 1544.81, 581.57, 1544.23, 584.59, 1543.28, 587.52, + 1541.97, 590.3, 1540.32, 592.9, 1538.36, 595.27, 1536.12, 597.38, + 1533.63, 599.19, 1530.93, 600.67, 1528.07, 601.8, 1525.09, 602.57, + 1522.04, 602.95, 1518.96, 602.95, 1515.91, 602.57, 1512.93, 601.8, + 1510.07, 600.67, 1507.37, 599.19, 1504.88, 597.38, 1502.64, 595.27, + 1500.68, 592.9, 1499.03, 590.3, 1497.72, 587.52, 1496.77, 584.59, + 1496.19, 581.57, 1496.0, 578.5, 1496.19, 575.43, 1496.77, 572.41, + 1497.72, 569.48, 1499.03, 566.7, 1500.68, 564.1, 1502.64, 561.73, + 1504.88, 559.62, 1507.37, 557.81, 1510.07, 556.33, 1512.93, 555.2, + 1515.91, 554.43, 1518.96, 554.05, 1522.04, 554.05, 1525.09, 554.43, + 1528.07, 555.2, 1530.93, 556.33, 1533.63, 557.81, 1536.12, 559.62, + 1538.36, 561.73, 1540.32, 564.1, 1541.97, 566.7, 1543.28, 569.48, + 1544.23, 572.41, 1544.81, 575.43 + ] + ], + "area": 1885.0, + "bbox": [1496.0, 554.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 495, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1266.0, 960.0, 1347.0, 960.0, 1347.0, 1053.0, 1266.0, 1053.0, 1266.0, + 960.0 + ] + ], + "area": 7533.0, + "bbox": [1266.0, 960.0, 81.0, 93.0], + "iscrowd": 0 + }, + { + "id": 496, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 333.0, 1024.0, 396.0, 1024.0, 396.0, 1115.0, 333.0, 1115.0, 333.0, + 1024.0 + ] + ], + "area": 5733.0, + "bbox": [333.0, 1024.0, 63.0, 91.0], + "iscrowd": 0 + }, + { + "id": 497, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1921.0, 980.0, 1987.0, 980.0, 1987.0, 1063.0, 1921.0, 1063.0, 1921.0, + 980.0 + ] + ], + "area": 5478.0, + "bbox": [1921.0, 980.0, 66.0, 83.0], + "iscrowd": 0 + }, + { + "id": 498, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 330.5, 3319.0, 333.95, 3318.78, 337.34, 3318.14, 340.62, 3317.07, + 343.75, 3315.6, 346.66, 3313.75, 349.33, 3311.55, 351.69, 3309.03, + 353.72, 3306.24, 355.38, 3303.21, 356.65, 3300.0, 357.51, 3296.65, + 357.95, 3293.23, 357.95, 3289.77, 357.51, 3286.35, 356.65, 3283.0, + 355.38, 3279.79, 353.72, 3276.76, 351.69, 3273.97, 349.33, 3271.45, + 346.66, 3269.25, 343.75, 3267.4, 340.62, 3265.93, 337.34, 3264.86, + 333.95, 3264.22, 330.5, 3264.0, 327.05, 3264.22, 323.66, 3264.86, + 320.38, 3265.93, 317.25, 3267.4, 314.34, 3269.25, 311.67, 3271.45, + 309.31, 3273.97, 307.28, 3276.76, 305.62, 3279.79, 304.35, 3283.0, + 303.49, 3286.35, 303.05, 3289.77, 303.05, 3293.23, 303.49, 3296.65, + 304.35, 3300.0, 305.62, 3303.21, 307.28, 3306.24, 309.31, 3309.03, + 311.67, 3311.55, 314.34, 3313.75, 317.25, 3315.6, 320.38, 3317.07, + 323.66, 3318.14, 327.05, 3318.78 + ] + ], + "area": 2375.0, + "bbox": [303.05, 3264.0, 54.9, 55.0], + "iscrowd": 0 + }, + { + "id": 499, + "image_id": 6, + "category_id": 3, + "segmentation": [[1460.5, 2515.0, 1421.0, 2584.0, 1500.0, 2584.0]], + "area": 2734.0, + "bbox": [1421.0, 2515.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 500, + "image_id": 6, + "category_id": 3, + "segmentation": [[251.5, 3270.0, 223.0, 3320.0, 280.0, 3320.0]], + "area": 1430.0, + "bbox": [223.0, 3270.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 501, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2447.0, 3112.5, 2446.74, 3116.57, 2445.98, 3120.58, 2444.72, 3124.46, + 2442.98, 3128.16, 2440.79, 3131.6, 2438.19, 3134.75, 2435.22, 3137.54, + 2431.91, 3139.94, 2428.34, 3141.91, 2424.54, 3143.41, 2420.59, + 3144.42, 2416.54, 3144.94, 2412.46, 3144.94, 2408.41, 3144.42, + 2404.46, 3143.41, 2400.66, 3141.91, 2397.09, 3139.94, 2393.78, + 3137.54, 2390.81, 3134.75, 2388.21, 3131.6, 2386.02, 3128.16, 2384.28, + 3124.46, 2383.02, 3120.58, 2382.26, 3116.57, 2382.0, 3112.5, 2382.26, + 3108.43, 2383.02, 3104.42, 2384.28, 3100.54, 2386.02, 3096.84, + 2388.21, 3093.4, 2390.81, 3090.25, 2393.78, 3087.46, 2397.09, 3085.06, + 2400.66, 3083.09, 2404.46, 3081.59, 2408.41, 3080.58, 2412.46, + 3080.06, 2416.54, 3080.06, 2420.59, 3080.58, 2424.54, 3081.59, + 2428.34, 3083.09, 2431.91, 3085.06, 2435.22, 3087.46, 2438.19, + 3090.25, 2440.79, 3093.4, 2442.98, 3096.84, 2444.72, 3100.54, 2445.98, + 3104.42, 2446.74, 3108.43 + ] + ], + "area": 3315.0, + "bbox": [2382.0, 3080.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 502, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2628.5, 62.0, 2631.57, 61.81, 2634.59, 61.23, 2637.52, 60.28, 2640.3, + 58.97, 2642.9, 57.32, 2645.27, 55.36, 2647.38, 53.12, 2649.19, 50.63, + 2650.67, 47.93, 2651.8, 45.07, 2652.57, 42.09, 2652.95, 39.04, + 2652.95, 35.96, 2652.57, 32.91, 2651.8, 29.93, 2650.67, 27.07, + 2649.19, 24.37, 2647.38, 21.88, 2645.27, 19.64, 2642.9, 17.68, 2640.3, + 16.03, 2637.52, 14.72, 2634.59, 13.77, 2631.57, 13.19, 2628.5, 13.0, + 2625.43, 13.19, 2622.41, 13.77, 2619.48, 14.72, 2616.7, 16.03, 2614.1, + 17.68, 2611.73, 19.64, 2609.62, 21.88, 2607.81, 24.37, 2606.33, 27.07, + 2605.2, 29.93, 2604.43, 32.91, 2604.05, 35.96, 2604.05, 39.04, + 2604.43, 42.09, 2605.2, 45.07, 2606.33, 47.93, 2607.81, 50.63, + 2609.62, 53.12, 2611.73, 55.36, 2614.1, 57.32, 2616.7, 58.97, 2619.48, + 60.28, 2622.41, 61.23, 2625.43, 61.81 + ] + ], + "area": 1885.0, + "bbox": [2604.05, 13.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 503, + "image_id": 6, + "category_id": 3, + "segmentation": [[2784.0, 1347.0, 2759.0, 1391.0, 2809.0, 1391.0]], + "area": 1105.0, + "bbox": [2759.0, 1347.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 504, + "image_id": 6, + "category_id": 3, + "segmentation": [[2064.5, 2522.0, 2025.0, 2591.0, 2104.0, 2591.0]], + "area": 2734.0, + "bbox": [2025.0, 2522.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 505, + "image_id": 6, + "category_id": 3, + "segmentation": [[2135.0, 3359.0, 2104.0, 3413.0, 2166.0, 3413.0]], + "area": 1680.0, + "bbox": [2104.0, 3359.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 506, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [595.0, 185.0, 691.0, 185.0, 691.0, 249.0, 595.0, 249.0, 595.0, 185.0] + ], + "area": 6144.0, + "bbox": [595.0, 185.0, 96.0, 64.0], + "iscrowd": 0 + }, + { + "id": 507, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [3131.0, 15.0, 3226.0, 15.0, 3226.0, 90.0, 3131.0, 90.0, 3131.0, 15.0] + ], + "area": 7125.0, + "bbox": [3131.0, 15.0, 95.0, 75.0], + "iscrowd": 0 + }, + { + "id": 508, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3051.0, 3035.0, 3140.0, 3035.0, 3140.0, 3134.0, 3051.0, 3134.0, + 3051.0, 3035.0 + ] + ], + "area": 8811.0, + "bbox": [3051.0, 3035.0, 89.0, 99.0], + "iscrowd": 0 + }, + { + "id": 509, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 385.0, 1664.0, 456.0, 1664.0, 456.0, 1755.0, 385.0, 1755.0, 385.0, + 1664.0 + ] + ], + "area": 6461.0, + "bbox": [385.0, 1664.0, 71.0, 91.0], + "iscrowd": 0 + }, + { + "id": 510, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3325.0, 1186.5, 3324.79, 1189.82, 3324.17, 1193.09, 3323.14, 1196.26, + 3321.72, 1199.27, 3319.94, 1202.08, 3317.82, 1204.64, 3315.39, + 1206.92, 3312.7, 1208.87, 3309.78, 1210.48, 3306.69, 1211.7, 3303.47, + 1212.53, 3300.16, 1212.95, 3296.84, 1212.95, 3293.53, 1212.53, + 3290.31, 1211.7, 3287.22, 1210.48, 3284.3, 1208.87, 3281.61, 1206.92, + 3279.18, 1204.64, 3277.06, 1202.08, 3275.28, 1199.27, 3273.86, + 1196.26, 3272.83, 1193.09, 3272.21, 1189.82, 3272.0, 1186.5, 3272.21, + 1183.18, 3272.83, 1179.91, 3273.86, 1176.74, 3275.28, 1173.73, + 3277.06, 1170.92, 3279.18, 1168.36, 3281.61, 1166.08, 3284.3, 1164.13, + 3287.22, 1162.52, 3290.31, 1161.3, 3293.53, 1160.47, 3296.84, 1160.05, + 3300.16, 1160.05, 3303.47, 1160.47, 3306.69, 1161.3, 3309.78, 1162.52, + 3312.7, 1164.13, 3315.39, 1166.08, 3317.82, 1168.36, 3319.94, 1170.92, + 3321.72, 1173.73, 3323.14, 1176.74, 3324.17, 1179.91, 3324.79, 1183.18 + ] + ], + "area": 2207.0, + "bbox": [3272.0, 1160.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 511, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 260.5, 872.0, 265.83, 871.66, 271.07, 870.66, 276.15, 869.02, 280.97, + 866.74, 285.48, 863.88, 289.59, 860.48, 293.25, 856.59, 296.38, + 852.27, 298.96, 847.6, 300.92, 842.63, 302.25, 837.46, 302.92, 832.17, + 302.92, 826.83, 302.25, 821.54, 300.92, 816.37, 298.96, 811.4, 296.38, + 806.73, 293.25, 802.41, 289.59, 798.52, 285.48, 795.12, 280.97, + 792.26, 276.15, 789.98, 271.07, 788.34, 265.83, 787.34, 260.5, 787.0, + 255.17, 787.34, 249.93, 788.34, 244.85, 789.98, 240.03, 792.26, + 235.52, 795.12, 231.41, 798.52, 227.75, 802.41, 224.62, 806.73, + 222.04, 811.4, 220.08, 816.37, 218.75, 821.54, 218.08, 826.83, 218.08, + 832.17, 218.75, 837.46, 220.08, 842.63, 222.04, 847.6, 224.62, 852.27, + 227.75, 856.59, 231.41, 860.48, 235.52, 863.88, 240.03, 866.74, + 244.85, 869.02, 249.93, 870.66, 255.17, 871.66 + ] + ], + "area": 5651.0, + "bbox": [218.08, 787.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 512, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1867.0, 1729.0, 1954.0, 1729.0, 1954.0, 1826.0, 1867.0, 1826.0, + 1867.0, 1729.0 + ] + ], + "area": 8439.0, + "bbox": [1867.0, 1729.0, 87.0, 97.0], + "iscrowd": 0 + }, + { + "id": 513, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1715.0, 1186.0, 1781.0, 1186.0, 1781.0, 1266.0, 1715.0, 1266.0, + 1715.0, 1186.0 + ] + ], + "area": 5280.0, + "bbox": [1715.0, 1186.0, 66.0, 80.0], + "iscrowd": 0 + }, + { + "id": 514, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [33.0, 1531.0, 104.0, 1531.0, 104.0, 1590.0, 33.0, 1590.0, 33.0, 1531.0] + ], + "area": 4189.0, + "bbox": [33.0, 1531.0, 71.0, 59.0], + "iscrowd": 0 + }, + { + "id": 515, + "image_id": 6, + "category_id": 3, + "segmentation": [[3124.5, 2404.0, 3078.0, 2485.0, 3171.0, 2485.0]], + "area": 3776.0, + "bbox": [3078.0, 2404.0, 93.0, 81.0], + "iscrowd": 0 + }, + { + "id": 516, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 489.0, 1603.0, 568.0, 1603.0, 568.0, 1688.0, 489.0, 1688.0, 489.0, + 1603.0 + ] + ], + "area": 6715.0, + "bbox": [489.0, 1603.0, 79.0, 85.0], + "iscrowd": 0 + }, + { + "id": 517, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 393.0, 2712.0, 460.0, 2712.0, 460.0, 2781.0, 393.0, 2781.0, 393.0, + 2712.0 + ] + ], + "area": 4623.0, + "bbox": [393.0, 2712.0, 67.0, 69.0], + "iscrowd": 0 + }, + { + "id": 518, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1005.0, 2354.5, 1004.64, 2360.2, 1003.57, 2365.82, 1001.8, 2371.25, + 999.37, 2376.42, 996.31, 2381.24, 992.67, 2385.65, 988.5, 2389.56, + 983.88, 2392.92, 978.87, 2395.67, 973.56, 2397.77, 968.03, 2399.19, + 962.36, 2399.91, 956.64, 2399.91, 950.97, 2399.19, 945.44, 2397.77, + 940.13, 2395.67, 935.12, 2392.92, 930.5, 2389.56, 926.33, 2385.65, + 922.69, 2381.24, 919.63, 2376.42, 917.2, 2371.25, 915.43, 2365.82, + 914.36, 2360.2, 914.0, 2354.5, 914.36, 2348.8, 915.43, 2343.18, 917.2, + 2337.75, 919.63, 2332.58, 922.69, 2327.76, 926.33, 2323.35, 930.5, + 2319.44, 935.12, 2316.08, 940.13, 2313.33, 945.44, 2311.23, 950.97, + 2309.81, 956.64, 2309.09, 962.36, 2309.09, 968.03, 2309.81, 973.56, + 2311.23, 978.87, 2313.33, 983.88, 2316.08, 988.5, 2319.44, 992.67, + 2323.35, 996.31, 2327.76, 999.37, 2332.58, 1001.8, 2337.75, 1003.57, + 2343.18, 1004.64, 2348.8 + ] + ], + "area": 6498.0, + "bbox": [914.0, 2309.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 519, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1405.0, 1347.5, 1404.81, 1350.57, 1404.23, 1353.59, 1403.28, 1356.52, + 1401.97, 1359.3, 1400.32, 1361.9, 1398.36, 1364.27, 1396.12, 1366.38, + 1393.63, 1368.19, 1390.93, 1369.67, 1388.07, 1370.8, 1385.09, 1371.57, + 1382.04, 1371.95, 1378.96, 1371.95, 1375.91, 1371.57, 1372.93, 1370.8, + 1370.07, 1369.67, 1367.37, 1368.19, 1364.88, 1366.38, 1362.64, + 1364.27, 1360.68, 1361.9, 1359.03, 1359.3, 1357.72, 1356.52, 1356.77, + 1353.59, 1356.19, 1350.57, 1356.0, 1347.5, 1356.19, 1344.43, 1356.77, + 1341.41, 1357.72, 1338.48, 1359.03, 1335.7, 1360.68, 1333.1, 1362.64, + 1330.73, 1364.88, 1328.62, 1367.37, 1326.81, 1370.07, 1325.33, + 1372.93, 1324.2, 1375.91, 1323.43, 1378.96, 1323.05, 1382.04, 1323.05, + 1385.09, 1323.43, 1388.07, 1324.2, 1390.93, 1325.33, 1393.63, 1326.81, + 1396.12, 1328.62, 1398.36, 1330.73, 1400.32, 1333.1, 1401.97, 1335.7, + 1403.28, 1338.48, 1404.23, 1341.41, 1404.81, 1344.43 + ] + ], + "area": 1885.0, + "bbox": [1356.0, 1323.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 520, + "image_id": 6, + "category_id": 3, + "segmentation": [[818.5, 1465.0, 783.0, 1527.0, 854.0, 1527.0]], + "area": 2209.0, + "bbox": [783.0, 1465.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 521, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [788.0, 145.0, 875.0, 145.0, 875.0, 236.0, 788.0, 236.0, 788.0, 145.0] + ], + "area": 7917.0, + "bbox": [788.0, 145.0, 87.0, 91.0], + "iscrowd": 0 + }, + { + "id": 522, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1019.0, 3348.0, 1100.0, 3348.0, 1100.0, 3446.0, 1019.0, 3446.0, + 1019.0, 3348.0 + ] + ], + "area": 7938.0, + "bbox": [1019.0, 3348.0, 81.0, 98.0], + "iscrowd": 0 + }, + { + "id": 523, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2015.0, 1758.0, 2094.0, 1758.0, 2094.0, 1810.0, 2015.0, 1810.0, + 2015.0, 1758.0 + ] + ], + "area": 4108.0, + "bbox": [2015.0, 1758.0, 79.0, 52.0], + "iscrowd": 0 + }, + { + "id": 524, + "image_id": 6, + "category_id": 3, + "segmentation": [[2858.0, 679.0, 2812.0, 759.0, 2904.0, 759.0]], + "area": 3688.0, + "bbox": [2812.0, 679.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 525, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 555.0, 635.5, 554.78, 639.07, 554.1, 642.59, 553.0, 645.99, 551.47, + 649.23, 549.56, 652.25, 547.28, 655.01, 544.67, 657.46, 541.77, + 659.56, 538.63, 661.29, 535.31, 662.61, 531.84, 663.5, 528.29, 663.94, + 524.71, 663.94, 521.16, 663.5, 517.69, 662.61, 514.37, 661.29, 511.23, + 659.56, 508.33, 657.46, 505.72, 655.01, 503.44, 652.25, 501.53, + 649.23, 500.0, 645.99, 498.9, 642.59, 498.22, 639.07, 498.0, 635.5, + 498.22, 631.93, 498.9, 628.41, 500.0, 625.01, 501.53, 621.77, 503.44, + 618.75, 505.72, 615.99, 508.33, 613.54, 511.23, 611.44, 514.37, + 609.71, 517.69, 608.39, 521.16, 607.5, 524.71, 607.06, 528.29, 607.06, + 531.84, 607.5, 535.31, 608.39, 538.63, 609.71, 541.77, 611.44, 544.67, + 613.54, 547.28, 615.99, 549.56, 618.75, 551.47, 621.77, 553.0, 625.01, + 554.1, 628.41, 554.78, 631.93 + ] + ], + "area": 2548.0, + "bbox": [498.0, 607.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 526, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2391.0, 3241.0, 2480.0, 3241.0, 2480.0, 3329.0, 2391.0, 3329.0, + 2391.0, 3241.0 + ] + ], + "area": 7832.0, + "bbox": [2391.0, 3241.0, 89.0, 88.0], + "iscrowd": 0 + }, + { + "id": 527, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 488.0, 2927.5, 487.64, 2933.2, 486.57, 2938.82, 484.8, 2944.25, + 482.37, 2949.42, 479.31, 2954.24, 475.67, 2958.65, 471.5, 2962.56, + 466.88, 2965.92, 461.87, 2968.67, 456.56, 2970.77, 451.03, 2972.19, + 445.36, 2972.91, 439.64, 2972.91, 433.97, 2972.19, 428.44, 2970.77, + 423.13, 2968.67, 418.12, 2965.92, 413.5, 2962.56, 409.33, 2958.65, + 405.69, 2954.24, 402.63, 2949.42, 400.2, 2944.25, 398.43, 2938.82, + 397.36, 2933.2, 397.0, 2927.5, 397.36, 2921.8, 398.43, 2916.18, 400.2, + 2910.75, 402.63, 2905.58, 405.69, 2900.76, 409.33, 2896.35, 413.5, + 2892.44, 418.12, 2889.08, 423.13, 2886.33, 428.44, 2884.23, 433.97, + 2882.81, 439.64, 2882.09, 445.36, 2882.09, 451.03, 2882.81, 456.56, + 2884.23, 461.87, 2886.33, 466.88, 2889.08, 471.5, 2892.44, 475.67, + 2896.35, 479.31, 2900.76, 482.37, 2905.58, 484.8, 2910.75, 486.57, + 2916.18, 487.64, 2921.8 + ] + ], + "area": 6498.0, + "bbox": [397.0, 2882.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 528, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 921.0, 1249.5, 920.78, 1252.95, 920.14, 1256.34, 919.07, 1259.62, + 917.6, 1262.75, 915.75, 1265.66, 913.55, 1268.33, 911.03, 1270.69, + 908.24, 1272.72, 905.21, 1274.38, 902.0, 1275.65, 898.65, 1276.51, + 895.23, 1276.95, 891.77, 1276.95, 888.35, 1276.51, 885.0, 1275.65, + 881.79, 1274.38, 878.76, 1272.72, 875.97, 1270.69, 873.45, 1268.33, + 871.25, 1265.66, 869.4, 1262.75, 867.93, 1259.62, 866.86, 1256.34, + 866.22, 1252.95, 866.0, 1249.5, 866.22, 1246.05, 866.86, 1242.66, + 867.93, 1239.38, 869.4, 1236.25, 871.25, 1233.34, 873.45, 1230.67, + 875.97, 1228.31, 878.76, 1226.28, 881.79, 1224.62, 885.0, 1223.35, + 888.35, 1222.49, 891.77, 1222.05, 895.23, 1222.05, 898.65, 1222.49, + 902.0, 1223.35, 905.21, 1224.62, 908.24, 1226.28, 911.03, 1228.31, + 913.55, 1230.67, 915.75, 1233.34, 917.6, 1236.25, 919.07, 1239.38, + 920.14, 1242.66, 920.78, 1246.05 + ] + ], + "area": 2375.0, + "bbox": [866.0, 1222.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 529, + "image_id": 6, + "category_id": 3, + "segmentation": [[2659.0, 1879.0, 2611.0, 1963.0, 2707.0, 1963.0]], + "area": 4032.0, + "bbox": [2611.0, 1879.0, 96.0, 84.0], + "iscrowd": 0 + }, + { + "id": 530, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2209.0, 2450.0, 2308.0, 2450.0, 2308.0, 2541.0, 2209.0, 2541.0, + 2209.0, 2450.0 + ] + ], + "area": 9009.0, + "bbox": [2209.0, 2450.0, 99.0, 91.0], + "iscrowd": 0 + }, + { + "id": 531, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1547.0, 3268.0, 1646.0, 3268.0, 1646.0, 3331.0, 1547.0, 3331.0, + 1547.0, 3268.0 + ] + ], + "area": 6237.0, + "bbox": [1547.0, 3268.0, 99.0, 63.0], + "iscrowd": 0 + }, + { + "id": 532, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2662.0, 700.5, 2661.62, 706.58, 2660.48, 712.56, 2658.59, 718.35, + 2656.0, 723.87, 2652.74, 729.01, 2648.85, 733.7, 2644.42, 737.87, + 2639.49, 741.45, 2634.15, 744.38, 2628.49, 746.63, 2622.59, 748.14, + 2616.55, 748.9, 2610.45, 748.9, 2604.41, 748.14, 2598.51, 746.63, + 2592.85, 744.38, 2587.51, 741.45, 2582.58, 737.87, 2578.15, 733.7, + 2574.26, 729.01, 2571.0, 723.87, 2568.41, 718.35, 2566.52, 712.56, + 2565.38, 706.58, 2565.0, 700.5, 2565.38, 694.42, 2566.52, 688.44, + 2568.41, 682.65, 2571.0, 677.13, 2574.26, 671.99, 2578.15, 667.3, + 2582.58, 663.13, 2587.51, 659.55, 2592.85, 656.62, 2598.51, 654.37, + 2604.41, 652.86, 2610.45, 652.1, 2616.55, 652.1, 2622.59, 652.86, + 2628.49, 654.37, 2634.15, 656.62, 2639.49, 659.55, 2644.42, 663.13, + 2648.85, 667.3, 2652.74, 671.99, 2656.0, 677.13, 2658.59, 682.65, + 2660.48, 688.44, 2661.62, 694.42 + ] + ], + "area": 7381.0, + "bbox": [2565.0, 652.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 533, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1740.0, 263.0, 1835.0, 263.0, 1835.0, 358.0, 1740.0, 358.0, 1740.0, + 263.0 + ] + ], + "area": 9025.0, + "bbox": [1740.0, 263.0, 95.0, 95.0], + "iscrowd": 0 + }, + { + "id": 534, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2609.0, 3399.0, 2674.0, 3399.0, 2674.0, 3482.0, 2609.0, 3482.0, + 2609.0, 3399.0 + ] + ], + "area": 5395.0, + "bbox": [2609.0, 3399.0, 65.0, 83.0], + "iscrowd": 0 + }, + { + "id": 535, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3182.0, 834.0, 3259.0, 834.0, 3259.0, 930.0, 3182.0, 930.0, 3182.0, + 834.0 + ] + ], + "area": 7392.0, + "bbox": [3182.0, 834.0, 77.0, 96.0], + "iscrowd": 0 + }, + { + "id": 536, + "image_id": 6, + "category_id": 3, + "segmentation": [[2387.0, 1438.0, 2343.0, 1515.0, 2431.0, 1515.0]], + "area": 3388.0, + "bbox": [2343.0, 1438.0, 88.0, 77.0], + "iscrowd": 0 + }, + { + "id": 537, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3061.5, 1659.0, 3065.95, 1658.72, 3070.33, 1657.88, 3074.57, 1656.51, + 3078.6, 1654.61, 3082.37, 1652.22, 3085.8, 1649.38, 3088.85, 1646.13, + 3091.47, 1642.52, 3093.62, 1638.62, 3095.26, 1634.47, 3096.37, + 1630.15, 3096.93, 1625.73, 3096.93, 1621.27, 3096.37, 1616.85, + 3095.26, 1612.53, 3093.62, 1608.38, 3091.47, 1604.48, 3088.85, + 1600.87, 3085.8, 1597.62, 3082.37, 1594.78, 3078.6, 1592.39, 3074.57, + 1590.49, 3070.33, 1589.12, 3065.95, 1588.28, 3061.5, 1588.0, 3057.05, + 1588.28, 3052.67, 1589.12, 3048.43, 1590.49, 3044.4, 1592.39, 3040.63, + 1594.78, 3037.2, 1597.62, 3034.15, 1600.87, 3031.53, 1604.48, 3029.38, + 1608.38, 3027.74, 1612.53, 3026.63, 1616.85, 3026.07, 1621.27, + 3026.07, 1625.73, 3026.63, 1630.15, 3027.74, 1634.47, 3029.38, + 1638.62, 3031.53, 1642.52, 3034.15, 1646.13, 3037.2, 1649.38, 3040.63, + 1652.22, 3044.4, 1654.61, 3048.43, 1656.51, 3052.67, 1657.88, 3057.05, + 1658.72 + ] + ], + "area": 3956.0, + "bbox": [3026.07, 1588.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 538, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [1503.0, 30.0, 1592.0, 30.0, 1592.0, 125.0, 1503.0, 125.0, 1503.0, 30.0] + ], + "area": 8455.0, + "bbox": [1503.0, 30.0, 89.0, 95.0], + "iscrowd": 0 + }, + { + "id": 539, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [1746.0, 83.0, 1827.0, 83.0, 1827.0, 156.0, 1746.0, 156.0, 1746.0, 83.0] + ], + "area": 5913.0, + "bbox": [1746.0, 83.0, 81.0, 73.0], + "iscrowd": 0 + }, + { + "id": 540, + "image_id": 6, + "category_id": 3, + "segmentation": [[49.0, 2104.0, 21.0, 2153.0, 77.0, 2153.0]], + "area": 1372.0, + "bbox": [21.0, 2104.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 541, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3360.0, 126.0, 3433.0, 126.0, 3433.0, 209.0, 3360.0, 209.0, 3360.0, + 126.0 + ] + ], + "area": 6059.0, + "bbox": [3360.0, 126.0, 73.0, 83.0], + "iscrowd": 0 + }, + { + "id": 542, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 854.0, 1322.5, 853.63, 1328.45, 852.51, 1334.31, 850.66, 1339.99, + 848.12, 1345.38, 844.93, 1350.42, 841.13, 1355.02, 836.78, 1359.1, + 831.95, 1362.61, 826.72, 1365.48, 821.18, 1367.68, 815.4, 1369.16, + 809.48, 1369.91, 803.52, 1369.91, 797.6, 1369.16, 791.82, 1367.68, + 786.28, 1365.48, 781.05, 1362.61, 776.22, 1359.1, 771.87, 1355.02, + 768.07, 1350.42, 764.88, 1345.38, 762.34, 1339.99, 760.49, 1334.31, + 759.37, 1328.45, 759.0, 1322.5, 759.37, 1316.55, 760.49, 1310.69, + 762.34, 1305.01, 764.88, 1299.62, 768.07, 1294.58, 771.87, 1289.98, + 776.22, 1285.9, 781.05, 1282.39, 786.28, 1279.52, 791.82, 1277.32, + 797.6, 1275.84, 803.52, 1275.09, 809.48, 1275.09, 815.4, 1275.84, + 821.18, 1277.32, 826.72, 1279.52, 831.95, 1282.39, 836.78, 1285.9, + 841.13, 1289.98, 844.93, 1294.58, 848.12, 1299.62, 850.66, 1305.01, + 852.51, 1310.69, 853.63, 1316.55 + ] + ], + "area": 7083.0, + "bbox": [759.0, 1275.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 543, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1496.0, 1339.0, 1567.0, 1339.0, 1567.0, 1402.0, 1496.0, 1402.0, + 1496.0, 1339.0 + ] + ], + "area": 4473.0, + "bbox": [1496.0, 1339.0, 71.0, 63.0], + "iscrowd": 0 + }, + { + "id": 544, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1223.0, 105.5, 1222.64, 111.2, 1221.57, 116.82, 1219.8, 122.25, + 1217.37, 127.42, 1214.31, 132.24, 1210.67, 136.65, 1206.5, 140.56, + 1201.88, 143.92, 1196.87, 146.67, 1191.56, 148.77, 1186.03, 150.19, + 1180.36, 150.91, 1174.64, 150.91, 1168.97, 150.19, 1163.44, 148.77, + 1158.13, 146.67, 1153.12, 143.92, 1148.5, 140.56, 1144.33, 136.65, + 1140.69, 132.24, 1137.63, 127.42, 1135.2, 122.25, 1133.43, 116.82, + 1132.36, 111.2, 1132.0, 105.5, 1132.36, 99.8, 1133.43, 94.18, 1135.2, + 88.75, 1137.63, 83.58, 1140.69, 78.76, 1144.33, 74.35, 1148.5, 70.44, + 1153.12, 67.08, 1158.13, 64.33, 1163.44, 62.23, 1168.97, 60.81, + 1174.64, 60.09, 1180.36, 60.09, 1186.03, 60.81, 1191.56, 62.23, + 1196.87, 64.33, 1201.88, 67.08, 1206.5, 70.44, 1210.67, 74.35, + 1214.31, 78.76, 1217.37, 83.58, 1219.8, 88.75, 1221.57, 94.18, + 1222.64, 99.8 + ] + ], + "area": 6498.0, + "bbox": [1132.0, 60.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 545, + "image_id": 6, + "category_id": 3, + "segmentation": [[3140.0, 1703.0, 3101.0, 1771.0, 3179.0, 1771.0]], + "area": 2660.0, + "bbox": [3101.0, 1703.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 546, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2267.0, 575.0, 2324.0, 575.0, 2324.0, 642.0, 2267.0, 642.0, 2267.0, + 575.0 + ] + ], + "area": 3819.0, + "bbox": [2267.0, 575.0, 57.0, 67.0], + "iscrowd": 0 + }, + { + "id": 547, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1621.0, 1006.0, 1680.0, 1006.0, 1680.0, 1073.0, 1621.0, 1073.0, + 1621.0, 1006.0 + ] + ], + "area": 3953.0, + "bbox": [1621.0, 1006.0, 59.0, 67.0], + "iscrowd": 0 + }, + { + "id": 548, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2538.0, 1932.5, 2537.68, 1937.58, 2536.73, 1942.57, 2535.16, 1947.41, + 2532.99, 1952.01, 2530.27, 1956.31, 2527.02, 1960.22, 2523.32, + 1963.71, 2519.2, 1966.7, 2514.74, 1969.15, 2510.02, 1971.02, 2505.09, + 1972.28, 2500.04, 1972.92, 2494.96, 1972.92, 2489.91, 1972.28, + 2484.98, 1971.02, 2480.26, 1969.15, 2475.8, 1966.7, 2471.68, 1963.71, + 2467.98, 1960.22, 2464.73, 1956.31, 2462.01, 1952.01, 2459.84, + 1947.41, 2458.27, 1942.57, 2457.32, 1937.58, 2457.0, 1932.5, 2457.32, + 1927.42, 2458.27, 1922.43, 2459.84, 1917.59, 2462.01, 1912.99, + 2464.73, 1908.69, 2467.98, 1904.78, 2471.68, 1901.29, 2475.8, 1898.3, + 2480.26, 1895.85, 2484.98, 1893.98, 2489.91, 1892.72, 2494.96, + 1892.08, 2500.04, 1892.08, 2505.09, 1892.72, 2510.02, 1893.98, + 2514.74, 1895.85, 2519.2, 1898.3, 2523.32, 1901.29, 2527.02, 1904.78, + 2530.27, 1908.69, 2532.99, 1912.99, 2535.16, 1917.59, 2536.73, + 1922.43, 2537.68, 1927.42 + ] + ], + "area": 5149.0, + "bbox": [2457.0, 1892.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 549, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [30.0, 1193.0, 105.0, 1193.0, 105.0, 1294.0, 30.0, 1294.0, 30.0, 1193.0] + ], + "area": 7575.0, + "bbox": [30.0, 1193.0, 75.0, 101.0], + "iscrowd": 0 + }, + { + "id": 550, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3114.0, 441.5, 3113.62, 447.58, 3112.48, 453.56, 3110.59, 459.35, + 3108.0, 464.87, 3104.74, 470.01, 3100.85, 474.7, 3096.42, 478.87, + 3091.49, 482.45, 3086.15, 485.38, 3080.49, 487.63, 3074.59, 489.14, + 3068.55, 489.9, 3062.45, 489.9, 3056.41, 489.14, 3050.51, 487.63, + 3044.85, 485.38, 3039.51, 482.45, 3034.58, 478.87, 3030.15, 474.7, + 3026.26, 470.01, 3023.0, 464.87, 3020.41, 459.35, 3018.52, 453.56, + 3017.38, 447.58, 3017.0, 441.5, 3017.38, 435.42, 3018.52, 429.44, + 3020.41, 423.65, 3023.0, 418.13, 3026.26, 412.99, 3030.15, 408.3, + 3034.58, 404.13, 3039.51, 400.55, 3044.85, 397.62, 3050.51, 395.37, + 3056.41, 393.86, 3062.45, 393.1, 3068.55, 393.1, 3074.59, 393.86, + 3080.49, 395.37, 3086.15, 397.62, 3091.49, 400.55, 3096.42, 404.13, + 3100.85, 408.3, 3104.74, 412.99, 3108.0, 418.13, 3110.59, 423.65, + 3112.48, 429.44, 3113.62, 435.42 + ] + ], + "area": 7381.0, + "bbox": [3017.0, 393.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 551, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2916.0, 299.0, 3008.0, 299.0, 3008.0, 380.0, 2916.0, 380.0, 2916.0, + 299.0 + ] + ], + "area": 7452.0, + "bbox": [2916.0, 299.0, 92.0, 81.0], + "iscrowd": 0 + }, + { + "id": 552, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [749.0, 424.0, 814.0, 424.0, 814.0, 477.0, 749.0, 477.0, 749.0, 424.0] + ], + "area": 3445.0, + "bbox": [749.0, 424.0, 65.0, 53.0], + "iscrowd": 0 + }, + { + "id": 553, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1827.0, 467.0, 1878.0, 467.0, 1878.0, 556.0, 1827.0, 556.0, 1827.0, + 467.0 + ] + ], + "area": 4539.0, + "bbox": [1827.0, 467.0, 51.0, 89.0], + "iscrowd": 0 + }, + { + "id": 554, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2872.0, 2283.0, 2967.0, 2283.0, 2967.0, 2339.0, 2872.0, 2339.0, + 2872.0, 2283.0 + ] + ], + "area": 5320.0, + "bbox": [2872.0, 2283.0, 95.0, 56.0], + "iscrowd": 0 + }, + { + "id": 555, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2681.0, 1757.0, 2766.0, 1757.0, 2766.0, 1840.0, 2681.0, 1840.0, + 2681.0, 1757.0 + ] + ], + "area": 7055.0, + "bbox": [2681.0, 1757.0, 85.0, 83.0], + "iscrowd": 0 + }, + { + "id": 556, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1198.0, 1989.0, 1279.0, 1989.0, 1279.0, 2070.0, 1198.0, 2070.0, + 1198.0, 1989.0 + ] + ], + "area": 6561.0, + "bbox": [1198.0, 1989.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 557, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1437.0, 709.0, 1487.0, 709.0, 1487.0, 769.0, 1437.0, 769.0, 1437.0, + 709.0 + ] + ], + "area": 3000.0, + "bbox": [1437.0, 709.0, 50.0, 60.0], + "iscrowd": 0 + }, + { + "id": 558, + "image_id": 6, + "category_id": 3, + "segmentation": [[3354.5, 1737.0, 3318.0, 1801.0, 3391.0, 1801.0]], + "area": 2341.0, + "bbox": [3318.0, 1737.0, 73.0, 64.0], + "iscrowd": 0 + }, + { + "id": 559, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1958.0, 2549.5, 1957.66, 2554.95, 1956.63, 2560.32, 1954.95, 2565.51, + 1952.62, 2570.46, 1949.69, 2575.07, 1946.21, 2579.28, 1942.23, + 2583.02, 1937.81, 2586.23, 1933.02, 2588.86, 1927.94, 2590.87, + 1922.65, 2592.23, 1917.23, 2592.91, 1911.77, 2592.91, 1906.35, + 2592.23, 1901.06, 2590.87, 1895.98, 2588.86, 1891.19, 2586.23, + 1886.77, 2583.02, 1882.79, 2579.28, 1879.31, 2575.07, 1876.38, + 2570.46, 1874.05, 2565.51, 1872.37, 2560.32, 1871.34, 2554.95, 1871.0, + 2549.5, 1871.34, 2544.05, 1872.37, 2538.68, 1874.05, 2533.49, 1876.38, + 2528.54, 1879.31, 2523.93, 1882.79, 2519.72, 1886.77, 2515.98, + 1891.19, 2512.77, 1895.98, 2510.14, 1901.06, 2508.13, 1906.35, + 2506.77, 1911.77, 2506.09, 1917.23, 2506.09, 1922.65, 2506.77, + 1927.94, 2508.13, 1933.02, 2510.14, 1937.81, 2512.77, 1942.23, + 2515.98, 1946.21, 2519.72, 1949.69, 2523.93, 1952.62, 2528.54, + 1954.95, 2533.49, 1956.63, 2538.68, 1957.66, 2544.05 + ] + ], + "area": 5927.0, + "bbox": [1871.0, 2506.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 560, + "image_id": 6, + "category_id": 3, + "segmentation": [[543.5, 76.0, 504.0, 145.0, 583.0, 145.0]], + "area": 2734.0, + "bbox": [504.0, 76.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 561, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3425.0, 3083.5, 3424.63, 3089.33, 3423.54, 3095.06, 3421.73, 3100.62, + 3419.25, 3105.9, 3416.12, 3110.83, 3412.4, 3115.33, 3408.14, 3119.33, + 3403.42, 3122.76, 3398.3, 3125.57, 3392.87, 3127.72, 3387.21, 3129.18, + 3381.42, 3129.91, 3375.58, 3129.91, 3369.79, 3129.18, 3364.13, + 3127.72, 3358.7, 3125.57, 3353.58, 3122.76, 3348.86, 3119.33, 3344.6, + 3115.33, 3340.88, 3110.83, 3337.75, 3105.9, 3335.27, 3100.62, 3333.46, + 3095.06, 3332.37, 3089.33, 3332.0, 3083.5, 3332.37, 3077.67, 3333.46, + 3071.94, 3335.27, 3066.38, 3337.75, 3061.1, 3340.88, 3056.17, 3344.6, + 3051.67, 3348.86, 3047.67, 3353.58, 3044.24, 3358.7, 3041.43, 3364.13, + 3039.28, 3369.79, 3037.82, 3375.58, 3037.09, 3381.42, 3037.09, + 3387.21, 3037.82, 3392.87, 3039.28, 3398.3, 3041.43, 3403.42, 3044.24, + 3408.14, 3047.67, 3412.4, 3051.67, 3416.12, 3056.17, 3419.25, 3061.1, + 3421.73, 3066.38, 3423.54, 3071.94, 3424.63, 3077.67 + ] + ], + "area": 6782.0, + "bbox": [3332.0, 3037.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 562, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3337.0, 1847.0, 3396.0, 1847.0, 3396.0, 1903.0, 3337.0, 1903.0, + 3337.0, 1847.0 + ] + ], + "area": 3304.0, + "bbox": [3337.0, 1847.0, 59.0, 56.0], + "iscrowd": 0 + }, + { + "id": 563, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2075.0, 2682.0, 2130.0, 2682.0, 2130.0, 2751.0, 2075.0, 2751.0, + 2075.0, 2682.0 + ] + ], + "area": 3795.0, + "bbox": [2075.0, 2682.0, 55.0, 69.0], + "iscrowd": 0 + }, + { + "id": 564, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 849.0, 3169.5, 848.63, 3175.33, 847.54, 3181.06, 845.73, 3186.62, + 843.25, 3191.9, 840.12, 3196.83, 836.4, 3201.33, 832.14, 3205.33, + 827.42, 3208.76, 822.3, 3211.57, 816.87, 3213.72, 811.21, 3215.18, + 805.42, 3215.91, 799.58, 3215.91, 793.79, 3215.18, 788.13, 3213.72, + 782.7, 3211.57, 777.58, 3208.76, 772.86, 3205.33, 768.6, 3201.33, + 764.88, 3196.83, 761.75, 3191.9, 759.27, 3186.62, 757.46, 3181.06, + 756.37, 3175.33, 756.0, 3169.5, 756.37, 3163.67, 757.46, 3157.94, + 759.27, 3152.38, 761.75, 3147.1, 764.88, 3142.17, 768.6, 3137.67, + 772.86, 3133.67, 777.58, 3130.24, 782.7, 3127.43, 788.13, 3125.28, + 793.79, 3123.82, 799.58, 3123.09, 805.42, 3123.09, 811.21, 3123.82, + 816.87, 3125.28, 822.3, 3127.43, 827.42, 3130.24, 832.14, 3133.67, + 836.4, 3137.67, 840.12, 3142.17, 843.25, 3147.1, 845.73, 3152.38, + 847.54, 3157.94, 848.63, 3163.67 + ] + ], + "area": 6782.0, + "bbox": [756.0, 3123.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 565, + "image_id": 6, + "category_id": 3, + "segmentation": [[2707.0, 132.0, 2672.0, 193.0, 2742.0, 193.0]], + "area": 2142.0, + "bbox": [2672.0, 132.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 566, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 109.0, 163.5, 108.69, 168.45, 107.76, 173.32, 106.23, 178.04, 104.11, + 182.53, 101.46, 186.72, 98.29, 190.54, 94.68, 193.94, 90.67, 196.85, + 86.32, 199.24, 81.71, 201.07, 76.9, 202.3, 71.98, 202.92, 67.02, + 202.92, 62.1, 202.3, 57.29, 201.07, 52.68, 199.24, 48.33, 196.85, + 44.32, 193.94, 40.71, 190.54, 37.54, 186.72, 34.89, 182.53, 32.77, + 178.04, 31.24, 173.32, 30.31, 168.45, 30.0, 163.5, 30.31, 158.55, + 31.24, 153.68, 32.77, 148.96, 34.89, 144.47, 37.54, 140.28, 40.71, + 136.46, 44.32, 133.06, 48.33, 130.15, 52.68, 127.76, 57.29, 125.93, + 62.1, 124.7, 67.02, 124.08, 71.98, 124.08, 76.9, 124.7, 81.71, 125.93, + 86.32, 127.76, 90.67, 130.15, 94.68, 133.06, 98.29, 136.46, 101.46, + 140.28, 104.11, 144.47, 106.23, 148.96, 107.76, 153.68, 108.69, 158.55 + ] + ], + "area": 4893.0, + "bbox": [30.0, 124.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 567, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3029.0, 2601.0, 3100.0, 2601.0, 3100.0, 2672.0, 3029.0, 2672.0, + 3029.0, 2601.0 + ] + ], + "area": 5041.0, + "bbox": [3029.0, 2601.0, 71.0, 71.0], + "iscrowd": 0 + }, + { + "id": 568, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1312.0, 2841.5, 1311.81, 2844.57, 1311.23, 2847.59, 1310.28, 2850.52, + 1308.97, 2853.3, 1307.32, 2855.9, 1305.36, 2858.27, 1303.12, 2860.38, + 1300.63, 2862.19, 1297.93, 2863.67, 1295.07, 2864.8, 1292.09, 2865.57, + 1289.04, 2865.95, 1285.96, 2865.95, 1282.91, 2865.57, 1279.93, 2864.8, + 1277.07, 2863.67, 1274.37, 2862.19, 1271.88, 2860.38, 1269.64, + 2858.27, 1267.68, 2855.9, 1266.03, 2853.3, 1264.72, 2850.52, 1263.77, + 2847.59, 1263.19, 2844.57, 1263.0, 2841.5, 1263.19, 2838.43, 1263.77, + 2835.41, 1264.72, 2832.48, 1266.03, 2829.7, 1267.68, 2827.1, 1269.64, + 2824.73, 1271.88, 2822.62, 1274.37, 2820.81, 1277.07, 2819.33, + 1279.93, 2818.2, 1282.91, 2817.43, 1285.96, 2817.05, 1289.04, 2817.05, + 1292.09, 2817.43, 1295.07, 2818.2, 1297.93, 2819.33, 1300.63, 2820.81, + 1303.12, 2822.62, 1305.36, 2824.73, 1307.32, 2827.1, 1308.97, 2829.7, + 1310.28, 2832.48, 1311.23, 2835.41, 1311.81, 2838.43 + ] + ], + "area": 1885.0, + "bbox": [1263.0, 2817.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 569, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2151.5, 518.0, 2157.45, 517.63, 2163.31, 516.51, 2168.99, 514.66, + 2174.38, 512.12, 2179.42, 508.93, 2184.02, 505.13, 2188.1, 500.78, + 2191.61, 495.95, 2194.48, 490.72, 2196.68, 485.18, 2198.16, 479.4, + 2198.91, 473.48, 2198.91, 467.52, 2198.16, 461.6, 2196.68, 455.82, + 2194.48, 450.28, 2191.61, 445.05, 2188.1, 440.22, 2184.02, 435.87, + 2179.42, 432.07, 2174.38, 428.88, 2168.99, 426.34, 2163.31, 424.49, + 2157.45, 423.37, 2151.5, 423.0, 2145.55, 423.37, 2139.69, 424.49, + 2134.01, 426.34, 2128.62, 428.88, 2123.58, 432.07, 2118.98, 435.87, + 2114.9, 440.22, 2111.39, 445.05, 2108.52, 450.28, 2106.32, 455.82, + 2104.84, 461.6, 2104.09, 467.52, 2104.09, 473.48, 2104.84, 479.4, + 2106.32, 485.18, 2108.52, 490.72, 2111.39, 495.95, 2114.9, 500.78, + 2118.98, 505.13, 2123.58, 508.93, 2128.62, 512.12, 2134.01, 514.66, + 2139.69, 516.51, 2145.55, 517.63 + ] + ], + "area": 7083.0, + "bbox": [2104.09, 423.0, 94.82, 95.0], + "iscrowd": 0 + }, + { + "id": 570, + "image_id": 6, + "category_id": 3, + "segmentation": [[3061.0, 2215.0, 3018.0, 2290.0, 3104.0, 2290.0]], + "area": 3234.0, + "bbox": [3018.0, 2215.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 571, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3401.0, 3392.0, 3481.0, 3392.0, 3481.0, 3490.0, 3401.0, 3490.0, + 3401.0, 3392.0 + ] + ], + "area": 7840.0, + "bbox": [3401.0, 3392.0, 80.0, 98.0], + "iscrowd": 0 + }, + { + "id": 572, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 735.0, 2971.5, 734.7, 2976.2, 733.82, 2980.83, 732.37, 2985.3, 730.36, + 2989.57, 727.84, 2993.54, 724.84, 2997.17, 721.4, 3000.39, 717.59, + 3003.16, 713.47, 3005.43, 709.09, 3007.16, 704.53, 3008.34, 699.85, + 3008.93, 695.15, 3008.93, 690.47, 3008.34, 685.91, 3007.16, 681.53, + 3005.43, 677.41, 3003.16, 673.6, 3000.39, 670.16, 2997.17, 667.16, + 2993.54, 664.64, 2989.57, 662.63, 2985.3, 661.18, 2980.83, 660.3, + 2976.2, 660.0, 2971.5, 660.3, 2966.8, 661.18, 2962.17, 662.63, 2957.7, + 664.64, 2953.43, 667.16, 2949.46, 670.16, 2945.83, 673.6, 2942.61, + 677.41, 2939.84, 681.53, 2937.57, 685.91, 2935.84, 690.47, 2934.66, + 695.15, 2934.07, 699.85, 2934.07, 704.53, 2934.66, 709.09, 2935.84, + 713.47, 2937.57, 717.59, 2939.84, 721.4, 2942.61, 724.84, 2945.83, + 727.84, 2949.46, 730.36, 2953.43, 732.37, 2957.7, 733.82, 2962.17, + 734.7, 2966.8 + ] + ], + "area": 4410.0, + "bbox": [660.0, 2934.07, 75.0, 74.86], + "iscrowd": 0 + }, + { + "id": 573, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1678.0, 1511.0, 1773.0, 1511.0, 1773.0, 1604.0, 1678.0, 1604.0, + 1678.0, 1511.0 + ] + ], + "area": 8835.0, + "bbox": [1678.0, 1511.0, 95.0, 93.0], + "iscrowd": 0 + }, + { + "id": 574, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1193.0, 3397.0, 1250.0, 3397.0, 1250.0, 3457.0, 1193.0, 3457.0, + 1193.0, 3397.0 + ] + ], + "area": 3420.0, + "bbox": [1193.0, 3397.0, 57.0, 60.0], + "iscrowd": 0 + }, + { + "id": 575, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [659.0, 788.0, 718.0, 788.0, 718.0, 843.0, 659.0, 843.0, 659.0, 788.0] + ], + "area": 3245.0, + "bbox": [659.0, 788.0, 59.0, 55.0], + "iscrowd": 0 + }, + { + "id": 576, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2080.5, 932.0, 2085.7, 931.67, 2090.82, 930.7, 2095.78, 929.09, + 2100.49, 926.87, 2104.89, 924.07, 2108.91, 920.75, 2112.48, 916.95, + 2115.54, 912.74, 2118.05, 908.17, 2119.97, 903.32, 2121.26, 898.28, + 2121.92, 893.11, 2121.92, 887.89, 2121.26, 882.72, 2119.97, 877.68, + 2118.05, 872.83, 2115.54, 868.26, 2112.48, 864.05, 2108.91, 860.25, + 2104.89, 856.93, 2100.49, 854.13, 2095.78, 851.91, 2090.82, 850.3, + 2085.7, 849.33, 2080.5, 849.0, 2075.3, 849.33, 2070.18, 850.3, + 2065.22, 851.91, 2060.51, 854.13, 2056.11, 856.93, 2052.09, 860.25, + 2048.52, 864.05, 2045.46, 868.26, 2042.95, 872.83, 2041.03, 877.68, + 2039.74, 882.72, 2039.08, 887.89, 2039.08, 893.11, 2039.74, 898.28, + 2041.03, 903.32, 2042.95, 908.17, 2045.46, 912.74, 2048.52, 916.95, + 2052.09, 920.75, 2056.11, 924.07, 2060.51, 926.87, 2065.22, 929.09, + 2070.18, 930.7, 2075.3, 931.67 + ] + ], + "area": 5392.0, + "bbox": [2039.08, 849.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 577, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3307.0, 1738.5, 3306.73, 1742.82, 3305.92, 1747.08, 3304.58, 1751.2, + 3302.73, 1755.12, 3300.41, 1758.78, 3297.65, 1762.12, 3294.49, + 1765.08, 3290.99, 1767.63, 3287.19, 1769.72, 3283.16, 1771.31, + 3278.96, 1772.39, 3274.67, 1772.93, 3270.33, 1772.93, 3266.04, + 1772.39, 3261.84, 1771.31, 3257.81, 1769.72, 3254.01, 1767.63, + 3250.51, 1765.08, 3247.35, 1762.12, 3244.59, 1758.78, 3242.27, + 1755.12, 3240.42, 1751.2, 3239.08, 1747.08, 3238.27, 1742.82, 3238.0, + 1738.5, 3238.27, 1734.18, 3239.08, 1729.92, 3240.42, 1725.8, 3242.27, + 1721.88, 3244.59, 1718.22, 3247.35, 1714.88, 3250.51, 1711.92, + 3254.01, 1709.37, 3257.81, 1707.28, 3261.84, 1705.69, 3266.04, + 1704.61, 3270.33, 1704.07, 3274.67, 1704.07, 3278.96, 1704.61, + 3283.16, 1705.69, 3287.19, 1707.28, 3290.99, 1709.37, 3294.49, + 1711.92, 3297.65, 1714.88, 3300.41, 1718.22, 3302.73, 1721.88, + 3304.58, 1725.8, 3305.92, 1729.92, 3306.73, 1734.18 + ] + ], + "area": 3743.0, + "bbox": [3238.0, 1704.07, 69.0, 68.86], + "iscrowd": 0 + }, + { + "id": 578, + "image_id": 6, + "category_id": 3, + "segmentation": [[2378.0, 2320.0, 2346.0, 2376.0, 2410.0, 2376.0]], + "area": 1792.0, + "bbox": [2346.0, 2320.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 579, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3099.0, 2750.0, 3158.0, 2750.0, 3158.0, 2821.0, 3099.0, 2821.0, + 3099.0, 2750.0 + ] + ], + "area": 4189.0, + "bbox": [3099.0, 2750.0, 59.0, 71.0], + "iscrowd": 0 + }, + { + "id": 580, + "image_id": 6, + "category_id": 3, + "segmentation": [[1679.5, 2221.0, 1635.0, 2299.0, 1724.0, 2299.0]], + "area": 3477.0, + "bbox": [1635.0, 2221.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 581, + "image_id": 6, + "category_id": 3, + "segmentation": [[1248.0, 1640.0, 1219.0, 1691.0, 1277.0, 1691.0]], + "area": 1484.0, + "bbox": [1219.0, 1640.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 582, + "image_id": 6, + "category_id": 3, + "segmentation": [[1060.5, 1356.0, 1012.0, 1441.0, 1109.0, 1441.0]], + "area": 4129.0, + "bbox": [1012.0, 1356.0, 97.0, 85.0], + "iscrowd": 0 + }, + { + "id": 583, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3419.5, 517.0, 3425.33, 516.63, 3431.06, 515.54, 3436.62, 513.73, + 3441.9, 511.25, 3446.83, 508.12, 3451.33, 504.4, 3455.33, 500.14, + 3458.76, 495.42, 3461.57, 490.3, 3463.72, 484.87, 3465.18, 479.21, + 3465.91, 473.42, 3465.91, 467.58, 3465.18, 461.79, 3463.72, 456.13, + 3461.57, 450.7, 3458.76, 445.58, 3455.33, 440.86, 3451.33, 436.6, + 3446.83, 432.88, 3441.9, 429.75, 3436.62, 427.27, 3431.06, 425.46, + 3425.33, 424.37, 3419.5, 424.0, 3413.67, 424.37, 3407.94, 425.46, + 3402.38, 427.27, 3397.1, 429.75, 3392.17, 432.88, 3387.67, 436.6, + 3383.67, 440.86, 3380.24, 445.58, 3377.43, 450.7, 3375.28, 456.13, + 3373.82, 461.79, 3373.09, 467.58, 3373.09, 473.42, 3373.82, 479.21, + 3375.28, 484.87, 3377.43, 490.3, 3380.24, 495.42, 3383.67, 500.14, + 3387.67, 504.4, 3392.17, 508.12, 3397.1, 511.25, 3402.38, 513.73, + 3407.94, 515.54, 3413.67, 516.63 + ] + ], + "area": 6781.0, + "bbox": [3373.09, 424.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 584, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 172.0, 1289.0, 225.0, 1289.0, 225.0, 1381.0, 172.0, 1381.0, 172.0, + 1289.0 + ] + ], + "area": 4876.0, + "bbox": [172.0, 1289.0, 53.0, 92.0], + "iscrowd": 0 + }, + { + "id": 585, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1017.5, 921.0, 1022.07, 920.71, 1026.58, 919.85, 1030.94, 918.44, + 1035.08, 916.49, 1038.95, 914.03, 1042.49, 911.11, 1045.62, 907.77, + 1048.32, 904.06, 1050.53, 900.04, 1052.21, 895.78, 1053.35, 891.34, + 1053.93, 886.79, 1053.93, 882.21, 1053.35, 877.66, 1052.21, 873.22, + 1050.53, 868.96, 1048.32, 864.94, 1045.62, 861.23, 1042.49, 857.89, + 1038.95, 854.97, 1035.08, 852.51, 1030.94, 850.56, 1026.58, 849.15, + 1022.07, 848.29, 1017.5, 848.0, 1012.93, 848.29, 1008.42, 849.15, + 1004.06, 850.56, 999.92, 852.51, 996.05, 854.97, 992.51, 857.89, + 989.38, 861.23, 986.68, 864.94, 984.47, 868.96, 982.79, 873.22, + 981.65, 877.66, 981.07, 882.21, 981.07, 886.79, 981.65, 891.34, + 982.79, 895.78, 984.47, 900.04, 986.68, 904.06, 989.38, 907.77, + 992.51, 911.11, 996.05, 914.03, 999.92, 916.49, 1004.06, 918.44, + 1008.42, 919.85, 1012.93, 920.71 + ] + ], + "area": 4187.0, + "bbox": [981.07, 848.0, 72.86, 73.0], + "iscrowd": 0 + }, + { + "id": 586, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [40.0, 3305.0, 92.0, 3305.0, 92.0, 3360.0, 40.0, 3360.0, 40.0, 3305.0] + ], + "area": 2860.0, + "bbox": [40.0, 3305.0, 52.0, 55.0], + "iscrowd": 0 + }, + { + "id": 587, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2703.0, 2533.0, 2758.0, 2533.0, 2758.0, 2590.0, 2703.0, 2590.0, + 2703.0, 2533.0 + ] + ], + "area": 3135.0, + "bbox": [2703.0, 2533.0, 55.0, 57.0], + "iscrowd": 0 + }, + { + "id": 588, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3378.0, 2655.0, 3449.0, 2655.0, 3449.0, 2731.0, 3378.0, 2731.0, + 3378.0, 2655.0 + ] + ], + "area": 5396.0, + "bbox": [3378.0, 2655.0, 71.0, 76.0], + "iscrowd": 0 + }, + { + "id": 589, + "image_id": 6, + "category_id": 3, + "segmentation": [[2327.0, 2856.0, 2289.0, 2922.0, 2365.0, 2922.0]], + "area": 2514.0, + "bbox": [2289.0, 2856.0, 76.0, 66.0], + "iscrowd": 0 + }, + { + "id": 590, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [8.0, 893.0, 61.0, 893.0, 61.0, 950.0, 8.0, 950.0, 8.0, 893.0] + ], + "area": 3021.0, + "bbox": [8.0, 893.0, 53.0, 57.0], + "iscrowd": 0 + }, + { + "id": 591, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 3300.0, 557.5, 3299.75, 561.45, 3299.01, 565.33, 3297.79, 569.1, + 3296.1, 572.68, 3293.98, 576.02, 3291.46, 579.06, 3288.58, 581.77, + 3285.38, 584.1, 3281.91, 586.0, 3278.23, 587.46, 3274.4, 588.44, + 3270.48, 588.94, 3266.52, 588.94, 3262.6, 588.44, 3258.77, 587.46, + 3255.09, 586.0, 3251.62, 584.1, 3248.42, 581.77, 3245.54, 579.06, + 3243.02, 576.02, 3240.9, 572.68, 3239.21, 569.1, 3237.99, 565.33, + 3237.25, 561.45, 3237.0, 557.5, 3237.25, 553.55, 3237.99, 549.67, + 3239.21, 545.9, 3240.9, 542.32, 3243.02, 538.98, 3245.54, 535.94, + 3248.42, 533.23, 3251.62, 530.9, 3255.09, 529.0, 3258.77, 527.54, + 3262.6, 526.56, 3266.52, 526.06, 3270.48, 526.06, 3274.4, 526.56, + 3278.23, 527.54, 3281.91, 529.0, 3285.38, 530.9, 3288.58, 533.23, + 3291.46, 535.94, 3293.98, 538.98, 3296.1, 542.32, 3297.79, 545.9, + 3299.01, 549.67, 3299.75, 553.55 + ] + ], + "area": 3122.0, + "bbox": [3237.0, 526.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 592, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2674.0, 849.0, 2765.0, 849.0, 2765.0, 930.0, 2674.0, 930.0, 2674.0, + 849.0 + ] + ], + "area": 7371.0, + "bbox": [2674.0, 849.0, 91.0, 81.0], + "iscrowd": 0 + }, + { + "id": 593, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2867.0, 981.0, 2936.0, 981.0, 2936.0, 1071.0, 2867.0, 1071.0, 2867.0, + 981.0 + ] + ], + "area": 6210.0, + "bbox": [2867.0, 981.0, 69.0, 90.0], + "iscrowd": 0 + }, + { + "id": 594, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [791.0, 40.0, 880.0, 40.0, 880.0, 109.0, 791.0, 109.0, 791.0, 40.0] + ], + "area": 6141.0, + "bbox": [791.0, 40.0, 89.0, 69.0], + "iscrowd": 0 + }, + { + "id": 595, + "image_id": 6, + "category_id": 3, + "segmentation": [[1971.5, 548.0, 1940.0, 603.0, 2003.0, 603.0]], + "area": 1739.0, + "bbox": [1940.0, 548.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 596, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2658.0, 246.0, 2713.0, 246.0, 2713.0, 305.0, 2658.0, 305.0, 2658.0, + 246.0 + ] + ], + "area": 3245.0, + "bbox": [2658.0, 246.0, 55.0, 59.0], + "iscrowd": 0 + }, + { + "id": 597, + "image_id": 6, + "category_id": 3, + "segmentation": [[2718.0, 1688.0, 2686.0, 1744.0, 2750.0, 1744.0]], + "area": 1792.0, + "bbox": [2686.0, 1688.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 598, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2247.0, 2575.0, 2336.0, 2575.0, 2336.0, 2656.0, 2247.0, 2656.0, + 2247.0, 2575.0 + ] + ], + "area": 7209.0, + "bbox": [2247.0, 2575.0, 89.0, 81.0], + "iscrowd": 0 + }, + { + "id": 599, + "image_id": 6, + "category_id": 3, + "segmentation": [[1359.0, 2632.0, 1320.0, 2700.0, 1398.0, 2700.0]], + "area": 2660.0, + "bbox": [1320.0, 2632.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 600, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1372.0, 2186.5, 1371.63, 2192.33, 1370.54, 2198.06, 1368.73, 2203.62, + 1366.25, 2208.9, 1363.12, 2213.83, 1359.4, 2218.33, 1355.14, 2222.33, + 1350.42, 2225.76, 1345.3, 2228.57, 1339.87, 2230.72, 1334.21, 2232.18, + 1328.42, 2232.91, 1322.58, 2232.91, 1316.79, 2232.18, 1311.13, + 2230.72, 1305.7, 2228.57, 1300.58, 2225.76, 1295.86, 2222.33, 1291.6, + 2218.33, 1287.88, 2213.83, 1284.75, 2208.9, 1282.27, 2203.62, 1280.46, + 2198.06, 1279.37, 2192.33, 1279.0, 2186.5, 1279.37, 2180.67, 1280.46, + 2174.94, 1282.27, 2169.38, 1284.75, 2164.1, 1287.88, 2159.17, 1291.6, + 2154.67, 1295.86, 2150.67, 1300.58, 2147.24, 1305.7, 2144.43, 1311.13, + 2142.28, 1316.79, 2140.82, 1322.58, 2140.09, 1328.42, 2140.09, + 1334.21, 2140.82, 1339.87, 2142.28, 1345.3, 2144.43, 1350.42, 2147.24, + 1355.14, 2150.67, 1359.4, 2154.67, 1363.12, 2159.17, 1366.25, 2164.1, + 1368.73, 2169.38, 1370.54, 2174.94, 1371.63, 2180.67 + ] + ], + "area": 6782.0, + "bbox": [1279.0, 2140.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 601, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2312.5, 102.0, 2317.95, 101.66, 2323.32, 100.63, 2328.51, 98.95, + 2333.46, 96.62, 2338.07, 93.69, 2342.28, 90.21, 2346.02, 86.23, + 2349.23, 81.81, 2351.86, 77.02, 2353.87, 71.94, 2355.23, 66.65, + 2355.91, 61.23, 2355.91, 55.77, 2355.23, 50.35, 2353.87, 45.06, + 2351.86, 39.98, 2349.23, 35.19, 2346.02, 30.77, 2342.28, 26.79, + 2338.07, 23.31, 2333.46, 20.38, 2328.51, 18.05, 2323.32, 16.37, + 2317.95, 15.34, 2312.5, 15.0, 2307.05, 15.34, 2301.68, 16.37, 2296.49, + 18.05, 2291.54, 20.38, 2286.93, 23.31, 2282.72, 26.79, 2278.98, 30.77, + 2275.77, 35.19, 2273.14, 39.98, 2271.13, 45.06, 2269.77, 50.35, + 2269.09, 55.77, 2269.09, 61.23, 2269.77, 66.65, 2271.13, 71.94, + 2273.14, 77.02, 2275.77, 81.81, 2278.98, 86.23, 2282.72, 90.21, + 2286.93, 93.69, 2291.54, 96.62, 2296.49, 98.95, 2301.68, 100.63, + 2307.05, 101.66 + ] + ], + "area": 5930.0, + "bbox": [2269.09, 15.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 602, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3360.0, 2093.0, 3429.0, 2093.0, 3429.0, 2166.0, 3360.0, 2166.0, + 3360.0, 2093.0 + ] + ], + "area": 5037.0, + "bbox": [3360.0, 2093.0, 69.0, 73.0], + "iscrowd": 0 + }, + { + "id": 603, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2459.0, 1462.0, 2512.0, 1462.0, 2512.0, 1561.0, 2459.0, 1561.0, + 2459.0, 1462.0 + ] + ], + "area": 5247.0, + "bbox": [2459.0, 1462.0, 53.0, 99.0], + "iscrowd": 0 + }, + { + "id": 604, + "image_id": 6, + "category_id": 3, + "segmentation": [[2622.0, 977.0, 2593.0, 1028.0, 2651.0, 1028.0]], + "area": 1484.0, + "bbox": [2593.0, 977.0, 58.0, 51.0], + "iscrowd": 0 + }, + { + "id": 605, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 929.0, 1901.5, 928.78, 1904.95, 928.14, 1908.34, 927.07, 1911.62, + 925.6, 1914.75, 923.75, 1917.66, 921.55, 1920.33, 919.03, 1922.69, + 916.24, 1924.72, 913.21, 1926.38, 910.0, 1927.65, 906.65, 1928.51, + 903.23, 1928.95, 899.77, 1928.95, 896.35, 1928.51, 893.0, 1927.65, + 889.79, 1926.38, 886.76, 1924.72, 883.97, 1922.69, 881.45, 1920.33, + 879.25, 1917.66, 877.4, 1914.75, 875.93, 1911.62, 874.86, 1908.34, + 874.22, 1904.95, 874.0, 1901.5, 874.22, 1898.05, 874.86, 1894.66, + 875.93, 1891.38, 877.4, 1888.25, 879.25, 1885.34, 881.45, 1882.67, + 883.97, 1880.31, 886.76, 1878.28, 889.79, 1876.62, 893.0, 1875.35, + 896.35, 1874.49, 899.77, 1874.05, 903.23, 1874.05, 906.65, 1874.49, + 910.0, 1875.35, 913.21, 1876.62, 916.24, 1878.28, 919.03, 1880.31, + 921.55, 1882.67, 923.75, 1885.34, 925.6, 1888.25, 927.07, 1891.38, + 928.14, 1894.66, 928.78, 1898.05 + ] + ], + "area": 2375.0, + "bbox": [874.0, 1874.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 606, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2039.0, 150.0, 2123.0, 150.0, 2123.0, 219.0, 2039.0, 219.0, 2039.0, + 150.0 + ] + ], + "area": 5796.0, + "bbox": [2039.0, 150.0, 84.0, 69.0], + "iscrowd": 0 + }, + { + "id": 607, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 1146.5, 1110.0, 1150.32, 1109.76, 1154.09, 1109.04, 1157.73, 1107.86, + 1161.19, 1106.23, 1164.43, 1104.18, 1167.38, 1101.73, 1170.0, 1098.94, + 1172.25, 1095.84, 1174.1, 1092.49, 1175.51, 1088.93, 1176.46, 1085.22, + 1176.94, 1081.42, 1176.94, 1077.58, 1176.46, 1073.78, 1175.51, + 1070.07, 1174.1, 1066.51, 1172.25, 1063.16, 1170.0, 1060.06, 1167.38, + 1057.27, 1164.43, 1054.82, 1161.19, 1052.77, 1157.73, 1051.14, + 1154.09, 1049.96, 1150.32, 1049.24, 1146.5, 1049.0, 1142.68, 1049.24, + 1138.91, 1049.96, 1135.27, 1051.14, 1131.81, 1052.77, 1128.57, + 1054.82, 1125.62, 1057.27, 1123.0, 1060.06, 1120.75, 1063.16, 1118.9, + 1066.51, 1117.49, 1070.07, 1116.54, 1073.78, 1116.06, 1077.58, + 1116.06, 1081.42, 1116.54, 1085.22, 1117.49, 1088.93, 1118.9, 1092.49, + 1120.75, 1095.84, 1123.0, 1098.94, 1125.62, 1101.73, 1128.57, 1104.18, + 1131.81, 1106.23, 1135.27, 1107.86, 1138.91, 1109.04, 1142.68, 1109.76 + ] + ], + "area": 2916.0, + "bbox": [1116.06, 1049.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 608, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 3228.0, 2188.0, 3309.0, 2188.0, 3309.0, 2269.0, 3228.0, 2269.0, + 3228.0, 2188.0 + ] + ], + "area": 6561.0, + "bbox": [3228.0, 2188.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 609, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [623.0, 394.0, 688.0, 394.0, 688.0, 457.0, 623.0, 457.0, 623.0, 394.0] + ], + "area": 4095.0, + "bbox": [623.0, 394.0, 65.0, 63.0], + "iscrowd": 0 + }, + { + "id": 610, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 2844.0, 2769.0, 2942.0, 2769.0, 2942.0, 2866.0, 2844.0, 2866.0, + 2844.0, 2769.0 + ] + ], + "area": 9506.0, + "bbox": [2844.0, 2769.0, 98.0, 97.0], + "iscrowd": 0 + }, + { + "id": 611, + "image_id": 6, + "category_id": 3, + "segmentation": [[2700.0, 2363.0, 2663.0, 2428.0, 2737.0, 2428.0]], + "area": 2412.0, + "bbox": [2663.0, 2363.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 612, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [937.0, 674.0, 1007.0, 674.0, 1007.0, 734.0, 937.0, 734.0, 937.0, 674.0] + ], + "area": 4200.0, + "bbox": [937.0, 674.0, 70.0, 60.0], + "iscrowd": 0 + }, + { + "id": 613, + "image_id": 6, + "category_id": 3, + "segmentation": [[886.0, 1320.0, 842.0, 1397.0, 930.0, 1397.0]], + "area": 3388.0, + "bbox": [842.0, 1320.0, 88.0, 77.0], + "iscrowd": 0 + }, + { + "id": 614, + "image_id": 6, + "category_id": 3, + "segmentation": [[217.5, 2926.0, 184.0, 2985.0, 251.0, 2985.0]], + "area": 1985.0, + "bbox": [184.0, 2926.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 615, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1689.0, 566.0, 1753.0, 566.0, 1753.0, 630.0, 1689.0, 630.0, 1689.0, + 566.0 + ] + ], + "area": 4096.0, + "bbox": [1689.0, 566.0, 64.0, 64.0], + "iscrowd": 0 + }, + { + "id": 616, + "image_id": 6, + "category_id": 3, + "segmentation": [[1703.5, 290.0, 1678.0, 335.0, 1729.0, 335.0]], + "area": 1154.0, + "bbox": [1678.0, 290.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 617, + "image_id": 6, + "category_id": 3, + "segmentation": [[148.5, 3352.0, 118.0, 3405.0, 179.0, 3405.0]], + "area": 1623.0, + "bbox": [118.0, 3352.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 618, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 1630.0, 2343.0, 1717.0, 2343.0, 1717.0, 2436.0, 1630.0, 2436.0, + 1630.0, 2343.0 + ] + ], + "area": 8091.0, + "bbox": [1630.0, 2343.0, 87.0, 93.0], + "iscrowd": 0 + }, + { + "id": 619, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2548.5, 586.0, 2552.07, 585.78, 2555.59, 585.1, 2558.99, 584.0, + 2562.23, 582.47, 2565.25, 580.56, 2568.01, 578.28, 2570.46, 575.67, + 2572.56, 572.77, 2574.29, 569.63, 2575.61, 566.31, 2576.5, 562.84, + 2576.94, 559.29, 2576.94, 555.71, 2576.5, 552.16, 2575.61, 548.69, + 2574.29, 545.37, 2572.56, 542.23, 2570.46, 539.33, 2568.01, 536.72, + 2565.25, 534.44, 2562.23, 532.53, 2558.99, 531.0, 2555.59, 529.9, + 2552.07, 529.22, 2548.5, 529.0, 2544.93, 529.22, 2541.41, 529.9, + 2538.01, 531.0, 2534.77, 532.53, 2531.75, 534.44, 2528.99, 536.72, + 2526.54, 539.33, 2524.44, 542.23, 2522.71, 545.37, 2521.39, 548.69, + 2520.5, 552.16, 2520.06, 555.71, 2520.06, 559.29, 2520.5, 562.84, + 2521.39, 566.31, 2522.71, 569.63, 2524.44, 572.77, 2526.54, 575.67, + 2528.99, 578.28, 2531.75, 580.56, 2534.77, 582.47, 2538.01, 584.0, + 2541.41, 585.1, 2544.93, 585.78 + ] + ], + "area": 2547.0, + "bbox": [2520.06, 529.0, 56.88, 57.0], + "iscrowd": 0 + }, + { + "id": 620, + "image_id": 6, + "category_id": 2, + "segmentation": [ + [ + 2632.0, 1595.5, 2631.74, 1599.7, 2630.95, 1603.83, 2629.65, 1607.83, + 2627.86, 1611.64, 2625.6, 1615.19, 2622.92, 1618.43, 2619.85, 1621.31, + 2616.45, 1623.78, 2612.76, 1625.81, 2608.85, 1627.36, 2604.78, + 1628.41, 2600.6, 1628.93, 2596.4, 1628.93, 2592.22, 1628.41, 2588.15, + 1627.36, 2584.24, 1625.81, 2580.55, 1623.78, 2577.15, 1621.31, + 2574.08, 1618.43, 2571.4, 1615.19, 2569.14, 1611.64, 2567.35, 1607.83, + 2566.05, 1603.83, 2565.26, 1599.7, 2565.0, 1595.5, 2565.26, 1591.3, + 2566.05, 1587.17, 2567.35, 1583.17, 2569.14, 1579.36, 2571.4, 1575.81, + 2574.08, 1572.57, 2577.15, 1569.69, 2580.55, 1567.22, 2584.24, + 1565.19, 2588.15, 1563.64, 2592.22, 1562.59, 2596.4, 1562.07, 2600.6, + 1562.07, 2604.78, 1562.59, 2608.85, 1563.64, 2612.76, 1565.19, + 2616.45, 1567.22, 2619.85, 1569.69, 2622.92, 1572.57, 2625.6, 1575.81, + 2627.86, 1579.36, 2629.65, 1583.17, 2630.95, 1587.17, 2631.74, 1591.3 + ] + ], + "area": 3519.0, + "bbox": [2565.0, 1562.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 621, + "image_id": 6, + "category_id": 3, + "segmentation": [[793.0, 335.0, 752.0, 407.0, 834.0, 407.0]], + "area": 2960.0, + "bbox": [752.0, 335.0, 82.0, 72.0], + "iscrowd": 0 + } + ] +} diff --git a/data/small_objects/annotations/stuff_val.json b/data/small_objects/annotations/stuff_val.json new file mode 100644 index 00000000000..449aad07d77 --- /dev/null +++ b/data/small_objects/annotations/stuff_val.json @@ -0,0 +1,3323 @@ +{ + "licenses": [{ "name": "", "id": 0, "url": "" }], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { "id": 1, "name": "rectangle", "supercategory": "" }, + { "id": 2, "name": "ellipse", "supercategory": "" }, + { "id": 3, "name": "triangle", "supercategory": "" } + ], + "images": [ + { + "id": 7, + "width": 3500, + "height": 3500, + "file_name": "sample_5.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + }, + { + "id": 8, + "width": 3500, + "height": 3500, + "file_name": "sample_8.jpg", + "license": 0, + "flickr_url": "", + "coco_url": "", + "date_captured": 0 + } + ], + "annotations": [ + { + "id": 1, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2117.0, 3424.5, 2116.79, 3427.82, 2116.17, 3431.09, 2115.14, 3434.26, + 2113.72, 3437.27, 2111.94, 3440.08, 2109.82, 3442.64, 2107.39, + 3444.92, 2104.7, 3446.87, 2101.78, 3448.48, 2098.69, 3449.7, 2095.47, + 3450.53, 2092.16, 3450.95, 2088.84, 3450.95, 2085.53, 3450.53, + 2082.31, 3449.7, 2079.22, 3448.48, 2076.3, 3446.87, 2073.61, 3444.92, + 2071.18, 3442.64, 2069.06, 3440.08, 2067.28, 3437.27, 2065.86, + 3434.26, 2064.83, 3431.09, 2064.21, 3427.82, 2064.0, 3424.5, 2064.21, + 3421.18, 2064.83, 3417.91, 2065.86, 3414.74, 2067.28, 3411.73, + 2069.06, 3408.92, 2071.18, 3406.36, 2073.61, 3404.08, 2076.3, 3402.13, + 2079.22, 3400.52, 2082.31, 3399.3, 2085.53, 3398.47, 2088.84, 3398.05, + 2092.16, 3398.05, 2095.47, 3398.47, 2098.69, 3399.3, 2101.78, 3400.52, + 2104.7, 3402.13, 2107.39, 3404.08, 2109.82, 3406.36, 2111.94, 3408.92, + 2113.72, 3411.73, 2115.14, 3414.74, 2116.17, 3417.91, 2116.79, 3421.18 + ] + ], + "area": 2207.0, + "bbox": [2064.0, 3398.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 2, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1535.0, 1834.0, 1614.0, 1834.0, 1614.0, 1915.0, 1535.0, 1915.0, + 1535.0, 1834.0 + ] + ], + "area": 6399.0, + "bbox": [1535.0, 1834.0, 79.0, 81.0], + "iscrowd": 0 + }, + { + "id": 3, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2179.0, 752.0, 2267.0, 752.0, 2267.0, 835.0, 2179.0, 835.0, 2179.0, + 752.0 + ] + ], + "area": 7304.0, + "bbox": [2179.0, 752.0, 88.0, 83.0], + "iscrowd": 0 + }, + { + "id": 4, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [400.0, 365.0, 495.0, 365.0, 495.0, 428.0, 400.0, 428.0, 400.0, 365.0] + ], + "area": 5985.0, + "bbox": [400.0, 365.0, 95.0, 63.0], + "iscrowd": 0 + }, + { + "id": 5, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2016.0, 1432.0, 2101.0, 1432.0, 2101.0, 1495.0, 2016.0, 1495.0, + 2016.0, 1432.0 + ] + ], + "area": 5355.0, + "bbox": [2016.0, 1432.0, 85.0, 63.0], + "iscrowd": 0 + }, + { + "id": 6, + "image_id": 7, + "category_id": 3, + "segmentation": [[3276.5, 1689.0, 3247.0, 1741.0, 3306.0, 1741.0]], + "area": 1542.0, + "bbox": [3247.0, 1689.0, 59.0, 52.0], + "iscrowd": 0 + }, + { + "id": 7, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 3197.0, 1940.0, 3293.0, 1940.0, 3293.0, 2028.0, 3197.0, 2028.0, + 3197.0, 1940.0 + ] + ], + "area": 8448.0, + "bbox": [3197.0, 1940.0, 96.0, 88.0], + "iscrowd": 0 + }, + { + "id": 8, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2060.0, 846.0, 2154.0, 846.0, 2154.0, 915.0, 2060.0, 915.0, 2060.0, + 846.0 + ] + ], + "area": 6486.0, + "bbox": [2060.0, 846.0, 94.0, 69.0], + "iscrowd": 0 + }, + { + "id": 9, + "image_id": 7, + "category_id": 3, + "segmentation": [[438.5, 1154.0, 391.0, 1237.0, 486.0, 1237.0]], + "area": 3952.0, + "bbox": [391.0, 1154.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 10, + "image_id": 7, + "category_id": 3, + "segmentation": [[2381.5, 1923.0, 2356.0, 1968.0, 2407.0, 1968.0]], + "area": 1154.0, + "bbox": [2356.0, 1923.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 11, + "image_id": 7, + "category_id": 3, + "segmentation": [[2276.5, 1641.0, 2249.0, 1689.0, 2304.0, 1689.0]], + "area": 1326.0, + "bbox": [2249.0, 1641.0, 55.0, 48.0], + "iscrowd": 0 + }, + { + "id": 12, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 2768.0, 967.0, 2863.0, 967.0, 2863.0, 1046.0, 2768.0, 1046.0, 2768.0, + 967.0 + ] + ], + "area": 7505.0, + "bbox": [2768.0, 967.0, 95.0, 79.0], + "iscrowd": 0 + }, + { + "id": 13, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 3228.0, 3312.5, 3227.74, 3316.57, 3226.98, 3320.58, 3225.72, 3324.46, + 3223.98, 3328.16, 3221.79, 3331.6, 3219.19, 3334.75, 3216.22, 3337.54, + 3212.91, 3339.94, 3209.34, 3341.91, 3205.54, 3343.41, 3201.59, + 3344.42, 3197.54, 3344.94, 3193.46, 3344.94, 3189.41, 3344.42, + 3185.46, 3343.41, 3181.66, 3341.91, 3178.09, 3339.94, 3174.78, + 3337.54, 3171.81, 3334.75, 3169.21, 3331.6, 3167.02, 3328.16, 3165.28, + 3324.46, 3164.02, 3320.58, 3163.26, 3316.57, 3163.0, 3312.5, 3163.26, + 3308.43, 3164.02, 3304.42, 3165.28, 3300.54, 3167.02, 3296.84, + 3169.21, 3293.4, 3171.81, 3290.25, 3174.78, 3287.46, 3178.09, 3285.06, + 3181.66, 3283.09, 3185.46, 3281.59, 3189.41, 3280.58, 3193.46, + 3280.06, 3197.54, 3280.06, 3201.59, 3280.58, 3205.54, 3281.59, + 3209.34, 3283.09, 3212.91, 3285.06, 3216.22, 3287.46, 3219.19, + 3290.25, 3221.79, 3293.4, 3223.98, 3296.84, 3225.72, 3300.54, 3226.98, + 3304.42, 3227.74, 3308.43 + ] + ], + "area": 3315.0, + "bbox": [3163.0, 3280.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 14, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1440.0, 340.0, 1509.0, 340.0, 1509.0, 415.0, 1440.0, 415.0, 1440.0, + 340.0 + ] + ], + "area": 5175.0, + "bbox": [1440.0, 340.0, 69.0, 75.0], + "iscrowd": 0 + }, + { + "id": 15, + "image_id": 7, + "category_id": 3, + "segmentation": [[2516.5, 2458.0, 2483.0, 2517.0, 2550.0, 2517.0]], + "area": 1985.0, + "bbox": [2483.0, 2458.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 16, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2119.5, 691.0, 2122.57, 690.81, 2125.59, 690.23, 2128.52, 689.28, + 2131.3, 687.97, 2133.9, 686.32, 2136.27, 684.36, 2138.38, 682.12, + 2140.19, 679.63, 2141.67, 676.93, 2142.8, 674.07, 2143.57, 671.09, + 2143.95, 668.04, 2143.95, 664.96, 2143.57, 661.91, 2142.8, 658.93, + 2141.67, 656.07, 2140.19, 653.37, 2138.38, 650.88, 2136.27, 648.64, + 2133.9, 646.68, 2131.3, 645.03, 2128.52, 643.72, 2125.59, 642.77, + 2122.57, 642.19, 2119.5, 642.0, 2116.43, 642.19, 2113.41, 642.77, + 2110.48, 643.72, 2107.7, 645.03, 2105.1, 646.68, 2102.73, 648.64, + 2100.62, 650.88, 2098.81, 653.37, 2097.33, 656.07, 2096.2, 658.93, + 2095.43, 661.91, 2095.05, 664.96, 2095.05, 668.04, 2095.43, 671.09, + 2096.2, 674.07, 2097.33, 676.93, 2098.81, 679.63, 2100.62, 682.12, + 2102.73, 684.36, 2105.1, 686.32, 2107.7, 687.97, 2110.48, 689.28, + 2113.41, 690.23, 2116.43, 690.81 + ] + ], + "area": 1885.0, + "bbox": [2095.05, 642.0, 48.9, 49.0], + "iscrowd": 0 + }, + { + "id": 17, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1684.0, 192.0, 1753.0, 192.0, 1753.0, 260.0, 1684.0, 260.0, 1684.0, + 192.0 + ] + ], + "area": 4692.0, + "bbox": [1684.0, 192.0, 69.0, 68.0], + "iscrowd": 0 + }, + { + "id": 18, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 175.0, 1532.0, 238.0, 1532.0, 238.0, 1585.0, 175.0, 1585.0, 175.0, + 1532.0 + ] + ], + "area": 3339.0, + "bbox": [175.0, 1532.0, 63.0, 53.0], + "iscrowd": 0 + }, + { + "id": 19, + "image_id": 7, + "category_id": 1, + "segmentation": [ + [ + 1581.0, 3353.0, 1680.0, 3353.0, 1680.0, 3446.0, 1581.0, 3446.0, + 1581.0, 3353.0 + ] + ], + "area": 9207.0, + "bbox": [1581.0, 3353.0, 99.0, 93.0], + "iscrowd": 0 + }, + { + "id": 20, + "image_id": 7, + "category_id": 3, + "segmentation": [[476.5, 1689.0, 451.0, 1734.0, 502.0, 1734.0]], + "area": 1154.0, + "bbox": [451.0, 1689.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 21, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 1109.5, 337.0, 1114.33, 336.7, 1119.07, 335.79, 1123.67, 334.3, + 1128.05, 332.24, 1132.13, 329.65, 1135.86, 326.57, 1139.16, 323.04, + 1142.01, 319.13, 1144.34, 314.89, 1146.12, 310.4, 1147.32, 305.71, + 1147.92, 300.92, 1147.92, 296.08, 1147.32, 291.29, 1146.12, 286.6, + 1144.34, 282.11, 1142.01, 277.87, 1139.16, 273.96, 1135.86, 270.43, + 1132.13, 267.35, 1128.05, 264.76, 1123.67, 262.7, 1119.07, 261.21, + 1114.33, 260.3, 1109.5, 260.0, 1104.67, 260.3, 1099.93, 261.21, + 1095.33, 262.7, 1090.95, 264.76, 1086.87, 267.35, 1083.14, 270.43, + 1079.84, 273.96, 1076.99, 277.87, 1074.66, 282.11, 1072.88, 286.6, + 1071.68, 291.29, 1071.08, 296.08, 1071.08, 300.92, 1071.68, 305.71, + 1072.88, 310.4, 1074.66, 314.89, 1076.99, 319.13, 1079.84, 323.04, + 1083.14, 326.57, 1086.87, 329.65, 1090.95, 332.24, 1095.33, 334.3, + 1099.93, 335.79, 1104.67, 336.7 + ] + ], + "area": 4651.0, + "bbox": [1071.08, 260.0, 76.84, 77.0], + "iscrowd": 0 + }, + { + "id": 22, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2630.5, 288.0, 2636.33, 287.63, 2642.06, 286.54, 2647.62, 284.73, + 2652.9, 282.25, 2657.83, 279.12, 2662.33, 275.4, 2666.33, 271.14, + 2669.76, 266.42, 2672.57, 261.3, 2674.72, 255.87, 2676.18, 250.21, + 2676.91, 244.42, 2676.91, 238.58, 2676.18, 232.79, 2674.72, 227.13, + 2672.57, 221.7, 2669.76, 216.58, 2666.33, 211.86, 2662.33, 207.6, + 2657.83, 203.88, 2652.9, 200.75, 2647.62, 198.27, 2642.06, 196.46, + 2636.33, 195.37, 2630.5, 195.0, 2624.67, 195.37, 2618.94, 196.46, + 2613.38, 198.27, 2608.1, 200.75, 2603.17, 203.88, 2598.67, 207.6, + 2594.67, 211.86, 2591.24, 216.58, 2588.43, 221.7, 2586.28, 227.13, + 2584.82, 232.79, 2584.09, 238.58, 2584.09, 244.42, 2584.82, 250.21, + 2586.28, 255.87, 2588.43, 261.3, 2591.24, 266.42, 2594.67, 271.14, + 2598.67, 275.4, 2603.17, 279.12, 2608.1, 282.25, 2613.38, 284.73, + 2618.94, 286.54, 2624.67, 287.63 + ] + ], + "area": 6781.0, + "bbox": [2584.09, 195.0, 92.82, 93.0], + "iscrowd": 0 + }, + { + "id": 23, + "image_id": 7, + "category_id": 3, + "segmentation": [[830.5, 1806.0, 804.0, 1853.0, 857.0, 1853.0]], + "area": 1251.0, + "bbox": [804.0, 1806.0, 53.0, 47.0], + "iscrowd": 0 + }, + { + "id": 24, + "image_id": 7, + "category_id": 3, + "segmentation": [[1570.0, 1749.0, 1545.0, 1793.0, 1595.0, 1793.0]], + "area": 1105.0, + "bbox": [1545.0, 1749.0, 50.0, 44.0], + "iscrowd": 0 + }, + { + "id": 25, + "image_id": 7, + "category_id": 3, + "segmentation": [[1799.0, 50.0, 1756.0, 125.0, 1842.0, 125.0]], + "area": 3234.0, + "bbox": [1756.0, 50.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 26, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 2977.0, 2260.5, 2976.62, 2266.58, 2975.48, 2272.56, 2973.59, 2278.35, + 2971.0, 2283.87, 2967.74, 2289.01, 2963.85, 2293.7, 2959.42, 2297.87, + 2954.49, 2301.45, 2949.15, 2304.38, 2943.49, 2306.63, 2937.59, + 2308.14, 2931.55, 2308.9, 2925.45, 2308.9, 2919.41, 2308.14, 2913.51, + 2306.63, 2907.85, 2304.38, 2902.51, 2301.45, 2897.58, 2297.87, + 2893.15, 2293.7, 2889.26, 2289.01, 2886.0, 2283.87, 2883.41, 2278.35, + 2881.52, 2272.56, 2880.38, 2266.58, 2880.0, 2260.5, 2880.38, 2254.42, + 2881.52, 2248.44, 2883.41, 2242.65, 2886.0, 2237.13, 2889.26, 2231.99, + 2893.15, 2227.3, 2897.58, 2223.13, 2902.51, 2219.55, 2907.85, 2216.62, + 2913.51, 2214.37, 2919.41, 2212.86, 2925.45, 2212.1, 2931.55, 2212.1, + 2937.59, 2212.86, 2943.49, 2214.37, 2949.15, 2216.62, 2954.49, + 2219.55, 2959.42, 2223.13, 2963.85, 2227.3, 2967.74, 2231.99, 2971.0, + 2237.13, 2973.59, 2242.65, 2975.48, 2248.44, 2976.62, 2254.42 + ] + ], + "area": 7381.0, + "bbox": [2880.0, 2212.1, 97.0, 96.8], + "iscrowd": 0 + }, + { + "id": 27, + "image_id": 7, + "category_id": 3, + "segmentation": [[1495.0, 998.0, 1449.0, 1078.0, 1541.0, 1078.0]], + "area": 3688.0, + "bbox": [1449.0, 998.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 28, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 979.0, 279.5, 978.81, 282.57, 978.23, 285.59, 977.28, 288.52, 975.97, + 291.3, 974.32, 293.9, 972.36, 296.27, 970.12, 298.38, 967.63, 300.19, + 964.93, 301.67, 962.07, 302.8, 959.09, 303.57, 956.04, 303.95, 952.96, + 303.95, 949.91, 303.57, 946.93, 302.8, 944.07, 301.67, 941.37, 300.19, + 938.88, 298.38, 936.64, 296.27, 934.68, 293.9, 933.03, 291.3, 931.72, + 288.52, 930.77, 285.59, 930.19, 282.57, 930.0, 279.5, 930.19, 276.43, + 930.77, 273.41, 931.72, 270.48, 933.03, 267.7, 934.68, 265.1, 936.64, + 262.73, 938.88, 260.62, 941.37, 258.81, 944.07, 257.33, 946.93, 256.2, + 949.91, 255.43, 952.96, 255.05, 956.04, 255.05, 959.09, 255.43, + 962.07, 256.2, 964.93, 257.33, 967.63, 258.81, 970.12, 260.62, 972.36, + 262.73, 974.32, 265.1, 975.97, 267.7, 977.28, 270.48, 978.23, 273.41, + 978.81, 276.43 + ] + ], + "area": 1885.0, + "bbox": [930.0, 255.05, 49.0, 48.9], + "iscrowd": 0 + }, + { + "id": 29, + "image_id": 7, + "category_id": 2, + "segmentation": [ + [ + 1728.5, 2861.0, 1733.95, 2860.66, 1739.32, 2859.63, 1744.51, 2857.95, + 1749.46, 2855.62, 1754.07, 2852.69, 1758.28, 2849.21, 1762.02, + 2845.23, 1765.23, 2840.81, 1767.86, 2836.02, 1769.87, 2830.94, + 1771.23, 2825.65, 1771.91, 2820.23, 1771.91, 2814.77, 1771.23, + 2809.35, 1769.87, 2804.06, 1767.86, 2798.98, 1765.23, 2794.19, + 1762.02, 2789.77, 1758.28, 2785.79, 1754.07, 2782.31, 1749.46, + 2779.38, 1744.51, 2777.05, 1739.32, 2775.37, 1733.95, 2774.34, 1728.5, + 2774.0, 1723.05, 2774.34, 1717.68, 2775.37, 1712.49, 2777.05, 1707.54, + 2779.38, 1702.93, 2782.31, 1698.72, 2785.79, 1694.98, 2789.77, + 1691.77, 2794.19, 1689.14, 2798.98, 1687.13, 2804.06, 1685.77, + 2809.35, 1685.09, 2814.77, 1685.09, 2820.23, 1685.77, 2825.65, + 1687.13, 2830.94, 1689.14, 2836.02, 1691.77, 2840.81, 1694.98, + 2845.23, 1698.72, 2849.21, 1702.93, 2852.69, 1707.54, 2855.62, + 1712.49, 2857.95, 1717.68, 2859.63, 1723.05, 2860.66 + ] + ], + "area": 5930.0, + "bbox": [1685.09, 2774.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 30, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [426.0, 370.0, 493.0, 370.0, 493.0, 453.0, 426.0, 453.0, 426.0, 370.0] + ], + "area": 5561.0, + "bbox": [426.0, 370.0, 67.0, 83.0], + "iscrowd": 0 + }, + { + "id": 31, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1956.0, 771.0, 2030.0, 771.0, 2030.0, 869.0, 1956.0, 869.0, 1956.0, + 771.0 + ] + ], + "area": 7252.0, + "bbox": [1956.0, 771.0, 74.0, 98.0], + "iscrowd": 0 + }, + { + "id": 32, + "image_id": 8, + "category_id": 3, + "segmentation": [[1048.0, 2154.0, 1020.0, 2203.0, 1076.0, 2203.0]], + "area": 1372.0, + "bbox": [1020.0, 2154.0, 56.0, 49.0], + "iscrowd": 0 + }, + { + "id": 33, + "image_id": 8, + "category_id": 3, + "segmentation": [[1997.0, 2757.0, 1952.0, 2836.0, 2042.0, 2836.0]], + "area": 3564.0, + "bbox": [1952.0, 2757.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 34, + "image_id": 8, + "category_id": 3, + "segmentation": [[2810.5, 915.0, 2767.0, 991.0, 2854.0, 991.0]], + "area": 3315.0, + "bbox": [2767.0, 915.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 35, + "image_id": 8, + "category_id": 3, + "segmentation": [[645.0, 2420.0, 602.0, 2495.0, 688.0, 2495.0]], + "area": 3234.0, + "bbox": [602.0, 2420.0, 86.0, 75.0], + "iscrowd": 0 + }, + { + "id": 36, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [417.0, 831.0, 492.0, 831.0, 492.0, 908.0, 417.0, 908.0, 417.0, 831.0] + ], + "area": 5775.0, + "bbox": [417.0, 831.0, 75.0, 77.0], + "iscrowd": 0 + }, + { + "id": 37, + "image_id": 8, + "category_id": 3, + "segmentation": [[1829.5, 2972.0, 1788.0, 3045.0, 1871.0, 3045.0]], + "area": 3040.0, + "bbox": [1788.0, 2972.0, 83.0, 73.0], + "iscrowd": 0 + }, + { + "id": 38, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 214.0, 1690.5, 213.78, 1693.95, 213.14, 1697.34, 212.07, 1700.62, + 210.6, 1703.75, 208.75, 1706.66, 206.55, 1709.33, 204.03, 1711.69, + 201.24, 1713.72, 198.21, 1715.38, 195.0, 1716.65, 191.65, 1717.51, + 188.23, 1717.95, 184.77, 1717.95, 181.35, 1717.51, 178.0, 1716.65, + 174.79, 1715.38, 171.76, 1713.72, 168.97, 1711.69, 166.45, 1709.33, + 164.25, 1706.66, 162.4, 1703.75, 160.93, 1700.62, 159.86, 1697.34, + 159.22, 1693.95, 159.0, 1690.5, 159.22, 1687.05, 159.86, 1683.66, + 160.93, 1680.38, 162.4, 1677.25, 164.25, 1674.34, 166.45, 1671.67, + 168.97, 1669.31, 171.76, 1667.28, 174.79, 1665.62, 178.0, 1664.35, + 181.35, 1663.49, 184.77, 1663.05, 188.23, 1663.05, 191.65, 1663.49, + 195.0, 1664.35, 198.21, 1665.62, 201.24, 1667.28, 204.03, 1669.31, + 206.55, 1671.67, 208.75, 1674.34, 210.6, 1677.25, 212.07, 1680.38, + 213.14, 1683.66, 213.78, 1687.05 + ] + ], + "area": 2375.0, + "bbox": [159.0, 1663.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 39, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 120.0, 1236.0, 217.0, 1236.0, 217.0, 1323.0, 120.0, 1323.0, 120.0, + 1236.0 + ] + ], + "area": 8439.0, + "bbox": [120.0, 1236.0, 97.0, 87.0], + "iscrowd": 0 + }, + { + "id": 40, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1654.0, 2721.0, 1727.0, 2721.0, 1727.0, 2784.0, 1654.0, 2784.0, + 1654.0, 2721.0 + ] + ], + "area": 4599.0, + "bbox": [1654.0, 2721.0, 73.0, 63.0], + "iscrowd": 0 + }, + { + "id": 41, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1102.0, 115.0, 1175.0, 115.0, 1175.0, 199.0, 1102.0, 199.0, 1102.0, + 115.0 + ] + ], + "area": 6132.0, + "bbox": [1102.0, 115.0, 73.0, 84.0], + "iscrowd": 0 + }, + { + "id": 42, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 619.0, 1348.5, 618.63, 1354.45, 617.51, 1360.31, 615.66, 1365.99, + 613.12, 1371.38, 609.93, 1376.42, 606.13, 1381.02, 601.78, 1385.1, + 596.95, 1388.61, 591.72, 1391.48, 586.18, 1393.68, 580.4, 1395.16, + 574.48, 1395.91, 568.52, 1395.91, 562.6, 1395.16, 556.82, 1393.68, + 551.28, 1391.48, 546.05, 1388.61, 541.22, 1385.1, 536.87, 1381.02, + 533.07, 1376.42, 529.88, 1371.38, 527.34, 1365.99, 525.49, 1360.31, + 524.37, 1354.45, 524.0, 1348.5, 524.37, 1342.55, 525.49, 1336.69, + 527.34, 1331.01, 529.88, 1325.62, 533.07, 1320.58, 536.87, 1315.98, + 541.22, 1311.9, 546.05, 1308.39, 551.28, 1305.52, 556.82, 1303.32, + 562.6, 1301.84, 568.52, 1301.09, 574.48, 1301.09, 580.4, 1301.84, + 586.18, 1303.32, 591.72, 1305.52, 596.95, 1308.39, 601.78, 1311.9, + 606.13, 1315.98, 609.93, 1320.58, 613.12, 1325.62, 615.66, 1331.01, + 617.51, 1336.69, 618.63, 1342.55 + ] + ], + "area": 7083.0, + "bbox": [524.0, 1301.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 43, + "image_id": 8, + "category_id": 3, + "segmentation": [[382.0, 694.0, 349.0, 752.0, 415.0, 752.0]], + "area": 1920.0, + "bbox": [349.0, 694.0, 66.0, 58.0], + "iscrowd": 0 + }, + { + "id": 44, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2755.5, 971.0, 2759.32, 970.76, 2763.09, 970.04, 2766.73, 968.86, + 2770.19, 967.23, 2773.43, 965.18, 2776.38, 962.73, 2779.0, 959.94, + 2781.25, 956.84, 2783.1, 953.49, 2784.51, 949.93, 2785.46, 946.22, + 2785.94, 942.42, 2785.94, 938.58, 2785.46, 934.78, 2784.51, 931.07, + 2783.1, 927.51, 2781.25, 924.16, 2779.0, 921.06, 2776.38, 918.27, + 2773.43, 915.82, 2770.19, 913.77, 2766.73, 912.14, 2763.09, 910.96, + 2759.32, 910.24, 2755.5, 910.0, 2751.68, 910.24, 2747.91, 910.96, + 2744.27, 912.14, 2740.81, 913.77, 2737.57, 915.82, 2734.62, 918.27, + 2732.0, 921.06, 2729.75, 924.16, 2727.9, 927.51, 2726.49, 931.07, + 2725.54, 934.78, 2725.06, 938.58, 2725.06, 942.42, 2725.54, 946.22, + 2726.49, 949.93, 2727.9, 953.49, 2729.75, 956.84, 2732.0, 959.94, + 2734.62, 962.73, 2737.57, 965.18, 2740.81, 967.23, 2744.27, 968.86, + 2747.91, 970.04, 2751.68, 970.76 + ] + ], + "area": 2916.0, + "bbox": [2725.06, 910.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 45, + "image_id": 8, + "category_id": 3, + "segmentation": [[2231.5, 2165.0, 2200.0, 2220.0, 2263.0, 2220.0]], + "area": 1739.0, + "bbox": [2200.0, 2165.0, 63.0, 55.0], + "iscrowd": 0 + }, + { + "id": 46, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 876.0, 1395.5, 875.71, 1400.07, 874.85, 1404.58, 873.44, 1408.94, + 871.49, 1413.08, 869.03, 1416.95, 866.11, 1420.49, 862.77, 1423.62, + 859.06, 1426.32, 855.04, 1428.53, 850.78, 1430.21, 846.34, 1431.35, + 841.79, 1431.93, 837.21, 1431.93, 832.66, 1431.35, 828.22, 1430.21, + 823.96, 1428.53, 819.94, 1426.32, 816.23, 1423.62, 812.89, 1420.49, + 809.97, 1416.95, 807.51, 1413.08, 805.56, 1408.94, 804.15, 1404.58, + 803.29, 1400.07, 803.0, 1395.5, 803.29, 1390.93, 804.15, 1386.42, + 805.56, 1382.06, 807.51, 1377.92, 809.97, 1374.05, 812.89, 1370.51, + 816.23, 1367.38, 819.94, 1364.68, 823.96, 1362.47, 828.22, 1360.79, + 832.66, 1359.65, 837.21, 1359.07, 841.79, 1359.07, 846.34, 1359.65, + 850.78, 1360.79, 855.04, 1362.47, 859.06, 1364.68, 862.77, 1367.38, + 866.11, 1370.51, 869.03, 1374.05, 871.49, 1377.92, 873.44, 1382.06, + 874.85, 1386.42, 875.71, 1390.93 + ] + ], + "area": 4187.0, + "bbox": [803.0, 1359.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 47, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2120.0, 104.0, 2190.0, 104.0, 2190.0, 199.0, 2120.0, 199.0, 2120.0, + 104.0 + ] + ], + "area": 6650.0, + "bbox": [2120.0, 104.0, 70.0, 95.0], + "iscrowd": 0 + }, + { + "id": 48, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [793.0, 573.0, 875.0, 573.0, 875.0, 671.0, 793.0, 671.0, 793.0, 573.0] + ], + "area": 8036.0, + "bbox": [793.0, 573.0, 82.0, 98.0], + "iscrowd": 0 + }, + { + "id": 49, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3316.0, 1801.0, 3377.0, 1801.0, 3377.0, 1888.0, 3316.0, 1888.0, + 3316.0, 1801.0 + ] + ], + "area": 5307.0, + "bbox": [3316.0, 1801.0, 61.0, 87.0], + "iscrowd": 0 + }, + { + "id": 50, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2245.0, 1009.0, 2316.0, 1009.0, 2316.0, 1074.0, 2245.0, 1074.0, + 2245.0, 1009.0 + ] + ], + "area": 4615.0, + "bbox": [2245.0, 1009.0, 71.0, 65.0], + "iscrowd": 0 + }, + { + "id": 51, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2290.0, 1448.0, 2369.0, 1448.0, 2369.0, 1524.0, 2290.0, 1524.0, + 2290.0, 1448.0 + ] + ], + "area": 6004.0, + "bbox": [2290.0, 1448.0, 79.0, 76.0], + "iscrowd": 0 + }, + { + "id": 52, + "image_id": 8, + "category_id": 3, + "segmentation": [[991.5, 335.0, 952.0, 404.0, 1031.0, 404.0]], + "area": 2734.0, + "bbox": [952.0, 335.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 53, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [233.0, 770.0, 294.0, 770.0, 294.0, 859.0, 233.0, 859.0, 233.0, 770.0] + ], + "area": 5429.0, + "bbox": [233.0, 770.0, 61.0, 89.0], + "iscrowd": 0 + }, + { + "id": 54, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1480.0, 130.0, 1561.0, 130.0, 1561.0, 202.0, 1480.0, 202.0, 1480.0, + 130.0 + ] + ], + "area": 5832.0, + "bbox": [1480.0, 130.0, 81.0, 72.0], + "iscrowd": 0 + }, + { + "id": 55, + "image_id": 8, + "category_id": 3, + "segmentation": [[1120.0, 1977.0, 1081.0, 2045.0, 1159.0, 2045.0]], + "area": 2660.0, + "bbox": [1081.0, 1977.0, 78.0, 68.0], + "iscrowd": 0 + }, + { + "id": 56, + "image_id": 8, + "category_id": 3, + "segmentation": [[2939.0, 2903.0, 2902.0, 2968.0, 2976.0, 2968.0]], + "area": 2412.0, + "bbox": [2902.0, 2903.0, 74.0, 65.0], + "iscrowd": 0 + }, + { + "id": 57, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1578.0, 2577.0, 1644.0, 2577.0, 1644.0, 2634.0, 1578.0, 2634.0, + 1578.0, 2577.0 + ] + ], + "area": 3762.0, + "bbox": [1578.0, 2577.0, 66.0, 57.0], + "iscrowd": 0 + }, + { + "id": 58, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3044.0, 405.0, 3127.0, 405.0, 3127.0, 460.0, 3044.0, 460.0, 3044.0, + 405.0 + ] + ], + "area": 4565.0, + "bbox": [3044.0, 405.0, 83.0, 55.0], + "iscrowd": 0 + }, + { + "id": 59, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1064.0, 1057.0, 1126.0, 1057.0, 1126.0, 1113.0, 1064.0, 1113.0, + 1064.0, 1057.0 + ] + ], + "area": 3472.0, + "bbox": [1064.0, 1057.0, 62.0, 56.0], + "iscrowd": 0 + }, + { + "id": 60, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [249.0, 119.0, 308.0, 119.0, 308.0, 188.0, 249.0, 188.0, 249.0, 119.0] + ], + "area": 4071.0, + "bbox": [249.0, 119.0, 59.0, 69.0], + "iscrowd": 0 + }, + { + "id": 61, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1291.0, 2040.0, 1370.0, 2040.0, 1370.0, 2103.0, 1291.0, 2103.0, + 1291.0, 2040.0 + ] + ], + "area": 4977.0, + "bbox": [1291.0, 2040.0, 79.0, 63.0], + "iscrowd": 0 + }, + { + "id": 62, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2899.5, 1529.0, 2903.2, 1528.77, 2906.84, 1528.07, 2910.36, 1526.93, + 2913.71, 1525.35, 2916.84, 1523.37, 2919.69, 1521.0, 2922.23, 1518.3, + 2924.41, 1515.31, 2926.19, 1512.06, 2927.56, 1508.62, 2928.48, + 1505.03, 2928.94, 1501.35, 2928.94, 1497.65, 2928.48, 1493.97, + 2927.56, 1490.38, 2926.19, 1486.94, 2924.41, 1483.69, 2922.23, 1480.7, + 2919.69, 1478.0, 2916.84, 1475.63, 2913.71, 1473.65, 2910.36, 1472.07, + 2906.84, 1470.93, 2903.2, 1470.23, 2899.5, 1470.0, 2895.8, 1470.23, + 2892.16, 1470.93, 2888.64, 1472.07, 2885.29, 1473.65, 2882.16, + 1475.63, 2879.31, 1478.0, 2876.77, 1480.7, 2874.59, 1483.69, 2872.81, + 1486.94, 2871.44, 1490.38, 2870.52, 1493.97, 2870.06, 1497.65, + 2870.06, 1501.35, 2870.52, 1505.03, 2871.44, 1508.62, 2872.81, + 1512.06, 2874.59, 1515.31, 2876.77, 1518.3, 2879.31, 1521.0, 2882.16, + 1523.37, 2885.29, 1525.35, 2888.64, 1526.93, 2892.16, 1528.07, 2895.8, + 1528.77 + ] + ], + "area": 2732.0, + "bbox": [2870.06, 1470.0, 58.88, 59.0], + "iscrowd": 0 + }, + { + "id": 63, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 985.0, 3009.0, 1080.0, 3009.0, 1080.0, 3064.0, 985.0, 3064.0, 985.0, + 3009.0 + ] + ], + "area": 5225.0, + "bbox": [985.0, 3009.0, 95.0, 55.0], + "iscrowd": 0 + }, + { + "id": 64, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3206.0, 1776.5, 3205.63, 1782.45, 3204.51, 1788.31, 3202.66, 1793.99, + 3200.12, 1799.38, 3196.93, 1804.42, 3193.13, 1809.02, 3188.78, 1813.1, + 3183.95, 1816.61, 3178.72, 1819.48, 3173.18, 1821.68, 3167.4, 1823.16, + 3161.48, 1823.91, 3155.52, 1823.91, 3149.6, 1823.16, 3143.82, 1821.68, + 3138.28, 1819.48, 3133.05, 1816.61, 3128.22, 1813.1, 3123.87, 1809.02, + 3120.07, 1804.42, 3116.88, 1799.38, 3114.34, 1793.99, 3112.49, + 1788.31, 3111.37, 1782.45, 3111.0, 1776.5, 3111.37, 1770.55, 3112.49, + 1764.69, 3114.34, 1759.01, 3116.88, 1753.62, 3120.07, 1748.58, + 3123.87, 1743.98, 3128.22, 1739.9, 3133.05, 1736.39, 3138.28, 1733.52, + 3143.82, 1731.32, 3149.6, 1729.84, 3155.52, 1729.09, 3161.48, 1729.09, + 3167.4, 1729.84, 3173.18, 1731.32, 3178.72, 1733.52, 3183.95, 1736.39, + 3188.78, 1739.9, 3193.13, 1743.98, 3196.93, 1748.58, 3200.12, 1753.62, + 3202.66, 1759.01, 3204.51, 1764.69, 3205.63, 1770.55 + ] + ], + "area": 7083.0, + "bbox": [3111.0, 1729.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 65, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 245.0, 2225.0, 324.0, 2225.0, 324.0, 2290.0, 245.0, 2290.0, 245.0, + 2225.0 + ] + ], + "area": 5135.0, + "bbox": [245.0, 2225.0, 79.0, 65.0], + "iscrowd": 0 + }, + { + "id": 66, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1536.0, 1146.0, 1635.0, 1146.0, 1635.0, 1247.0, 1536.0, 1247.0, + 1536.0, 1146.0 + ] + ], + "area": 9999.0, + "bbox": [1536.0, 1146.0, 99.0, 101.0], + "iscrowd": 0 + }, + { + "id": 67, + "image_id": 8, + "category_id": 3, + "segmentation": [[2229.0, 785.0, 2198.0, 839.0, 2260.0, 839.0]], + "area": 1680.0, + "bbox": [2198.0, 785.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 68, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1064.0, 2230.0, 1148.0, 2230.0, 1148.0, 2297.0, 1064.0, 2297.0, + 1064.0, 2230.0 + ] + ], + "area": 5628.0, + "bbox": [1064.0, 2230.0, 84.0, 67.0], + "iscrowd": 0 + }, + { + "id": 69, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2366.0, 1563.0, 2419.0, 1563.0, 2419.0, 1638.0, 2366.0, 1638.0, + 2366.0, 1563.0 + ] + ], + "area": 3975.0, + "bbox": [2366.0, 1563.0, 53.0, 75.0], + "iscrowd": 0 + }, + { + "id": 70, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1629.0, 837.0, 1700.0, 837.0, 1700.0, 914.0, 1629.0, 914.0, 1629.0, + 837.0 + ] + ], + "area": 5467.0, + "bbox": [1629.0, 837.0, 71.0, 77.0], + "iscrowd": 0 + }, + { + "id": 71, + "image_id": 8, + "category_id": 3, + "segmentation": [[1531.0, 0.0, 1506.0, 20.0, 1556.0, 20.0]], + "area": 500.0, + "bbox": [1506.0, 0.0, 50.0, 20.0], + "iscrowd": 0 + }, + { + "id": 72, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 289.5, 304.0, 295.58, 303.62, 301.56, 302.48, 307.35, 300.59, 312.87, + 298.0, 318.01, 294.74, 322.7, 290.85, 326.87, 286.42, 330.45, 281.49, + 333.38, 276.15, 335.63, 270.49, 337.14, 264.59, 337.9, 258.55, 337.9, + 252.45, 337.14, 246.41, 335.63, 240.51, 333.38, 234.85, 330.45, + 229.51, 326.87, 224.58, 322.7, 220.15, 318.01, 216.26, 312.87, 213.0, + 307.35, 210.41, 301.56, 208.52, 295.58, 207.38, 289.5, 207.0, 283.42, + 207.38, 277.44, 208.52, 271.65, 210.41, 266.13, 213.0, 260.99, 216.26, + 256.3, 220.15, 252.13, 224.58, 248.55, 229.51, 245.62, 234.85, 243.37, + 240.51, 241.86, 246.41, 241.1, 252.45, 241.1, 258.55, 241.86, 264.59, + 243.37, 270.49, 245.62, 276.15, 248.55, 281.49, 252.13, 286.42, 256.3, + 290.85, 260.99, 294.74, 266.13, 298.0, 271.65, 300.59, 277.44, 302.48, + 283.42, 303.62 + ] + ], + "area": 7380.0, + "bbox": [241.1, 207.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 73, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2643.0, 102.5, 2642.63, 108.45, 2641.51, 114.31, 2639.66, 119.99, + 2637.12, 125.38, 2633.93, 130.42, 2630.13, 135.02, 2625.78, 139.1, + 2620.95, 142.61, 2615.72, 145.48, 2610.18, 147.68, 2604.4, 149.16, + 2598.48, 149.91, 2592.52, 149.91, 2586.6, 149.16, 2580.82, 147.68, + 2575.28, 145.48, 2570.05, 142.61, 2565.22, 139.1, 2560.87, 135.02, + 2557.07, 130.42, 2553.88, 125.38, 2551.34, 119.99, 2549.49, 114.31, + 2548.37, 108.45, 2548.0, 102.5, 2548.37, 96.55, 2549.49, 90.69, + 2551.34, 85.01, 2553.88, 79.62, 2557.07, 74.58, 2560.87, 69.98, + 2565.22, 65.9, 2570.05, 62.39, 2575.28, 59.52, 2580.82, 57.32, 2586.6, + 55.84, 2592.52, 55.09, 2598.48, 55.09, 2604.4, 55.84, 2610.18, 57.32, + 2615.72, 59.52, 2620.95, 62.39, 2625.78, 65.9, 2630.13, 69.98, + 2633.93, 74.58, 2637.12, 79.62, 2639.66, 85.01, 2641.51, 90.69, + 2642.63, 96.55 + ] + ], + "area": 7083.0, + "bbox": [2548.0, 55.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 74, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1973.0, 1773.0, 2048.0, 1773.0, 2048.0, 1838.0, 1973.0, 1838.0, + 1973.0, 1773.0 + ] + ], + "area": 4875.0, + "bbox": [1973.0, 1773.0, 75.0, 65.0], + "iscrowd": 0 + }, + { + "id": 75, + "image_id": 8, + "category_id": 3, + "segmentation": [[2996.5, 3168.0, 2948.0, 3253.0, 3045.0, 3253.0]], + "area": 4129.0, + "bbox": [2948.0, 3168.0, 97.0, 85.0], + "iscrowd": 0 + }, + { + "id": 76, + "image_id": 8, + "category_id": 3, + "segmentation": [[547.0, 1586.0, 502.0, 1665.0, 592.0, 1665.0]], + "area": 3564.0, + "bbox": [502.0, 1586.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 77, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2046.0, 2341.0, 2105.0, 2341.0, 2105.0, 2392.0, 2046.0, 2392.0, + 2046.0, 2341.0 + ] + ], + "area": 3009.0, + "bbox": [2046.0, 2341.0, 59.0, 51.0], + "iscrowd": 0 + }, + { + "id": 78, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 373.0, 2843.0, 448.0, 2843.0, 448.0, 2924.0, 373.0, 2924.0, 373.0, + 2843.0 + ] + ], + "area": 6075.0, + "bbox": [373.0, 2843.0, 75.0, 81.0], + "iscrowd": 0 + }, + { + "id": 79, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1242.0, 620.0, 1303.0, 620.0, 1303.0, 679.0, 1242.0, 679.0, 1242.0, + 620.0 + ] + ], + "area": 3599.0, + "bbox": [1242.0, 620.0, 61.0, 59.0], + "iscrowd": 0 + }, + { + "id": 80, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1466.0, 1412.0, 1545.0, 1412.0, 1545.0, 1509.0, 1466.0, 1509.0, + 1466.0, 1412.0 + ] + ], + "area": 7663.0, + "bbox": [1466.0, 1412.0, 79.0, 97.0], + "iscrowd": 0 + }, + { + "id": 81, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1606.5, 266.0, 1611.83, 265.66, 1617.07, 264.66, 1622.15, 263.02, + 1626.97, 260.74, 1631.48, 257.88, 1635.59, 254.48, 1639.25, 250.59, + 1642.38, 246.27, 1644.96, 241.6, 1646.92, 236.63, 1648.25, 231.46, + 1648.92, 226.17, 1648.92, 220.83, 1648.25, 215.54, 1646.92, 210.37, + 1644.96, 205.4, 1642.38, 200.73, 1639.25, 196.41, 1635.59, 192.52, + 1631.48, 189.12, 1626.97, 186.26, 1622.15, 183.98, 1617.07, 182.34, + 1611.83, 181.34, 1606.5, 181.0, 1601.17, 181.34, 1595.93, 182.34, + 1590.85, 183.98, 1586.03, 186.26, 1581.52, 189.12, 1577.41, 192.52, + 1573.75, 196.41, 1570.62, 200.73, 1568.04, 205.4, 1566.08, 210.37, + 1564.75, 215.54, 1564.08, 220.83, 1564.08, 226.17, 1564.75, 231.46, + 1566.08, 236.63, 1568.04, 241.6, 1570.62, 246.27, 1573.75, 250.59, + 1577.41, 254.48, 1581.52, 257.88, 1586.03, 260.74, 1590.85, 263.02, + 1595.93, 264.66, 1601.17, 265.66 + ] + ], + "area": 5651.0, + "bbox": [1564.08, 181.0, 84.84, 85.0], + "iscrowd": 0 + }, + { + "id": 82, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2384.5, 424.0, 2389.95, 423.66, 2395.32, 422.63, 2400.51, 420.95, + 2405.46, 418.62, 2410.07, 415.69, 2414.28, 412.21, 2418.02, 408.23, + 2421.23, 403.81, 2423.86, 399.02, 2425.87, 393.94, 2427.23, 388.65, + 2427.91, 383.23, 2427.91, 377.77, 2427.23, 372.35, 2425.87, 367.06, + 2423.86, 361.98, 2421.23, 357.19, 2418.02, 352.77, 2414.28, 348.79, + 2410.07, 345.31, 2405.46, 342.38, 2400.51, 340.05, 2395.32, 338.37, + 2389.95, 337.34, 2384.5, 337.0, 2379.05, 337.34, 2373.68, 338.37, + 2368.49, 340.05, 2363.54, 342.38, 2358.93, 345.31, 2354.72, 348.79, + 2350.98, 352.77, 2347.77, 357.19, 2345.14, 361.98, 2343.13, 367.06, + 2341.77, 372.35, 2341.09, 377.77, 2341.09, 383.23, 2341.77, 388.65, + 2343.13, 393.94, 2345.14, 399.02, 2347.77, 403.81, 2350.98, 408.23, + 2354.72, 412.21, 2358.93, 415.69, 2363.54, 418.62, 2368.49, 420.95, + 2373.68, 422.63, 2379.05, 423.66 + ] + ], + "area": 5930.0, + "bbox": [2341.09, 337.0, 86.82, 87.0], + "iscrowd": 0 + }, + { + "id": 83, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1292.0, 3390.0, 1389.0, 3390.0, 1389.0, 3484.0, 1292.0, 3484.0, + 1292.0, 3390.0 + ] + ], + "area": 9118.0, + "bbox": [1292.0, 3390.0, 97.0, 94.0], + "iscrowd": 0 + }, + { + "id": 84, + "image_id": 8, + "category_id": 3, + "segmentation": [[1635.5, 1870.0, 1602.0, 1929.0, 1669.0, 1929.0]], + "area": 1985.0, + "bbox": [1602.0, 1870.0, 67.0, 59.0], + "iscrowd": 0 + }, + { + "id": 85, + "image_id": 8, + "category_id": 3, + "segmentation": [[209.5, 1735.0, 179.0, 1788.0, 240.0, 1788.0]], + "area": 1623.0, + "bbox": [179.0, 1735.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 86, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 350.0, 2657.0, 435.0, 2657.0, 435.0, 2724.0, 350.0, 2724.0, 350.0, + 2657.0 + ] + ], + "area": 5695.0, + "bbox": [350.0, 2657.0, 85.0, 67.0], + "iscrowd": 0 + }, + { + "id": 87, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1087.0, 2885.0, 1156.0, 2885.0, 1156.0, 2948.0, 1087.0, 2948.0, + 1087.0, 2885.0 + ] + ], + "area": 4347.0, + "bbox": [1087.0, 2885.0, 69.0, 63.0], + "iscrowd": 0 + }, + { + "id": 88, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 830.5, 2306.0, 834.95, 2305.72, 839.33, 2304.88, 843.57, 2303.51, + 847.6, 2301.61, 851.37, 2299.22, 854.8, 2296.38, 857.85, 2293.13, + 860.47, 2289.52, 862.62, 2285.62, 864.26, 2281.47, 865.37, 2277.15, + 865.93, 2272.73, 865.93, 2268.27, 865.37, 2263.85, 864.26, 2259.53, + 862.62, 2255.38, 860.47, 2251.48, 857.85, 2247.87, 854.8, 2244.62, + 851.37, 2241.78, 847.6, 2239.39, 843.57, 2237.49, 839.33, 2236.12, + 834.95, 2235.28, 830.5, 2235.0, 826.05, 2235.28, 821.67, 2236.12, + 817.43, 2237.49, 813.4, 2239.39, 809.63, 2241.78, 806.2, 2244.62, + 803.15, 2247.87, 800.53, 2251.48, 798.38, 2255.38, 796.74, 2259.53, + 795.63, 2263.85, 795.07, 2268.27, 795.07, 2272.73, 795.63, 2277.15, + 796.74, 2281.47, 798.38, 2285.62, 800.53, 2289.52, 803.15, 2293.13, + 806.2, 2296.38, 809.63, 2299.22, 813.4, 2301.61, 817.43, 2303.51, + 821.67, 2304.88, 826.05, 2305.72 + ] + ], + "area": 3956.0, + "bbox": [795.07, 2235.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 89, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2776.0, 1783.0, 2863.0, 1783.0, 2863.0, 1870.0, 2776.0, 1870.0, + 2776.0, 1783.0 + ] + ], + "area": 7569.0, + "bbox": [2776.0, 1783.0, 87.0, 87.0], + "iscrowd": 0 + }, + { + "id": 90, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2759.0, 3351.0, 2844.0, 3351.0, 2844.0, 3418.0, 2759.0, 3418.0, + 2759.0, 3351.0 + ] + ], + "area": 5695.0, + "bbox": [2759.0, 3351.0, 85.0, 67.0], + "iscrowd": 0 + }, + { + "id": 91, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [126.0, 933.0, 205.0, 933.0, 205.0, 1010.0, 126.0, 1010.0, 126.0, 933.0] + ], + "area": 6083.0, + "bbox": [126.0, 933.0, 79.0, 77.0], + "iscrowd": 0 + }, + { + "id": 92, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2917.0, 698.0, 2978.0, 698.0, 2978.0, 758.0, 2917.0, 758.0, 2917.0, + 698.0 + ] + ], + "area": 3660.0, + "bbox": [2917.0, 698.0, 61.0, 60.0], + "iscrowd": 0 + }, + { + "id": 93, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1617.0, 2444.0, 1680.0, 2444.0, 1680.0, 2519.0, 1617.0, 2519.0, + 1617.0, 2444.0 + ] + ], + "area": 4725.0, + "bbox": [1617.0, 2444.0, 63.0, 75.0], + "iscrowd": 0 + }, + { + "id": 94, + "image_id": 8, + "category_id": 3, + "segmentation": [[3035.5, 481.0, 3005.0, 534.0, 3066.0, 534.0]], + "area": 1623.0, + "bbox": [3005.0, 481.0, 61.0, 53.0], + "iscrowd": 0 + }, + { + "id": 95, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1494.0, 3399.5, 1493.75, 3403.45, 1493.01, 3407.33, 1491.79, 3411.1, + 1490.1, 3414.68, 1487.98, 3418.02, 1485.46, 3421.06, 1482.58, 3423.77, + 1479.38, 3426.1, 1475.91, 3428.0, 1472.23, 3429.46, 1468.4, 3430.44, + 1464.48, 3430.94, 1460.52, 3430.94, 1456.6, 3430.44, 1452.77, 3429.46, + 1449.09, 3428.0, 1445.62, 3426.1, 1442.42, 3423.77, 1439.54, 3421.06, + 1437.02, 3418.02, 1434.9, 3414.68, 1433.21, 3411.1, 1431.99, 3407.33, + 1431.25, 3403.45, 1431.0, 3399.5, 1431.25, 3395.55, 1431.99, 3391.67, + 1433.21, 3387.9, 1434.9, 3384.32, 1437.02, 3380.98, 1439.54, 3377.94, + 1442.42, 3375.23, 1445.62, 3372.9, 1449.09, 3371.0, 1452.77, 3369.54, + 1456.6, 3368.56, 1460.52, 3368.06, 1464.48, 3368.06, 1468.4, 3368.56, + 1472.23, 3369.54, 1475.91, 3371.0, 1479.38, 3372.9, 1482.58, 3375.23, + 1485.46, 3377.94, 1487.98, 3380.98, 1490.1, 3384.32, 1491.79, 3387.9, + 1493.01, 3391.67, 1493.75, 3395.55 + ] + ], + "area": 3122.0, + "bbox": [1431.0, 3368.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 96, + "image_id": 8, + "category_id": 3, + "segmentation": [[2740.0, 3123.0, 2705.0, 3184.0, 2775.0, 3184.0]], + "area": 2142.0, + "bbox": [2705.0, 3123.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 97, + "image_id": 8, + "category_id": 3, + "segmentation": [[485.5, 3113.0, 438.0, 3196.0, 533.0, 3196.0]], + "area": 3952.0, + "bbox": [438.0, 3113.0, 95.0, 83.0], + "iscrowd": 0 + }, + { + "id": 98, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2194.0, 1937.5, 2193.63, 1943.45, 2192.51, 1949.31, 2190.66, 1954.99, + 2188.12, 1960.38, 2184.93, 1965.42, 2181.13, 1970.02, 2176.78, 1974.1, + 2171.95, 1977.61, 2166.72, 1980.48, 2161.18, 1982.68, 2155.4, 1984.16, + 2149.48, 1984.91, 2143.52, 1984.91, 2137.6, 1984.16, 2131.82, 1982.68, + 2126.28, 1980.48, 2121.05, 1977.61, 2116.22, 1974.1, 2111.87, 1970.02, + 2108.07, 1965.42, 2104.88, 1960.38, 2102.34, 1954.99, 2100.49, + 1949.31, 2099.37, 1943.45, 2099.0, 1937.5, 2099.37, 1931.55, 2100.49, + 1925.69, 2102.34, 1920.01, 2104.88, 1914.62, 2108.07, 1909.58, + 2111.87, 1904.98, 2116.22, 1900.9, 2121.05, 1897.39, 2126.28, 1894.52, + 2131.82, 1892.32, 2137.6, 1890.84, 2143.52, 1890.09, 2149.48, 1890.09, + 2155.4, 1890.84, 2161.18, 1892.32, 2166.72, 1894.52, 2171.95, 1897.39, + 2176.78, 1900.9, 2181.13, 1904.98, 2184.93, 1909.58, 2188.12, 1914.62, + 2190.66, 1920.01, 2192.51, 1925.69, 2193.63, 1931.55 + ] + ], + "area": 7083.0, + "bbox": [2099.0, 1890.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 99, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3310.0, 3246.0, 3360.0, 3246.0, 3360.0, 3335.0, 3310.0, 3335.0, + 3310.0, 3246.0 + ] + ], + "area": 4450.0, + "bbox": [3310.0, 3246.0, 50.0, 89.0], + "iscrowd": 0 + }, + { + "id": 100, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2081.0, 2438.5, 2080.78, 2441.95, 2080.14, 2445.34, 2079.07, 2448.62, + 2077.6, 2451.75, 2075.75, 2454.66, 2073.55, 2457.33, 2071.03, 2459.69, + 2068.24, 2461.72, 2065.21, 2463.38, 2062.0, 2464.65, 2058.65, 2465.51, + 2055.23, 2465.95, 2051.77, 2465.95, 2048.35, 2465.51, 2045.0, 2464.65, + 2041.79, 2463.38, 2038.76, 2461.72, 2035.97, 2459.69, 2033.45, + 2457.33, 2031.25, 2454.66, 2029.4, 2451.75, 2027.93, 2448.62, 2026.86, + 2445.34, 2026.22, 2441.95, 2026.0, 2438.5, 2026.22, 2435.05, 2026.86, + 2431.66, 2027.93, 2428.38, 2029.4, 2425.25, 2031.25, 2422.34, 2033.45, + 2419.67, 2035.97, 2417.31, 2038.76, 2415.28, 2041.79, 2413.62, 2045.0, + 2412.35, 2048.35, 2411.49, 2051.77, 2411.05, 2055.23, 2411.05, + 2058.65, 2411.49, 2062.0, 2412.35, 2065.21, 2413.62, 2068.24, 2415.28, + 2071.03, 2417.31, 2073.55, 2419.67, 2075.75, 2422.34, 2077.6, 2425.25, + 2079.07, 2428.38, 2080.14, 2431.66, 2080.78, 2435.05 + ] + ], + "area": 2375.0, + "bbox": [2026.0, 2411.05, 55.0, 54.9], + "iscrowd": 0 + }, + { + "id": 101, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2242.0, 566.0, 2335.0, 566.0, 2335.0, 639.0, 2242.0, 639.0, 2242.0, + 566.0 + ] + ], + "area": 6789.0, + "bbox": [2242.0, 566.0, 93.0, 73.0], + "iscrowd": 0 + }, + { + "id": 102, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1896.5, 746.0, 1900.32, 745.76, 1904.09, 745.04, 1907.73, 743.86, + 1911.19, 742.23, 1914.43, 740.18, 1917.38, 737.73, 1920.0, 734.94, + 1922.25, 731.84, 1924.1, 728.49, 1925.51, 724.93, 1926.46, 721.22, + 1926.94, 717.42, 1926.94, 713.58, 1926.46, 709.78, 1925.51, 706.07, + 1924.1, 702.51, 1922.25, 699.16, 1920.0, 696.06, 1917.38, 693.27, + 1914.43, 690.82, 1911.19, 688.77, 1907.73, 687.14, 1904.09, 685.96, + 1900.32, 685.24, 1896.5, 685.0, 1892.68, 685.24, 1888.91, 685.96, + 1885.27, 687.14, 1881.81, 688.77, 1878.57, 690.82, 1875.62, 693.27, + 1873.0, 696.06, 1870.75, 699.16, 1868.9, 702.51, 1867.49, 706.07, + 1866.54, 709.78, 1866.06, 713.58, 1866.06, 717.42, 1866.54, 721.22, + 1867.49, 724.93, 1868.9, 728.49, 1870.75, 731.84, 1873.0, 734.94, + 1875.62, 737.73, 1878.57, 740.18, 1881.81, 742.23, 1885.27, 743.86, + 1888.91, 745.04, 1892.68, 745.76 + ] + ], + "area": 2916.0, + "bbox": [1866.06, 685.0, 60.88, 61.0], + "iscrowd": 0 + }, + { + "id": 103, + "image_id": 8, + "category_id": 3, + "segmentation": [[1186.5, 1974.0, 1158.0, 2024.0, 1215.0, 2024.0]], + "area": 1430.0, + "bbox": [1158.0, 1974.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 104, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2633.0, 613.0, 2718.0, 613.0, 2718.0, 686.0, 2633.0, 686.0, 2633.0, + 613.0 + ] + ], + "area": 6205.0, + "bbox": [2633.0, 613.0, 85.0, 73.0], + "iscrowd": 0 + }, + { + "id": 105, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3046.0, 1121.0, 3099.0, 1121.0, 3099.0, 1215.0, 3046.0, 1215.0, + 3046.0, 1121.0 + ] + ], + "area": 4982.0, + "bbox": [3046.0, 1121.0, 53.0, 94.0], + "iscrowd": 0 + }, + { + "id": 106, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2521.0, 3065.5, 2520.63, 3071.45, 2519.51, 3077.31, 2517.66, 3082.99, + 2515.12, 3088.38, 2511.93, 3093.42, 2508.13, 3098.02, 2503.78, 3102.1, + 2498.95, 3105.61, 2493.72, 3108.48, 2488.18, 3110.68, 2482.4, 3112.16, + 2476.48, 3112.91, 2470.52, 3112.91, 2464.6, 3112.16, 2458.82, 3110.68, + 2453.28, 3108.48, 2448.05, 3105.61, 2443.22, 3102.1, 2438.87, 3098.02, + 2435.07, 3093.42, 2431.88, 3088.38, 2429.34, 3082.99, 2427.49, + 3077.31, 2426.37, 3071.45, 2426.0, 3065.5, 2426.37, 3059.55, 2427.49, + 3053.69, 2429.34, 3048.01, 2431.88, 3042.62, 2435.07, 3037.58, + 2438.87, 3032.98, 2443.22, 3028.9, 2448.05, 3025.39, 2453.28, 3022.52, + 2458.82, 3020.32, 2464.6, 3018.84, 2470.52, 3018.09, 2476.48, 3018.09, + 2482.4, 3018.84, 2488.18, 3020.32, 2493.72, 3022.52, 2498.95, 3025.39, + 2503.78, 3028.9, 2508.13, 3032.98, 2511.93, 3037.58, 2515.12, 3042.62, + 2517.66, 3048.01, 2519.51, 3053.69, 2520.63, 3059.55 + ] + ], + "area": 7083.0, + "bbox": [2426.0, 3018.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 107, + "image_id": 8, + "category_id": 3, + "segmentation": [[558.0, 1052.0, 528.0, 1105.0, 588.0, 1105.0]], + "area": 1596.0, + "bbox": [528.0, 1052.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 108, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1133.0, 2105.0, 1222.0, 2105.0, 1222.0, 2189.0, 1133.0, 2189.0, + 1133.0, 2105.0 + ] + ], + "area": 7476.0, + "bbox": [1133.0, 2105.0, 89.0, 84.0], + "iscrowd": 0 + }, + { + "id": 109, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2488.0, 1437.0, 2545.0, 1437.0, 2545.0, 1513.0, 2488.0, 1513.0, + 2488.0, 1437.0 + ] + ], + "area": 4332.0, + "bbox": [2488.0, 1437.0, 57.0, 76.0], + "iscrowd": 0 + }, + { + "id": 110, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2318.5, 2834.0, 2321.82, 2833.79, 2325.09, 2833.17, 2328.26, 2832.14, + 2331.27, 2830.72, 2334.08, 2828.94, 2336.64, 2826.82, 2338.92, + 2824.39, 2340.87, 2821.7, 2342.48, 2818.78, 2343.7, 2815.69, 2344.53, + 2812.47, 2344.95, 2809.16, 2344.95, 2805.84, 2344.53, 2802.53, 2343.7, + 2799.31, 2342.48, 2796.22, 2340.87, 2793.3, 2338.92, 2790.61, 2336.64, + 2788.18, 2334.08, 2786.06, 2331.27, 2784.28, 2328.26, 2782.86, + 2325.09, 2781.83, 2321.82, 2781.21, 2318.5, 2781.0, 2315.18, 2781.21, + 2311.91, 2781.83, 2308.74, 2782.86, 2305.73, 2784.28, 2302.92, + 2786.06, 2300.36, 2788.18, 2298.08, 2790.61, 2296.13, 2793.3, 2294.52, + 2796.22, 2293.3, 2799.31, 2292.47, 2802.53, 2292.05, 2805.84, 2292.05, + 2809.16, 2292.47, 2812.47, 2293.3, 2815.69, 2294.52, 2818.78, 2296.13, + 2821.7, 2298.08, 2824.39, 2300.36, 2826.82, 2302.92, 2828.94, 2305.73, + 2830.72, 2308.74, 2832.14, 2311.91, 2833.17, 2315.18, 2833.79 + ] + ], + "area": 2205.0, + "bbox": [2292.05, 2781.0, 52.9, 53.0], + "iscrowd": 0 + }, + { + "id": 111, + "image_id": 8, + "category_id": 3, + "segmentation": [[501.0, 3379.0, 467.0, 3439.0, 535.0, 3439.0]], + "area": 2048.0, + "bbox": [467.0, 3379.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 112, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1214.5, 91.0, 1219.58, 90.68, 1224.57, 89.73, 1229.41, 88.16, 1234.01, + 85.99, 1238.31, 83.27, 1242.22, 80.02, 1245.71, 76.32, 1248.7, 72.2, + 1251.15, 67.74, 1253.02, 63.02, 1254.28, 58.09, 1254.92, 53.04, + 1254.92, 47.96, 1254.28, 42.91, 1253.02, 37.98, 1251.15, 33.26, + 1248.7, 28.8, 1245.71, 24.68, 1242.22, 20.98, 1238.31, 17.73, 1234.01, + 15.01, 1229.41, 12.84, 1224.57, 11.27, 1219.58, 10.32, 1214.5, 10.0, + 1209.42, 10.32, 1204.43, 11.27, 1199.59, 12.84, 1194.99, 15.01, + 1190.69, 17.73, 1186.78, 20.98, 1183.29, 24.68, 1180.3, 28.8, 1177.85, + 33.26, 1175.98, 37.98, 1174.72, 42.91, 1174.08, 47.96, 1174.08, 53.04, + 1174.72, 58.09, 1175.98, 63.02, 1177.85, 67.74, 1180.3, 72.2, 1183.29, + 76.32, 1186.78, 80.02, 1190.69, 83.27, 1194.99, 85.99, 1199.59, 88.16, + 1204.43, 89.73, 1209.42, 90.68 + ] + ], + "area": 5150.0, + "bbox": [1174.08, 10.0, 80.84, 81.0], + "iscrowd": 0 + }, + { + "id": 113, + "image_id": 8, + "category_id": 3, + "segmentation": [[2345.0, 3161.0, 2303.0, 3234.0, 2387.0, 3234.0]], + "area": 3074.0, + "bbox": [2303.0, 3161.0, 84.0, 73.0], + "iscrowd": 0 + }, + { + "id": 114, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 488.0, 2566.0, 567.0, 2566.0, 567.0, 2623.0, 488.0, 2623.0, 488.0, + 2566.0 + ] + ], + "area": 4503.0, + "bbox": [488.0, 2566.0, 79.0, 57.0], + "iscrowd": 0 + }, + { + "id": 115, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 367.0, 1863.0, 434.0, 1863.0, 434.0, 1930.0, 367.0, 1930.0, 367.0, + 1863.0 + ] + ], + "area": 4489.0, + "bbox": [367.0, 1863.0, 67.0, 67.0], + "iscrowd": 0 + }, + { + "id": 116, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 693.0, 1015.0, 765.0, 1015.0, 765.0, 1108.0, 693.0, 1108.0, 693.0, + 1015.0 + ] + ], + "area": 6696.0, + "bbox": [693.0, 1015.0, 72.0, 93.0], + "iscrowd": 0 + }, + { + "id": 117, + "image_id": 8, + "category_id": 3, + "segmentation": [[680.5, 1155.0, 646.0, 1215.0, 715.0, 1215.0]], + "area": 2078.0, + "bbox": [646.0, 1155.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 118, + "image_id": 8, + "category_id": 3, + "segmentation": [[1459.0, 1856.0, 1412.0, 1938.0, 1506.0, 1938.0]], + "area": 3864.0, + "bbox": [1412.0, 1856.0, 94.0, 82.0], + "iscrowd": 0 + }, + { + "id": 119, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3410.0, 1954.0, 3477.0, 1954.0, 3477.0, 2005.0, 3410.0, 2005.0, + 3410.0, 1954.0 + ] + ], + "area": 3417.0, + "bbox": [3410.0, 1954.0, 67.0, 51.0], + "iscrowd": 0 + }, + { + "id": 120, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3353.0, 2558.5, 3352.77, 2562.2, 3352.07, 2565.84, 3350.93, 2569.36, + 3349.35, 2572.71, 3347.37, 2575.84, 3345.0, 2578.69, 3342.3, 2581.23, + 3339.31, 2583.41, 3336.06, 2585.19, 3332.62, 2586.56, 3329.03, + 2587.48, 3325.35, 2587.94, 3321.65, 2587.94, 3317.97, 2587.48, + 3314.38, 2586.56, 3310.94, 2585.19, 3307.69, 2583.41, 3304.7, 2581.23, + 3302.0, 2578.69, 3299.63, 2575.84, 3297.65, 2572.71, 3296.07, 2569.36, + 3294.93, 2565.84, 3294.23, 2562.2, 3294.0, 2558.5, 3294.23, 2554.8, + 3294.93, 2551.16, 3296.07, 2547.64, 3297.65, 2544.29, 3299.63, + 2541.16, 3302.0, 2538.31, 3304.7, 2535.77, 3307.69, 2533.59, 3310.94, + 2531.81, 3314.38, 2530.44, 3317.97, 2529.52, 3321.65, 2529.06, + 3325.35, 2529.06, 3329.03, 2529.52, 3332.62, 2530.44, 3336.06, + 2531.81, 3339.31, 2533.59, 3342.3, 2535.77, 3345.0, 2538.31, 3347.37, + 2541.16, 3349.35, 2544.29, 3350.93, 2547.64, 3352.07, 2551.16, + 3352.77, 2554.8 + ] + ], + "area": 2729.0, + "bbox": [3294.0, 2529.06, 59.0, 58.88], + "iscrowd": 0 + }, + { + "id": 121, + "image_id": 8, + "category_id": 3, + "segmentation": [[977.0, 2182.0, 929.0, 2266.0, 1025.0, 2266.0]], + "area": 4032.0, + "bbox": [929.0, 2182.0, 96.0, 84.0], + "iscrowd": 0 + }, + { + "id": 122, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1298.0, 2848.0, 1348.0, 2848.0, 1348.0, 2945.0, 1298.0, 2945.0, + 1298.0, 2848.0 + ] + ], + "area": 4850.0, + "bbox": [1298.0, 2848.0, 50.0, 97.0], + "iscrowd": 0 + }, + { + "id": 123, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 921.0, 2664.0, 988.0, 2664.0, 988.0, 2737.0, 921.0, 2737.0, 921.0, + 2664.0 + ] + ], + "area": 4891.0, + "bbox": [921.0, 2664.0, 67.0, 73.0], + "iscrowd": 0 + }, + { + "id": 124, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3055.0, 2499.0, 3126.0, 2499.0, 3126.0, 2595.0, 3055.0, 2595.0, + 3055.0, 2499.0 + ] + ], + "area": 6816.0, + "bbox": [3055.0, 2499.0, 71.0, 96.0], + "iscrowd": 0 + }, + { + "id": 125, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2527.0, 2853.0, 2620.0, 2853.0, 2620.0, 2945.0, 2527.0, 2945.0, + 2527.0, 2853.0 + ] + ], + "area": 8556.0, + "bbox": [2527.0, 2853.0, 93.0, 92.0], + "iscrowd": 0 + }, + { + "id": 126, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2647.0, 2375.5, 2646.71, 2380.07, 2645.85, 2384.58, 2644.44, 2388.94, + 2642.49, 2393.08, 2640.03, 2396.95, 2637.11, 2400.49, 2633.77, + 2403.62, 2630.06, 2406.32, 2626.04, 2408.53, 2621.78, 2410.21, + 2617.34, 2411.35, 2612.79, 2411.93, 2608.21, 2411.93, 2603.66, + 2411.35, 2599.22, 2410.21, 2594.96, 2408.53, 2590.94, 2406.32, + 2587.23, 2403.62, 2583.89, 2400.49, 2580.97, 2396.95, 2578.51, + 2393.08, 2576.56, 2388.94, 2575.15, 2384.58, 2574.29, 2380.07, 2574.0, + 2375.5, 2574.29, 2370.93, 2575.15, 2366.42, 2576.56, 2362.06, 2578.51, + 2357.92, 2580.97, 2354.05, 2583.89, 2350.51, 2587.23, 2347.38, + 2590.94, 2344.68, 2594.96, 2342.47, 2599.22, 2340.79, 2603.66, + 2339.65, 2608.21, 2339.07, 2612.79, 2339.07, 2617.34, 2339.65, + 2621.78, 2340.79, 2626.04, 2342.47, 2630.06, 2344.68, 2633.77, + 2347.38, 2637.11, 2350.51, 2640.03, 2354.05, 2642.49, 2357.92, + 2644.44, 2362.06, 2645.85, 2366.42, 2646.71, 2370.93 + ] + ], + "area": 4187.0, + "bbox": [2574.0, 2339.07, 73.0, 72.86], + "iscrowd": 0 + }, + { + "id": 127, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1668.0, 199.0, 1752.0, 199.0, 1752.0, 279.0, 1668.0, 279.0, 1668.0, + 199.0 + ] + ], + "area": 6720.0, + "bbox": [1668.0, 199.0, 84.0, 80.0], + "iscrowd": 0 + }, + { + "id": 128, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2522.0, 1856.5, 2521.67, 1861.7, 2520.7, 1866.82, 2519.09, 1871.78, + 2516.87, 1876.49, 2514.07, 1880.89, 2510.75, 1884.91, 2506.95, + 1888.48, 2502.74, 1891.54, 2498.17, 1894.05, 2493.32, 1895.97, + 2488.28, 1897.26, 2483.11, 1897.92, 2477.89, 1897.92, 2472.72, + 1897.26, 2467.68, 1895.97, 2462.83, 1894.05, 2458.26, 1891.54, + 2454.05, 1888.48, 2450.25, 1884.91, 2446.93, 1880.89, 2444.13, + 1876.49, 2441.91, 1871.78, 2440.3, 1866.82, 2439.33, 1861.7, 2439.0, + 1856.5, 2439.33, 1851.3, 2440.3, 1846.18, 2441.91, 1841.22, 2444.13, + 1836.51, 2446.93, 1832.11, 2450.25, 1828.09, 2454.05, 1824.52, + 2458.26, 1821.46, 2462.83, 1818.95, 2467.68, 1817.03, 2472.72, + 1815.74, 2477.89, 1815.08, 2483.11, 1815.08, 2488.28, 1815.74, + 2493.32, 1817.03, 2498.17, 1818.95, 2502.74, 1821.46, 2506.95, + 1824.52, 2510.75, 1828.09, 2514.07, 1832.11, 2516.87, 1836.51, + 2519.09, 1841.22, 2520.7, 1846.18, 2521.67, 1851.3 + ] + ], + "area": 5394.0, + "bbox": [2439.0, 1815.08, 83.0, 82.84], + "iscrowd": 0 + }, + { + "id": 129, + "image_id": 8, + "category_id": 3, + "segmentation": [[3429.5, 1072.0, 3391.0, 1139.0, 3468.0, 1139.0]], + "area": 2588.0, + "bbox": [3391.0, 1072.0, 77.0, 67.0], + "iscrowd": 0 + }, + { + "id": 130, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2146.0, 1194.5, 2145.63, 1200.33, 2144.54, 1206.06, 2142.73, 1211.62, + 2140.25, 1216.9, 2137.12, 1221.83, 2133.4, 1226.33, 2129.14, 1230.33, + 2124.42, 1233.76, 2119.3, 1236.57, 2113.87, 1238.72, 2108.21, 1240.18, + 2102.42, 1240.91, 2096.58, 1240.91, 2090.79, 1240.18, 2085.13, + 1238.72, 2079.7, 1236.57, 2074.58, 1233.76, 2069.86, 1230.33, 2065.6, + 1226.33, 2061.88, 1221.83, 2058.75, 1216.9, 2056.27, 1211.62, 2054.46, + 1206.06, 2053.37, 1200.33, 2053.0, 1194.5, 2053.37, 1188.67, 2054.46, + 1182.94, 2056.27, 1177.38, 2058.75, 1172.1, 2061.88, 1167.17, 2065.6, + 1162.67, 2069.86, 1158.67, 2074.58, 1155.24, 2079.7, 1152.43, 2085.13, + 1150.28, 2090.79, 1148.82, 2096.58, 1148.09, 2102.42, 1148.09, + 2108.21, 1148.82, 2113.87, 1150.28, 2119.3, 1152.43, 2124.42, 1155.24, + 2129.14, 1158.67, 2133.4, 1162.67, 2137.12, 1167.17, 2140.25, 1172.1, + 2142.73, 1177.38, 2144.54, 1182.94, 2145.63, 1188.67 + ] + ], + "area": 6782.0, + "bbox": [2053.0, 1148.09, 93.0, 92.82], + "iscrowd": 0 + }, + { + "id": 131, + "image_id": 8, + "category_id": 3, + "segmentation": [[2571.0, 2974.0, 2535.0, 3037.0, 2607.0, 3037.0]], + "area": 2268.0, + "bbox": [2535.0, 2974.0, 72.0, 63.0], + "iscrowd": 0 + }, + { + "id": 132, + "image_id": 8, + "category_id": 3, + "segmentation": [[2736.0, 2203.0, 2702.0, 2263.0, 2770.0, 2263.0]], + "area": 2048.0, + "bbox": [2702.0, 2203.0, 68.0, 60.0], + "iscrowd": 0 + }, + { + "id": 133, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3191.5, 3474.0, 3195.95, 3473.72, 3200.33, 3472.88, 3204.57, 3471.51, + 3208.6, 3469.61, 3212.37, 3467.22, 3215.8, 3464.38, 3218.85, 3461.13, + 3221.47, 3457.52, 3223.62, 3453.62, 3225.26, 3449.47, 3226.37, + 3445.15, 3226.93, 3440.73, 3226.93, 3436.27, 3226.37, 3431.85, + 3225.26, 3427.53, 3223.62, 3423.38, 3221.47, 3419.48, 3218.85, + 3415.87, 3215.8, 3412.62, 3212.37, 3409.78, 3208.6, 3407.39, 3204.57, + 3405.49, 3200.33, 3404.12, 3195.95, 3403.28, 3191.5, 3403.0, 3187.05, + 3403.28, 3182.67, 3404.12, 3178.43, 3405.49, 3174.4, 3407.39, 3170.63, + 3409.78, 3167.2, 3412.62, 3164.15, 3415.87, 3161.53, 3419.48, 3159.38, + 3423.38, 3157.74, 3427.53, 3156.63, 3431.85, 3156.07, 3436.27, + 3156.07, 3440.73, 3156.63, 3445.15, 3157.74, 3449.47, 3159.38, + 3453.62, 3161.53, 3457.52, 3164.15, 3461.13, 3167.2, 3464.38, 3170.63, + 3467.22, 3174.4, 3469.61, 3178.43, 3471.51, 3182.67, 3472.88, 3187.05, + 3473.72 + ] + ], + "area": 3956.0, + "bbox": [3156.07, 3403.0, 70.86, 71.0], + "iscrowd": 0 + }, + { + "id": 134, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 325.0, 2736.0, 416.0, 2736.0, 416.0, 2817.0, 325.0, 2817.0, 325.0, + 2736.0 + ] + ], + "area": 7371.0, + "bbox": [325.0, 2736.0, 91.0, 81.0], + "iscrowd": 0 + }, + { + "id": 135, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 432.0, 1150.0, 503.0, 1150.0, 503.0, 1213.0, 432.0, 1213.0, 432.0, + 1150.0 + ] + ], + "area": 4473.0, + "bbox": [432.0, 1150.0, 71.0, 63.0], + "iscrowd": 0 + }, + { + "id": 136, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 268.0, 1618.0, 349.0, 1618.0, 349.0, 1699.0, 268.0, 1699.0, 268.0, + 1618.0 + ] + ], + "area": 6561.0, + "bbox": [268.0, 1618.0, 81.0, 81.0], + "iscrowd": 0 + }, + { + "id": 137, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1067.0, 965.0, 1132.0, 965.0, 1132.0, 1028.0, 1067.0, 1028.0, 1067.0, + 965.0 + ] + ], + "area": 4095.0, + "bbox": [1067.0, 965.0, 65.0, 63.0], + "iscrowd": 0 + }, + { + "id": 138, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2230.0, 601.5, 2229.65, 607.08, 2228.6, 612.57, 2226.88, 617.88, + 2224.5, 622.94, 2221.5, 627.66, 2217.94, 631.96, 2213.87, 635.79, + 2209.34, 639.07, 2204.45, 641.76, 2199.25, 643.82, 2193.84, 645.21, + 2188.29, 645.91, 2182.71, 645.91, 2177.16, 645.21, 2171.75, 643.82, + 2166.55, 641.76, 2161.66, 639.07, 2157.13, 635.79, 2153.06, 631.96, + 2149.5, 627.66, 2146.5, 622.94, 2144.12, 617.88, 2142.4, 612.57, + 2141.35, 607.08, 2141.0, 601.5, 2141.35, 595.92, 2142.4, 590.43, + 2144.12, 585.12, 2146.5, 580.06, 2149.5, 575.34, 2153.06, 571.04, + 2157.13, 567.21, 2161.66, 563.93, 2166.55, 561.24, 2171.75, 559.18, + 2177.16, 557.79, 2182.71, 557.09, 2188.29, 557.09, 2193.84, 557.79, + 2199.25, 559.18, 2204.45, 561.24, 2209.34, 563.93, 2213.87, 567.21, + 2217.94, 571.04, 2221.5, 575.34, 2224.5, 580.06, 2226.88, 585.12, + 2228.6, 590.43, 2229.65, 595.92 + ] + ], + "area": 6208.0, + "bbox": [2141.0, 557.09, 89.0, 88.82], + "iscrowd": 0 + }, + { + "id": 139, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1642.0, 46.5, 1641.74, 50.7, 1640.95, 54.83, 1639.65, 58.83, 1637.86, + 62.64, 1635.6, 66.19, 1632.92, 69.43, 1629.85, 72.31, 1626.45, 74.78, + 1622.76, 76.81, 1618.85, 78.36, 1614.78, 79.41, 1610.6, 79.93, 1606.4, + 79.93, 1602.22, 79.41, 1598.15, 78.36, 1594.24, 76.81, 1590.55, 74.78, + 1587.15, 72.31, 1584.08, 69.43, 1581.4, 66.19, 1579.14, 62.64, + 1577.35, 58.83, 1576.05, 54.83, 1575.26, 50.7, 1575.0, 46.5, 1575.26, + 42.3, 1576.05, 38.17, 1577.35, 34.17, 1579.14, 30.36, 1581.4, 26.81, + 1584.08, 23.57, 1587.15, 20.69, 1590.55, 18.22, 1594.24, 16.19, + 1598.15, 14.64, 1602.22, 13.59, 1606.4, 13.07, 1610.6, 13.07, 1614.78, + 13.59, 1618.85, 14.64, 1622.76, 16.19, 1626.45, 18.22, 1629.85, 20.69, + 1632.92, 23.57, 1635.6, 26.81, 1637.86, 30.36, 1639.65, 34.17, + 1640.95, 38.17, 1641.74, 42.3 + ] + ], + "area": 3519.0, + "bbox": [1575.0, 13.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 140, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1702.0, 773.0, 1795.0, 773.0, 1795.0, 872.0, 1702.0, 872.0, 1702.0, + 773.0 + ] + ], + "area": 9207.0, + "bbox": [1702.0, 773.0, 93.0, 99.0], + "iscrowd": 0 + }, + { + "id": 141, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2118.0, 1528.0, 2181.0, 1528.0, 2181.0, 1587.0, 2118.0, 1587.0, + 2118.0, 1528.0 + ] + ], + "area": 3717.0, + "bbox": [2118.0, 1528.0, 63.0, 59.0], + "iscrowd": 0 + }, + { + "id": 142, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3208.0, 575.5, 3207.68, 580.58, 3206.73, 585.57, 3205.16, 590.41, + 3202.99, 595.01, 3200.27, 599.31, 3197.02, 603.22, 3193.32, 606.71, + 3189.2, 609.7, 3184.74, 612.15, 3180.02, 614.02, 3175.09, 615.28, + 3170.04, 615.92, 3164.96, 615.92, 3159.91, 615.28, 3154.98, 614.02, + 3150.26, 612.15, 3145.8, 609.7, 3141.68, 606.71, 3137.98, 603.22, + 3134.73, 599.31, 3132.01, 595.01, 3129.84, 590.41, 3128.27, 585.57, + 3127.32, 580.58, 3127.0, 575.5, 3127.32, 570.42, 3128.27, 565.43, + 3129.84, 560.59, 3132.01, 555.99, 3134.73, 551.69, 3137.98, 547.78, + 3141.68, 544.29, 3145.8, 541.3, 3150.26, 538.85, 3154.98, 536.98, + 3159.91, 535.72, 3164.96, 535.08, 3170.04, 535.08, 3175.09, 535.72, + 3180.02, 536.98, 3184.74, 538.85, 3189.2, 541.3, 3193.32, 544.29, + 3197.02, 547.78, 3200.27, 551.69, 3202.99, 555.99, 3205.16, 560.59, + 3206.73, 565.43, 3207.68, 570.42 + ] + ], + "area": 5149.0, + "bbox": [3127.0, 535.08, 81.0, 80.84], + "iscrowd": 0 + }, + { + "id": 143, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1545.0, 749.0, 1641.0, 749.0, 1641.0, 847.0, 1545.0, 847.0, 1545.0, + 749.0 + ] + ], + "area": 9408.0, + "bbox": [1545.0, 749.0, 96.0, 98.0], + "iscrowd": 0 + }, + { + "id": 144, + "image_id": 8, + "category_id": 3, + "segmentation": [[934.5, 1120.0, 909.0, 1165.0, 960.0, 1165.0]], + "area": 1154.0, + "bbox": [909.0, 1120.0, 51.0, 45.0], + "iscrowd": 0 + }, + { + "id": 145, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3422.0, 3182.0, 3482.0, 3182.0, 3482.0, 3232.0, 3422.0, 3232.0, + 3422.0, 3182.0 + ] + ], + "area": 3000.0, + "bbox": [3422.0, 3182.0, 60.0, 50.0], + "iscrowd": 0 + }, + { + "id": 146, + "image_id": 8, + "category_id": 3, + "segmentation": [[2436.5, 2088.0, 2397.0, 2157.0, 2476.0, 2157.0]], + "area": 2734.0, + "bbox": [2397.0, 2088.0, 79.0, 69.0], + "iscrowd": 0 + }, + { + "id": 147, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2643.0, 519.0, 2734.0, 519.0, 2734.0, 594.0, 2643.0, 594.0, 2643.0, + 519.0 + ] + ], + "area": 6825.0, + "bbox": [2643.0, 519.0, 91.0, 75.0], + "iscrowd": 0 + }, + { + "id": 148, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1222.0, 370.0, 1293.0, 370.0, 1293.0, 451.0, 1222.0, 451.0, 1222.0, + 370.0 + ] + ], + "area": 5751.0, + "bbox": [1222.0, 370.0, 71.0, 81.0], + "iscrowd": 0 + }, + { + "id": 149, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3342.0, 2242.5, 3341.66, 2247.95, 3340.63, 2253.32, 3338.95, 2258.51, + 3336.62, 2263.46, 3333.69, 2268.07, 3330.21, 2272.28, 3326.23, + 2276.02, 3321.81, 2279.23, 3317.02, 2281.86, 3311.94, 2283.87, + 3306.65, 2285.23, 3301.23, 2285.91, 3295.77, 2285.91, 3290.35, + 2285.23, 3285.06, 2283.87, 3279.98, 2281.86, 3275.19, 2279.23, + 3270.77, 2276.02, 3266.79, 2272.28, 3263.31, 2268.07, 3260.38, + 2263.46, 3258.05, 2258.51, 3256.37, 2253.32, 3255.34, 2247.95, 3255.0, + 2242.5, 3255.34, 2237.05, 3256.37, 2231.68, 3258.05, 2226.49, 3260.38, + 2221.54, 3263.31, 2216.93, 3266.79, 2212.72, 3270.77, 2208.98, + 3275.19, 2205.77, 3279.98, 2203.14, 3285.06, 2201.13, 3290.35, + 2199.77, 3295.77, 2199.09, 3301.23, 2199.09, 3306.65, 2199.77, + 3311.94, 2201.13, 3317.02, 2203.14, 3321.81, 2205.77, 3326.23, + 2208.98, 3330.21, 2212.72, 3333.69, 2216.93, 3336.62, 2221.54, + 3338.95, 2226.49, 3340.63, 2231.68, 3341.66, 2237.05 + ] + ], + "area": 5927.0, + "bbox": [3255.0, 2199.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 150, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1091.0, 1764.0, 1180.0, 1764.0, 1180.0, 1838.0, 1091.0, 1838.0, + 1091.0, 1764.0 + ] + ], + "area": 6586.0, + "bbox": [1091.0, 1764.0, 89.0, 74.0], + "iscrowd": 0 + }, + { + "id": 151, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2594.0, 1583.0, 2667.0, 1583.0, 2667.0, 1676.0, 2594.0, 1676.0, + 2594.0, 1583.0 + ] + ], + "area": 6789.0, + "bbox": [2594.0, 1583.0, 73.0, 93.0], + "iscrowd": 0 + }, + { + "id": 152, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1898.0, 344.0, 1965.0, 344.0, 1965.0, 428.0, 1898.0, 428.0, 1898.0, + 344.0 + ] + ], + "area": 5628.0, + "bbox": [1898.0, 344.0, 67.0, 84.0], + "iscrowd": 0 + }, + { + "id": 153, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 575.5, 3135.0, 580.7, 3134.67, 585.82, 3133.7, 590.78, 3132.09, + 595.49, 3129.87, 599.89, 3127.07, 603.91, 3123.75, 607.48, 3119.95, + 610.54, 3115.74, 613.05, 3111.17, 614.97, 3106.32, 616.26, 3101.28, + 616.92, 3096.11, 616.92, 3090.89, 616.26, 3085.72, 614.97, 3080.68, + 613.05, 3075.83, 610.54, 3071.26, 607.48, 3067.05, 603.91, 3063.25, + 599.89, 3059.93, 595.49, 3057.13, 590.78, 3054.91, 585.82, 3053.3, + 580.7, 3052.33, 575.5, 3052.0, 570.3, 3052.33, 565.18, 3053.3, 560.22, + 3054.91, 555.51, 3057.13, 551.11, 3059.93, 547.09, 3063.25, 543.52, + 3067.05, 540.46, 3071.26, 537.95, 3075.83, 536.03, 3080.68, 534.74, + 3085.72, 534.08, 3090.89, 534.08, 3096.11, 534.74, 3101.28, 536.03, + 3106.32, 537.95, 3111.17, 540.46, 3115.74, 543.52, 3119.95, 547.09, + 3123.75, 551.11, 3127.07, 555.51, 3129.87, 560.22, 3132.09, 565.18, + 3133.7, 570.3, 3134.67 + ] + ], + "area": 5392.0, + "bbox": [534.08, 3052.0, 82.84, 83.0], + "iscrowd": 0 + }, + { + "id": 154, + "image_id": 8, + "category_id": 3, + "segmentation": [[1939.0, 197.0, 1908.0, 251.0, 1970.0, 251.0]], + "area": 1680.0, + "bbox": [1908.0, 197.0, 62.0, 54.0], + "iscrowd": 0 + }, + { + "id": 155, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2691.0, 1060.5, 2690.8, 1063.7, 2690.2, 1066.84, 2689.21, 1069.89, + 2687.85, 1072.78, 2686.13, 1075.49, 2684.09, 1077.96, 2681.75, + 1080.15, 2679.16, 1082.03, 2676.36, 1083.57, 2673.38, 1084.75, + 2670.28, 1085.55, 2667.1, 1085.95, 2663.9, 1085.95, 2660.72, 1085.55, + 2657.62, 1084.75, 2654.64, 1083.57, 2651.84, 1082.03, 2649.25, + 1080.15, 2646.91, 1077.96, 2644.87, 1075.49, 2643.15, 1072.78, + 2641.79, 1069.89, 2640.8, 1066.84, 2640.2, 1063.7, 2640.0, 1060.5, + 2640.2, 1057.3, 2640.8, 1054.16, 2641.79, 1051.11, 2643.15, 1048.22, + 2644.87, 1045.51, 2646.91, 1043.04, 2649.25, 1040.85, 2651.84, + 1038.97, 2654.64, 1037.43, 2657.62, 1036.25, 2660.72, 1035.45, 2663.9, + 1035.05, 2667.1, 1035.05, 2670.28, 1035.45, 2673.38, 1036.25, 2676.36, + 1037.43, 2679.16, 1038.97, 2681.75, 1040.85, 2684.09, 1043.04, + 2686.13, 1045.51, 2687.85, 1048.22, 2689.21, 1051.11, 2690.2, 1054.16, + 2690.8, 1057.3 + ] + ], + "area": 2037.0, + "bbox": [2640.0, 1035.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 156, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1803.0, 1889.0, 1870.0, 1889.0, 1870.0, 1966.0, 1803.0, 1966.0, + 1803.0, 1889.0 + ] + ], + "area": 5159.0, + "bbox": [1803.0, 1889.0, 67.0, 77.0], + "iscrowd": 0 + }, + { + "id": 157, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2791.0, 1531.5, 2790.8, 1534.7, 2790.2, 1537.84, 2789.21, 1540.89, + 2787.85, 1543.78, 2786.13, 1546.49, 2784.09, 1548.96, 2781.75, + 1551.15, 2779.16, 1553.03, 2776.36, 1554.57, 2773.38, 1555.75, + 2770.28, 1556.55, 2767.1, 1556.95, 2763.9, 1556.95, 2760.72, 1556.55, + 2757.62, 1555.75, 2754.64, 1554.57, 2751.84, 1553.03, 2749.25, + 1551.15, 2746.91, 1548.96, 2744.87, 1546.49, 2743.15, 1543.78, + 2741.79, 1540.89, 2740.8, 1537.84, 2740.2, 1534.7, 2740.0, 1531.5, + 2740.2, 1528.3, 2740.8, 1525.16, 2741.79, 1522.11, 2743.15, 1519.22, + 2744.87, 1516.51, 2746.91, 1514.04, 2749.25, 1511.85, 2751.84, + 1509.97, 2754.64, 1508.43, 2757.62, 1507.25, 2760.72, 1506.45, 2763.9, + 1506.05, 2767.1, 1506.05, 2770.28, 1506.45, 2773.38, 1507.25, 2776.36, + 1508.43, 2779.16, 1509.97, 2781.75, 1511.85, 2784.09, 1514.04, + 2786.13, 1516.51, 2787.85, 1519.22, 2789.21, 1522.11, 2790.2, 1525.16, + 2790.8, 1528.3 + ] + ], + "area": 2037.0, + "bbox": [2740.0, 1506.05, 51.0, 50.9], + "iscrowd": 0 + }, + { + "id": 158, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1853.0, 2393.0, 1950.0, 2393.0, 1950.0, 2490.0, 1853.0, 2490.0, + 1853.0, 2393.0 + ] + ], + "area": 9409.0, + "bbox": [1853.0, 2393.0, 97.0, 97.0], + "iscrowd": 0 + }, + { + "id": 159, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2081.0, 1948.5, 2080.76, 1952.32, 2080.04, 1956.09, 2078.86, 1959.73, + 2077.23, 1963.19, 2075.18, 1966.43, 2072.73, 1969.38, 2069.94, 1972.0, + 2066.84, 1974.25, 2063.49, 1976.1, 2059.93, 1977.51, 2056.22, 1978.46, + 2052.42, 1978.94, 2048.58, 1978.94, 2044.78, 1978.46, 2041.07, + 1977.51, 2037.51, 1976.1, 2034.16, 1974.25, 2031.06, 1972.0, 2028.27, + 1969.38, 2025.82, 1966.43, 2023.77, 1963.19, 2022.14, 1959.73, + 2020.96, 1956.09, 2020.24, 1952.32, 2020.0, 1948.5, 2020.24, 1944.68, + 2020.96, 1940.91, 2022.14, 1937.27, 2023.77, 1933.81, 2025.82, + 1930.57, 2028.27, 1927.62, 2031.06, 1925.0, 2034.16, 1922.75, 2037.51, + 1920.9, 2041.07, 1919.49, 2044.78, 1918.54, 2048.58, 1918.06, 2052.42, + 1918.06, 2056.22, 1918.54, 2059.93, 1919.49, 2063.49, 1920.9, 2066.84, + 1922.75, 2069.94, 1925.0, 2072.73, 1927.62, 2075.18, 1930.57, 2077.23, + 1933.81, 2078.86, 1937.27, 2080.04, 1940.91, 2080.76, 1944.68 + ] + ], + "area": 2915.0, + "bbox": [2020.0, 1918.06, 61.0, 60.88], + "iscrowd": 0 + }, + { + "id": 160, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [1982.0, 39.0, 2083.0, 39.0, 2083.0, 138.0, 1982.0, 138.0, 1982.0, 39.0] + ], + "area": 9999.0, + "bbox": [1982.0, 39.0, 101.0, 99.0], + "iscrowd": 0 + }, + { + "id": 161, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 905.0, 2061.0, 958.0, 2061.0, 958.0, 2114.0, 905.0, 2114.0, 905.0, + 2061.0 + ] + ], + "area": 2809.0, + "bbox": [905.0, 2061.0, 53.0, 53.0], + "iscrowd": 0 + }, + { + "id": 162, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1176.0, 1619.0, 1243.0, 1619.0, 1243.0, 1688.0, 1176.0, 1688.0, + 1176.0, 1619.0 + ] + ], + "area": 4623.0, + "bbox": [1176.0, 1619.0, 67.0, 69.0], + "iscrowd": 0 + }, + { + "id": 163, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2894.0, 1345.5, 2893.74, 1349.7, 2892.95, 1353.83, 2891.65, 1357.83, + 2889.86, 1361.64, 2887.6, 1365.19, 2884.92, 1368.43, 2881.85, 1371.31, + 2878.45, 1373.78, 2874.76, 1375.81, 2870.85, 1377.36, 2866.78, + 1378.41, 2862.6, 1378.93, 2858.4, 1378.93, 2854.22, 1378.41, 2850.15, + 1377.36, 2846.24, 1375.81, 2842.55, 1373.78, 2839.15, 1371.31, + 2836.08, 1368.43, 2833.4, 1365.19, 2831.14, 1361.64, 2829.35, 1357.83, + 2828.05, 1353.83, 2827.26, 1349.7, 2827.0, 1345.5, 2827.26, 1341.3, + 2828.05, 1337.17, 2829.35, 1333.17, 2831.14, 1329.36, 2833.4, 1325.81, + 2836.08, 1322.57, 2839.15, 1319.69, 2842.55, 1317.22, 2846.24, + 1315.19, 2850.15, 1313.64, 2854.22, 1312.59, 2858.4, 1312.07, 2862.6, + 1312.07, 2866.78, 1312.59, 2870.85, 1313.64, 2874.76, 1315.19, + 2878.45, 1317.22, 2881.85, 1319.69, 2884.92, 1322.57, 2887.6, 1325.81, + 2889.86, 1329.36, 2891.65, 1333.17, 2892.95, 1337.17, 2893.74, 1341.3 + ] + ], + "area": 3519.0, + "bbox": [2827.0, 1312.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 164, + "image_id": 8, + "category_id": 3, + "segmentation": [[1105.5, 519.0, 1071.0, 579.0, 1140.0, 579.0]], + "area": 2078.0, + "bbox": [1071.0, 519.0, 69.0, 60.0], + "iscrowd": 0 + }, + { + "id": 165, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1116.0, 306.0, 1179.0, 306.0, 1179.0, 378.0, 1116.0, 378.0, 1116.0, + 306.0 + ] + ], + "area": 4536.0, + "bbox": [1116.0, 306.0, 63.0, 72.0], + "iscrowd": 0 + }, + { + "id": 166, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1991.0, 3051.5, 1990.63, 3057.45, 1989.51, 3063.31, 1987.66, 3068.99, + 1985.12, 3074.38, 1981.93, 3079.42, 1978.13, 3084.02, 1973.78, 3088.1, + 1968.95, 3091.61, 1963.72, 3094.48, 1958.18, 3096.68, 1952.4, 3098.16, + 1946.48, 3098.91, 1940.52, 3098.91, 1934.6, 3098.16, 1928.82, 3096.68, + 1923.28, 3094.48, 1918.05, 3091.61, 1913.22, 3088.1, 1908.87, 3084.02, + 1905.07, 3079.42, 1901.88, 3074.38, 1899.34, 3068.99, 1897.49, + 3063.31, 1896.37, 3057.45, 1896.0, 3051.5, 1896.37, 3045.55, 1897.49, + 3039.69, 1899.34, 3034.01, 1901.88, 3028.62, 1905.07, 3023.58, + 1908.87, 3018.98, 1913.22, 3014.9, 1918.05, 3011.39, 1923.28, 3008.52, + 1928.82, 3006.32, 1934.6, 3004.84, 1940.52, 3004.09, 1946.48, 3004.09, + 1952.4, 3004.84, 1958.18, 3006.32, 1963.72, 3008.52, 1968.95, 3011.39, + 1973.78, 3014.9, 1978.13, 3018.98, 1981.93, 3023.58, 1985.12, 3028.62, + 1987.66, 3034.01, 1989.51, 3039.69, 1990.63, 3045.55 + ] + ], + "area": 7083.0, + "bbox": [1896.0, 3004.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 167, + "image_id": 8, + "category_id": 3, + "segmentation": [[3195.5, 2669.0, 3151.0, 2747.0, 3240.0, 2747.0]], + "area": 3477.0, + "bbox": [3151.0, 2669.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 168, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 614.0, 2718.0, 677.0, 2718.0, 677.0, 2775.0, 614.0, 2775.0, 614.0, + 2718.0 + ] + ], + "area": 3591.0, + "bbox": [614.0, 2718.0, 63.0, 57.0], + "iscrowd": 0 + }, + { + "id": 169, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3168.0, 3112.5, 3167.78, 3116.07, 3167.1, 3119.59, 3166.0, 3122.99, + 3164.47, 3126.23, 3162.56, 3129.25, 3160.28, 3132.01, 3157.67, + 3134.46, 3154.77, 3136.56, 3151.63, 3138.29, 3148.31, 3139.61, + 3144.84, 3140.5, 3141.29, 3140.94, 3137.71, 3140.94, 3134.16, 3140.5, + 3130.69, 3139.61, 3127.37, 3138.29, 3124.23, 3136.56, 3121.33, + 3134.46, 3118.72, 3132.01, 3116.44, 3129.25, 3114.53, 3126.23, 3113.0, + 3122.99, 3111.9, 3119.59, 3111.22, 3116.07, 3111.0, 3112.5, 3111.22, + 3108.93, 3111.9, 3105.41, 3113.0, 3102.01, 3114.53, 3098.77, 3116.44, + 3095.75, 3118.72, 3092.99, 3121.33, 3090.54, 3124.23, 3088.44, + 3127.37, 3086.71, 3130.69, 3085.39, 3134.16, 3084.5, 3137.71, 3084.06, + 3141.29, 3084.06, 3144.84, 3084.5, 3148.31, 3085.39, 3151.63, 3086.71, + 3154.77, 3088.44, 3157.67, 3090.54, 3160.28, 3092.99, 3162.56, + 3095.75, 3164.47, 3098.77, 3166.0, 3102.01, 3167.1, 3105.41, 3167.78, + 3108.93 + ] + ], + "area": 2548.0, + "bbox": [3111.0, 3084.06, 57.0, 56.88], + "iscrowd": 0 + }, + { + "id": 170, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1839.0, 958.0, 1936.0, 958.0, 1936.0, 1029.0, 1839.0, 1029.0, 1839.0, + 958.0 + ] + ], + "area": 6887.0, + "bbox": [1839.0, 958.0, 97.0, 71.0], + "iscrowd": 0 + }, + { + "id": 171, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 582.0, 1013.0, 648.0, 1013.0, 648.0, 1095.0, 582.0, 1095.0, 582.0, + 1013.0 + ] + ], + "area": 5412.0, + "bbox": [582.0, 1013.0, 66.0, 82.0], + "iscrowd": 0 + }, + { + "id": 172, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1517.0, 1524.0, 1578.0, 1524.0, 1578.0, 1617.0, 1517.0, 1617.0, + 1517.0, 1524.0 + ] + ], + "area": 5673.0, + "bbox": [1517.0, 1524.0, 61.0, 93.0], + "iscrowd": 0 + }, + { + "id": 173, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [25.0, 413.0, 113.0, 413.0, 113.0, 476.0, 25.0, 476.0, 25.0, 413.0] + ], + "area": 5544.0, + "bbox": [25.0, 413.0, 88.0, 63.0], + "iscrowd": 0 + }, + { + "id": 174, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1176.0, 993.0, 1259.0, 993.0, 1259.0, 1078.0, 1176.0, 1078.0, 1176.0, + 993.0 + ] + ], + "area": 7055.0, + "bbox": [1176.0, 993.0, 83.0, 85.0], + "iscrowd": 0 + }, + { + "id": 175, + "image_id": 8, + "category_id": 3, + "segmentation": [[2230.0, 2484.0, 2195.0, 2545.0, 2265.0, 2545.0]], + "area": 2142.0, + "bbox": [2195.0, 2484.0, 70.0, 61.0], + "iscrowd": 0 + }, + { + "id": 176, + "image_id": 8, + "category_id": 3, + "segmentation": [[1896.5, 1754.0, 1861.0, 1816.0, 1932.0, 1816.0]], + "area": 2209.0, + "bbox": [1861.0, 1754.0, 71.0, 62.0], + "iscrowd": 0 + }, + { + "id": 177, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 201.0, 2492.0, 267.0, 2492.0, 267.0, 2588.0, 201.0, 2588.0, 201.0, + 2492.0 + ] + ], + "area": 6336.0, + "bbox": [201.0, 2492.0, 66.0, 96.0], + "iscrowd": 0 + }, + { + "id": 178, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2825.0, 840.5, 2824.64, 846.2, 2823.57, 851.82, 2821.8, 857.25, + 2819.37, 862.42, 2816.31, 867.24, 2812.67, 871.65, 2808.5, 875.56, + 2803.88, 878.92, 2798.87, 881.67, 2793.56, 883.77, 2788.03, 885.19, + 2782.36, 885.91, 2776.64, 885.91, 2770.97, 885.19, 2765.44, 883.77, + 2760.13, 881.67, 2755.12, 878.92, 2750.5, 875.56, 2746.33, 871.65, + 2742.69, 867.24, 2739.63, 862.42, 2737.2, 857.25, 2735.43, 851.82, + 2734.36, 846.2, 2734.0, 840.5, 2734.36, 834.8, 2735.43, 829.18, + 2737.2, 823.75, 2739.63, 818.58, 2742.69, 813.76, 2746.33, 809.35, + 2750.5, 805.44, 2755.12, 802.08, 2760.13, 799.33, 2765.44, 797.23, + 2770.97, 795.81, 2776.64, 795.09, 2782.36, 795.09, 2788.03, 795.81, + 2793.56, 797.23, 2798.87, 799.33, 2803.88, 802.08, 2808.5, 805.44, + 2812.67, 809.35, 2816.31, 813.76, 2819.37, 818.58, 2821.8, 823.75, + 2823.57, 829.18, 2824.64, 834.8 + ] + ], + "area": 6498.0, + "bbox": [2734.0, 795.09, 91.0, 90.82], + "iscrowd": 0 + }, + { + "id": 179, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 667.5, 145.0, 673.58, 144.62, 679.56, 143.48, 685.35, 141.59, 690.87, + 139.0, 696.01, 135.74, 700.7, 131.85, 704.87, 127.42, 708.45, 122.49, + 711.38, 117.15, 713.63, 111.49, 715.14, 105.59, 715.9, 99.55, 715.9, + 93.45, 715.14, 87.41, 713.63, 81.51, 711.38, 75.85, 708.45, 70.51, + 704.87, 65.58, 700.7, 61.15, 696.01, 57.26, 690.87, 54.0, 685.35, + 51.41, 679.56, 49.52, 673.58, 48.38, 667.5, 48.0, 661.42, 48.38, + 655.44, 49.52, 649.65, 51.41, 644.13, 54.0, 638.99, 57.26, 634.3, + 61.15, 630.13, 65.58, 626.55, 70.51, 623.62, 75.85, 621.37, 81.51, + 619.86, 87.41, 619.1, 93.45, 619.1, 99.55, 619.86, 105.59, 621.37, + 111.49, 623.62, 117.15, 626.55, 122.49, 630.13, 127.42, 634.3, 131.85, + 638.99, 135.74, 644.13, 139.0, 649.65, 141.59, 655.44, 143.48, 661.42, + 144.62 + ] + ], + "area": 7380.0, + "bbox": [619.1, 48.0, 96.8, 97.0], + "iscrowd": 0 + }, + { + "id": 180, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2789.0, 1336.5, 2788.79, 1339.82, 2788.17, 1343.09, 2787.14, 1346.26, + 2785.72, 1349.27, 2783.94, 1352.08, 2781.82, 1354.64, 2779.39, + 1356.92, 2776.7, 1358.87, 2773.78, 1360.48, 2770.69, 1361.7, 2767.47, + 1362.53, 2764.16, 1362.95, 2760.84, 1362.95, 2757.53, 1362.53, + 2754.31, 1361.7, 2751.22, 1360.48, 2748.3, 1358.87, 2745.61, 1356.92, + 2743.18, 1354.64, 2741.06, 1352.08, 2739.28, 1349.27, 2737.86, + 1346.26, 2736.83, 1343.09, 2736.21, 1339.82, 2736.0, 1336.5, 2736.21, + 1333.18, 2736.83, 1329.91, 2737.86, 1326.74, 2739.28, 1323.73, + 2741.06, 1320.92, 2743.18, 1318.36, 2745.61, 1316.08, 2748.3, 1314.13, + 2751.22, 1312.52, 2754.31, 1311.3, 2757.53, 1310.47, 2760.84, 1310.05, + 2764.16, 1310.05, 2767.47, 1310.47, 2770.69, 1311.3, 2773.78, 1312.52, + 2776.7, 1314.13, 2779.39, 1316.08, 2781.82, 1318.36, 2783.94, 1320.92, + 2785.72, 1323.73, 2787.14, 1326.74, 2788.17, 1329.91, 2788.79, 1333.18 + ] + ], + "area": 2207.0, + "bbox": [2736.0, 1310.05, 53.0, 52.9], + "iscrowd": 0 + }, + { + "id": 181, + "image_id": 8, + "category_id": 3, + "segmentation": [[3250.5, 384.0, 3213.0, 450.0, 3288.0, 450.0]], + "area": 2485.0, + "bbox": [3213.0, 384.0, 75.0, 66.0], + "iscrowd": 0 + }, + { + "id": 182, + "image_id": 8, + "category_id": 3, + "segmentation": [[1188.5, 489.0, 1148.0, 560.0, 1229.0, 560.0]], + "area": 2881.0, + "bbox": [1148.0, 489.0, 81.0, 71.0], + "iscrowd": 0 + }, + { + "id": 183, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1302.0, 3112.0, 1376.0, 3112.0, 1376.0, 3206.0, 1302.0, 3206.0, + 1302.0, 3112.0 + ] + ], + "area": 6956.0, + "bbox": [1302.0, 3112.0, 74.0, 94.0], + "iscrowd": 0 + }, + { + "id": 184, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 480.0, 2958.0, 570.0, 2958.0, 570.0, 3050.0, 480.0, 3050.0, 480.0, + 2958.0 + ] + ], + "area": 8280.0, + "bbox": [480.0, 2958.0, 90.0, 92.0], + "iscrowd": 0 + }, + { + "id": 185, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1756.0, 3360.0, 1807.0, 3360.0, 1807.0, 3420.0, 1756.0, 3420.0, + 1756.0, 3360.0 + ] + ], + "area": 3060.0, + "bbox": [1756.0, 3360.0, 51.0, 60.0], + "iscrowd": 0 + }, + { + "id": 186, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2044.0, 2223.0, 2105.0, 2223.0, 2105.0, 2298.0, 2044.0, 2298.0, + 2044.0, 2223.0 + ] + ], + "area": 4575.0, + "bbox": [2044.0, 2223.0, 61.0, 75.0], + "iscrowd": 0 + }, + { + "id": 187, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1669.0, 2790.0, 1762.0, 2790.0, 1762.0, 2885.0, 1669.0, 2885.0, + 1669.0, 2790.0 + ] + ], + "area": 8835.0, + "bbox": [1669.0, 2790.0, 93.0, 95.0], + "iscrowd": 0 + }, + { + "id": 188, + "image_id": 8, + "category_id": 3, + "segmentation": [[594.5, 2134.0, 562.0, 2191.0, 627.0, 2191.0]], + "area": 1857.0, + "bbox": [562.0, 2134.0, 65.0, 57.0], + "iscrowd": 0 + }, + { + "id": 189, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2064.0, 1285.5, 2063.69, 1290.45, 2062.76, 1295.32, 2061.23, 1300.04, + 2059.11, 1304.53, 2056.46, 1308.72, 2053.29, 1312.54, 2049.68, + 1315.94, 2045.67, 1318.85, 2041.32, 1321.24, 2036.71, 1323.07, 2031.9, + 1324.3, 2026.98, 1324.92, 2022.02, 1324.92, 2017.1, 1324.3, 2012.29, + 1323.07, 2007.68, 1321.24, 2003.33, 1318.85, 1999.32, 1315.94, + 1995.71, 1312.54, 1992.54, 1308.72, 1989.89, 1304.53, 1987.77, + 1300.04, 1986.24, 1295.32, 1985.31, 1290.45, 1985.0, 1285.5, 1985.31, + 1280.55, 1986.24, 1275.68, 1987.77, 1270.96, 1989.89, 1266.47, + 1992.54, 1262.28, 1995.71, 1258.46, 1999.32, 1255.06, 2003.33, + 1252.15, 2007.68, 1249.76, 2012.29, 1247.93, 2017.1, 1246.7, 2022.02, + 1246.08, 2026.98, 1246.08, 2031.9, 1246.7, 2036.71, 1247.93, 2041.32, + 1249.76, 2045.67, 1252.15, 2049.68, 1255.06, 2053.29, 1258.46, + 2056.46, 1262.28, 2059.11, 1266.47, 2061.23, 1270.96, 2062.76, + 1275.68, 2063.69, 1280.55 + ] + ], + "area": 4893.0, + "bbox": [1985.0, 1246.08, 79.0, 78.84], + "iscrowd": 0 + }, + { + "id": 190, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3209.0, 2170.5, 3208.63, 2176.45, 3207.51, 2182.31, 3205.66, 2187.99, + 3203.12, 2193.38, 3199.93, 2198.42, 3196.13, 2203.02, 3191.78, 2207.1, + 3186.95, 2210.61, 3181.72, 2213.48, 3176.18, 2215.68, 3170.4, 2217.16, + 3164.48, 2217.91, 3158.52, 2217.91, 3152.6, 2217.16, 3146.82, 2215.68, + 3141.28, 2213.48, 3136.05, 2210.61, 3131.22, 2207.1, 3126.87, 2203.02, + 3123.07, 2198.42, 3119.88, 2193.38, 3117.34, 2187.99, 3115.49, + 2182.31, 3114.37, 2176.45, 3114.0, 2170.5, 3114.37, 2164.55, 3115.49, + 2158.69, 3117.34, 2153.01, 3119.88, 2147.62, 3123.07, 2142.58, + 3126.87, 2137.98, 3131.22, 2133.9, 3136.05, 2130.39, 3141.28, 2127.52, + 3146.82, 2125.32, 3152.6, 2123.84, 3158.52, 2123.09, 3164.48, 2123.09, + 3170.4, 2123.84, 3176.18, 2125.32, 3181.72, 2127.52, 3186.95, 2130.39, + 3191.78, 2133.9, 3196.13, 2137.98, 3199.93, 2142.58, 3203.12, 2147.62, + 3205.66, 2153.01, 3207.51, 2158.69, 3208.63, 2164.55 + ] + ], + "area": 7083.0, + "bbox": [3114.0, 2123.09, 95.0, 94.82], + "iscrowd": 0 + }, + { + "id": 191, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3017.0, 3339.0, 3098.0, 3339.0, 3098.0, 3416.0, 3017.0, 3416.0, + 3017.0, 3339.0 + ] + ], + "area": 6237.0, + "bbox": [3017.0, 3339.0, 81.0, 77.0], + "iscrowd": 0 + }, + { + "id": 192, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [889.0, 290.0, 958.0, 290.0, 958.0, 346.0, 889.0, 346.0, 889.0, 290.0] + ], + "area": 3864.0, + "bbox": [889.0, 290.0, 69.0, 56.0], + "iscrowd": 0 + }, + { + "id": 193, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 3421.0, 1591.5, 3420.74, 1595.7, 3419.95, 1599.83, 3418.65, 1603.83, + 3416.86, 1607.64, 3414.6, 1611.19, 3411.92, 1614.43, 3408.85, 1617.31, + 3405.45, 1619.78, 3401.76, 1621.81, 3397.85, 1623.36, 3393.78, + 1624.41, 3389.6, 1624.93, 3385.4, 1624.93, 3381.22, 1624.41, 3377.15, + 1623.36, 3373.24, 1621.81, 3369.55, 1619.78, 3366.15, 1617.31, + 3363.08, 1614.43, 3360.4, 1611.19, 3358.14, 1607.64, 3356.35, 1603.83, + 3355.05, 1599.83, 3354.26, 1595.7, 3354.0, 1591.5, 3354.26, 1587.3, + 3355.05, 1583.17, 3356.35, 1579.17, 3358.14, 1575.36, 3360.4, 1571.81, + 3363.08, 1568.57, 3366.15, 1565.69, 3369.55, 1563.22, 3373.24, + 1561.19, 3377.15, 1559.64, 3381.22, 1558.59, 3385.4, 1558.07, 3389.6, + 1558.07, 3393.78, 1558.59, 3397.85, 1559.64, 3401.76, 1561.19, + 3405.45, 1563.22, 3408.85, 1565.69, 3411.92, 1568.57, 3414.6, 1571.81, + 3416.86, 1575.36, 3418.65, 1579.17, 3419.95, 1583.17, 3420.74, 1587.3 + ] + ], + "area": 3519.0, + "bbox": [3354.0, 1558.07, 67.0, 66.86], + "iscrowd": 0 + }, + { + "id": 194, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1383.0, 3132.0, 1477.0, 3132.0, 1477.0, 3198.0, 1383.0, 3198.0, + 1383.0, 3132.0 + ] + ], + "area": 6204.0, + "bbox": [1383.0, 3132.0, 94.0, 66.0], + "iscrowd": 0 + }, + { + "id": 195, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 653.0, 1317.0, 745.0, 1317.0, 745.0, 1379.0, 653.0, 1379.0, 653.0, + 1317.0 + ] + ], + "area": 5704.0, + "bbox": [653.0, 1317.0, 92.0, 62.0], + "iscrowd": 0 + }, + { + "id": 196, + "image_id": 8, + "category_id": 3, + "segmentation": [[3107.0, 602.0, 3062.0, 681.0, 3152.0, 681.0]], + "area": 3564.0, + "bbox": [3062.0, 602.0, 90.0, 79.0], + "iscrowd": 0 + }, + { + "id": 197, + "image_id": 8, + "category_id": 3, + "segmentation": [[145.5, 1100.0, 102.0, 1176.0, 189.0, 1176.0]], + "area": 3315.0, + "bbox": [102.0, 1100.0, 87.0, 76.0], + "iscrowd": 0 + }, + { + "id": 198, + "image_id": 8, + "category_id": 3, + "segmentation": [[1833.5, 1395.0, 1789.0, 1473.0, 1878.0, 1473.0]], + "area": 3477.0, + "bbox": [1789.0, 1395.0, 89.0, 78.0], + "iscrowd": 0 + }, + { + "id": 199, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 1577.0, 2132.0, 1660.0, 2132.0, 1660.0, 2215.0, 1577.0, 2215.0, + 1577.0, 2132.0 + ] + ], + "area": 6889.0, + "bbox": [1577.0, 2132.0, 83.0, 83.0], + "iscrowd": 0 + }, + { + "id": 200, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [12.0, 1979.0, 83.0, 1979.0, 83.0, 2052.0, 12.0, 2052.0, 12.0, 1979.0] + ], + "area": 5183.0, + "bbox": [12.0, 1979.0, 71.0, 73.0], + "iscrowd": 0 + }, + { + "id": 201, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [14.0, 764.0, 101.0, 764.0, 101.0, 821.0, 14.0, 821.0, 14.0, 764.0] + ], + "area": 4959.0, + "bbox": [14.0, 764.0, 87.0, 57.0], + "iscrowd": 0 + }, + { + "id": 202, + "image_id": 8, + "category_id": 3, + "segmentation": [[3106.0, 2336.0, 3076.0, 2389.0, 3136.0, 2389.0]], + "area": 1596.0, + "bbox": [3076.0, 2336.0, 60.0, 53.0], + "iscrowd": 0 + }, + { + "id": 203, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2320.0, 1637.0, 2413.0, 1637.0, 2413.0, 1720.0, 2320.0, 1720.0, + 2320.0, 1637.0 + ] + ], + "area": 7719.0, + "bbox": [2320.0, 1637.0, 93.0, 83.0], + "iscrowd": 0 + }, + { + "id": 204, + "image_id": 8, + "category_id": 3, + "segmentation": [[719.0, 1510.0, 687.0, 1566.0, 751.0, 1566.0]], + "area": 1792.0, + "bbox": [687.0, 1510.0, 64.0, 56.0], + "iscrowd": 0 + }, + { + "id": 205, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2301.0, 3285.0, 2368.0, 3285.0, 2368.0, 3352.0, 2301.0, 3352.0, + 2301.0, 3285.0 + ] + ], + "area": 4489.0, + "bbox": [2301.0, 3285.0, 67.0, 67.0], + "iscrowd": 0 + }, + { + "id": 206, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 3351.0, 3010.0, 3429.0, 3010.0, 3429.0, 3099.0, 3351.0, 3099.0, + 3351.0, 3010.0 + ] + ], + "area": 6942.0, + "bbox": [3351.0, 3010.0, 78.0, 89.0], + "iscrowd": 0 + }, + { + "id": 207, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 2075.0, 2103.5, 2074.74, 2107.57, 2073.98, 2111.58, 2072.72, 2115.46, + 2070.98, 2119.16, 2068.79, 2122.6, 2066.19, 2125.75, 2063.22, 2128.54, + 2059.91, 2130.94, 2056.34, 2132.91, 2052.54, 2134.41, 2048.59, + 2135.42, 2044.54, 2135.94, 2040.46, 2135.94, 2036.41, 2135.42, + 2032.46, 2134.41, 2028.66, 2132.91, 2025.09, 2130.94, 2021.78, + 2128.54, 2018.81, 2125.75, 2016.21, 2122.6, 2014.02, 2119.16, 2012.28, + 2115.46, 2011.02, 2111.58, 2010.26, 2107.57, 2010.0, 2103.5, 2010.26, + 2099.43, 2011.02, 2095.42, 2012.28, 2091.54, 2014.02, 2087.84, + 2016.21, 2084.4, 2018.81, 2081.25, 2021.78, 2078.46, 2025.09, 2076.06, + 2028.66, 2074.09, 2032.46, 2072.59, 2036.41, 2071.58, 2040.46, + 2071.06, 2044.54, 2071.06, 2048.59, 2071.58, 2052.54, 2072.59, + 2056.34, 2074.09, 2059.91, 2076.06, 2063.22, 2078.46, 2066.19, + 2081.25, 2068.79, 2084.4, 2070.98, 2087.84, 2072.72, 2091.54, 2073.98, + 2095.42, 2074.74, 2099.43 + ] + ], + "area": 3315.0, + "bbox": [2010.0, 2071.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 208, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 342.0, 3026.5, 341.74, 3030.57, 340.98, 3034.58, 339.72, 3038.46, + 337.98, 3042.16, 335.79, 3045.6, 333.19, 3048.75, 330.22, 3051.54, + 326.91, 3053.94, 323.34, 3055.91, 319.54, 3057.41, 315.59, 3058.42, + 311.54, 3058.94, 307.46, 3058.94, 303.41, 3058.42, 299.46, 3057.41, + 295.66, 3055.91, 292.09, 3053.94, 288.78, 3051.54, 285.81, 3048.75, + 283.21, 3045.6, 281.02, 3042.16, 279.28, 3038.46, 278.02, 3034.58, + 277.26, 3030.57, 277.0, 3026.5, 277.26, 3022.43, 278.02, 3018.42, + 279.28, 3014.54, 281.02, 3010.84, 283.21, 3007.4, 285.81, 3004.25, + 288.78, 3001.46, 292.09, 2999.06, 295.66, 2997.09, 299.46, 2995.59, + 303.41, 2994.58, 307.46, 2994.06, 311.54, 2994.06, 315.59, 2994.58, + 319.54, 2995.59, 323.34, 2997.09, 326.91, 2999.06, 330.22, 3001.46, + 333.19, 3004.25, 335.79, 3007.4, 337.98, 3010.84, 339.72, 3014.54, + 340.98, 3018.42, 341.74, 3022.43 + ] + ], + "area": 3315.0, + "bbox": [277.0, 2994.06, 65.0, 64.88], + "iscrowd": 0 + }, + { + "id": 209, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 1189.0, 822.5, 1188.75, 826.45, 1188.01, 830.33, 1186.79, 834.1, + 1185.1, 837.68, 1182.98, 841.02, 1180.46, 844.06, 1177.58, 846.77, + 1174.38, 849.1, 1170.91, 851.0, 1167.23, 852.46, 1163.4, 853.44, + 1159.48, 853.94, 1155.52, 853.94, 1151.6, 853.44, 1147.77, 852.46, + 1144.09, 851.0, 1140.62, 849.1, 1137.42, 846.77, 1134.54, 844.06, + 1132.02, 841.02, 1129.9, 837.68, 1128.21, 834.1, 1126.99, 830.33, + 1126.25, 826.45, 1126.0, 822.5, 1126.25, 818.55, 1126.99, 814.67, + 1128.21, 810.9, 1129.9, 807.32, 1132.02, 803.98, 1134.54, 800.94, + 1137.42, 798.23, 1140.62, 795.9, 1144.09, 794.0, 1147.77, 792.54, + 1151.6, 791.56, 1155.52, 791.06, 1159.48, 791.06, 1163.4, 791.56, + 1167.23, 792.54, 1170.91, 794.0, 1174.38, 795.9, 1177.58, 798.23, + 1180.46, 800.94, 1182.98, 803.98, 1185.1, 807.32, 1186.79, 810.9, + 1188.01, 814.67, 1188.75, 818.55 + ] + ], + "area": 3122.0, + "bbox": [1126.0, 791.06, 63.0, 62.88], + "iscrowd": 0 + }, + { + "id": 210, + "image_id": 8, + "category_id": 3, + "segmentation": [[2856.5, 2311.0, 2828.0, 2361.0, 2885.0, 2361.0]], + "area": 1430.0, + "bbox": [2828.0, 2311.0, 57.0, 50.0], + "iscrowd": 0 + }, + { + "id": 211, + "image_id": 8, + "category_id": 2, + "segmentation": [ + [ + 367.0, 2405.5, 366.66, 2410.95, 365.63, 2416.32, 363.95, 2421.51, + 361.62, 2426.46, 358.69, 2431.07, 355.21, 2435.28, 351.23, 2439.02, + 346.81, 2442.23, 342.02, 2444.86, 336.94, 2446.87, 331.65, 2448.23, + 326.23, 2448.91, 320.77, 2448.91, 315.35, 2448.23, 310.06, 2446.87, + 304.98, 2444.86, 300.19, 2442.23, 295.77, 2439.02, 291.79, 2435.28, + 288.31, 2431.07, 285.38, 2426.46, 283.05, 2421.51, 281.37, 2416.32, + 280.34, 2410.95, 280.0, 2405.5, 280.34, 2400.05, 281.37, 2394.68, + 283.05, 2389.49, 285.38, 2384.54, 288.31, 2379.93, 291.79, 2375.72, + 295.77, 2371.98, 300.19, 2368.77, 304.98, 2366.14, 310.06, 2364.13, + 315.35, 2362.77, 320.77, 2362.09, 326.23, 2362.09, 331.65, 2362.77, + 336.94, 2364.13, 342.02, 2366.14, 346.81, 2368.77, 351.23, 2371.98, + 355.21, 2375.72, 358.69, 2379.93, 361.62, 2384.54, 363.95, 2389.49, + 365.63, 2394.68, 366.66, 2400.05 + ] + ], + "area": 5927.0, + "bbox": [280.0, 2362.09, 87.0, 86.82], + "iscrowd": 0 + }, + { + "id": 212, + "image_id": 8, + "category_id": 3, + "segmentation": [[1169.0, 1849.0, 1123.0, 1929.0, 1215.0, 1929.0]], + "area": 3688.0, + "bbox": [1123.0, 1849.0, 92.0, 80.0], + "iscrowd": 0 + }, + { + "id": 213, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 592.0, 2957.0, 670.0, 2957.0, 670.0, 3017.0, 592.0, 3017.0, 592.0, + 2957.0 + ] + ], + "area": 4680.0, + "bbox": [592.0, 2957.0, 78.0, 60.0], + "iscrowd": 0 + }, + { + "id": 214, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2224.0, 381.0, 2293.0, 381.0, 2293.0, 437.0, 2224.0, 437.0, 2224.0, + 381.0 + ] + ], + "area": 3864.0, + "bbox": [2224.0, 381.0, 69.0, 56.0], + "iscrowd": 0 + }, + { + "id": 215, + "image_id": 8, + "category_id": 1, + "segmentation": [ + [ + 2400.0, 2164.0, 2488.0, 2164.0, 2488.0, 2233.0, 2400.0, 2233.0, + 2400.0, 2164.0 + ] + ], + "area": 6072.0, + "bbox": [2400.0, 2164.0, 88.0, 69.0], + "iscrowd": 0 + }, + { + "id": 216, + "image_id": 8, + "category_id": 3, + "segmentation": [[2032.5, 2535.0, 1994.0, 2602.0, 2071.0, 2602.0]], + "area": 2588.0, + "bbox": [1994.0, 2535.0, 77.0, 67.0], + "iscrowd": 0 + } + ] +} diff --git a/data/small_objects/images/test/sample_0.jpg b/data/small_objects/images/test/sample_0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..748dc387013913ad0e33e2f1fd212b3aee773244 GIT binary patch literal 283480 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 A1^@s6 literal 0 HcmV?d00001 diff --git a/data/small_objects/images/test/sample_1.jpg b/data/small_objects/images/test/sample_1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2de8d1fb92c648ed26c3bdf07021b2f030d90a51 GIT binary patch literal 282541 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

$0|O2)+B>*9O$s{Bytq4zeI#kC!M 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

    wWok`OVxiaC<11cuIo+UA5*nBM- z9d%i`MItJueXqif_$xYWw{wz{aFrTX;iUVz1BZ$vV#$x83EF)2H%n|^Wd$sHlj5Fs z=J)+r22YhUdHQs7H@|x zS#@sr=KhMJ5&6rHy}>A4hn5-Z(DH*{{|kneP|Q|L!+yjf84-iGs!U}N$`wWV!3;U^ ziv5J0&^fC) zA9lgr?Z!x86;jL@%8jwN@;Y{oTzigOkHggNzJ+N{r0bhbWzu;LyV5Tar=>AbXcP?F zF=#*M;_LkH-@+ScyW=-{#~IPfUQ4%BjS~dR?^nQ2*SN7o6{w3kSYJ1@Hqa<&c%f)^ z9JtrbSH068wAEkbSU)963kCKgK9dR`Da>CZh4M@V0fZXF2yH*K(VYHsXio0|^y=x( z&q@Dvc|FbZ`WX0iV}MmvrTCSBc(Q7qdeDzTbQp4p`v?e$!O#MUbtO{y9uXaBAi+TK z>^tfLi1F^FxzHcB5y$#LK)?IctJxsyJ3zSF^qkp-Jq)3(h6i~lCGStFVZA@4dhb# mxo;ol=L>aS=KaORL7$~m_8njm?gom2_ZJxEFW$$r((_NQ+1Z!? literal 0 HcmV?d00001 diff --git a/data/small_objects/images/train/sample_2.jpg b/data/small_objects/images/train/sample_2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..84577284fde9822cf81a7d8822d604aeaf163c39 GIT binary patch literal 244148 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%0DViW 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 OX<#%BAf*BJ|2F}5fg`E_ literal 0 HcmV?d00001 diff --git a/data/small_objects/images/train/sample_3.jpg b/data/small_objects/images/train/sample_3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6104e8fc2bd32ffc6f4d65c4056b006d33240584 GIT binary patch literal 297205 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
    VZRk$F)xJrR&Vo~z%Ztu%B90^Ct7Mfj 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 DWr503 literal 0 HcmV?d00001 diff --git a/data/small_objects/images/train/sample_6.jpg b/data/small_objects/images/train/sample_6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..34b944b797ad2df6b2ac52856982b5621f614902 GIT binary patch literal 254231 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%0D&srq8>$F}@L$ApU0q+NO40hL!%J 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 W?E6tbOZs>GXq(kP?Ds61{`7ycNfV<0 literal 0 HcmV?d00001 diff --git a/data/small_objects/images/train/sample_9.jpg b/data/small_objects/images/train/sample_9.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a911168246bf5c52cea7d1b0267440e6ec654ded GIT binary patch literal 283614 zcmeFa2|U#M{y#pVl#~h;VJbwXQkLu{oUxUJ7-UKIlzo>zq*AhkB(f9=iAmX)rjV`d z%hKEyq@>)kWiu5u-8Sm2Td5g#(bCW{Ga^}-8JU>&vmN8u zfA9z^6BDPv;UmXS@bU2>IfTRnc|?!#^6{)Zglx-}E!117_io#^m*)V}0iNIdM|y|Y zxp~{mZ7<2m4k9+}BqQHRMk+ucK|ME;efdND^N(x;ImO0Jl$*CuZ3P#k?m%oHBPZWL zLB4S#1qHa;6`V&v`TuE2d(IM-2Ij*@`iom54oeJj#m`@%umJIfN@mLi~H% z4$jCHb`kbYQ#OQBG+hYgQ==iWry-{b```uLiG-7H57s2fsvN#`_uVdU`=N-)#67#h zbXC;6IG;TE{gwEZhQ!;w7^vsDlQcGRwHuYeR>QSR%u?~}wnNo*?&e-)B*e{oKamhm z$|Fe#cR833%ELrKmBxxB#Jd>KwUMUV`|XW_=pU01TXx?iAtb`lB*cb5qRIOETx1<2 zj7*g@@ZMI{^#BPmPZ!xGlj3Q+`;UIu<&oTiJ(fpiYh?J2 zhQF46|De6=hS)$nW;pNDLod!3JCrbVh##N7S|9M3DsN^BRcmIttl`V+wn+gY?o|j# z5QiZlBHM^JNr(;^BD*s;5hfwJIYr4Pj7Xr% zEjpz$QqlgMmJ`{mzTUAEYM&$Tj$XQ=9T&1?>D@-X1xpta!beX@E~YT1z9{N~wuBSS zV~hQ^4QQR1V1O7Hjor3zxFm-#3jsOnrK279`s4uLg!(x#?h;hhObIbXwh=u z#3Ro}4|%Izog z4|Fz(L{N4Fo)X)xTcCM2E9Ybh{9+Sp{KDh6*Td0h&B7?J&nPCJ&n-Y=P<(9{{nO|{ zjyLiFvZO5X(xiNt{=7l5Ai}x+ zD8Xww+qeP8*2jiCY`saWoOj;H?PPz_X_yvT^n|)CU|_l^kPw5+B!oYHiSY<3Ix#9U z!GfW&#NEo`2wNIYjIjHlGqO7U$k>QQ7msFn09oz!=s{uM2OB@~DPhR}BSJeifrKdD zO+vuA-6TY%g4PRXJki~Pgcxd7T&AdYA?u!2!q_mb%sNvD_P>2e2L(HqFZ$JU!lCE}T zr3Gw}R>m~B<`(6i#vq(N%sfcj<7dH%KD?mrZLU+8fQ@c#Xl~29l;JHvfzt2QwRFMq zI(3|W)EHWg2@ydtClX?xcH!wy3K`2K`Z{~n0<*W_MDk|#-b#t1pGv4Xbz}rp>H9TZy`Aj>E)+WGKfH1=c@(O+qH={VTl=Kg zt3z6SJSVpzuPoYjCaK8w$0`P^fv({__brY6J@??)=AV%eto-TAPB{4X%#dAoBptrn zD2;@`@dMIr&9FhXUn?^q%IpM8(amlRxvr3}i-Q}~EeAO0NG$Aqd4h3v3;{?#FqVX9 zR$Sg&*WVLacs=sPiNx`6b~+`Uj!$35|F3;i*K)vSY$Gp+*eF)7+sOH%|>0} zVC~7zQzibpBEsxA8VsNanXv2>-|}INN8QOnY>PGQ*?YKWE|kel*_=Ry-6^8Vb-6C) zT*t-vTy{lFsB}J*W!r^eE$oUu@E+;IUYJNb}{lgz1Nu$lPE9DFX(YSOZ~O-|Ag8~@82nVt?WRg zy=W}9PZnBDQ)@Yk zs+v933ynwZ2p+j7+hg6OxF$(+Q^G`1W6b z#p^6-)^(a_F4LR&ikcZ|{{-b$>U#hz%nP+V2UQ2KfnXHdi4RXg46 z(r|mXYKiV>#7+D1&8+apJL4_^d1H7lhd?rl!-?#IVKGxrU;xbH?m@p z(kBmqj-QyXq-1!}mi8>}qqR*+m~`y?d0S?Pc2q$b*l6n=DCAY5Lh+EvfNAaE;rR%J_Y+$jB`P$142_vzs1jI=ZgS~s)#$6{ZRA@q#L{P*u00c-q-iChD=y!YA0Mi?izAoWYccba-XoVq znyDhq!8%nst~gaCH^jRQQOf;3ruhlGy*OW%{Vt;WEd=^UT)S34B-TsEclaPRvo3^7 zR+NXFlipWmmv`gr@y(+OHkaZ`Q^jS2&&nSg9+yWo<2%U4iOzY8GxM&$hR{NSSOVE$Y~&oizlIp^N^9+ zC>}XUbCtHh1ZTefWFC2k-{K~y+X+4Y0{sT%pzF6lnRd6651S6HIkl!XjX~MCBBDq0 zPZNy)uA+YbsHen8l%vmD^8mg2aaRWxU6XqZR%x{-v_UNM>yON%?kv+?!fHZC=PpPrWxTT9E}X6`Bvy28qn;ARd8gKk;(qzk_u9tpc2M%5f*z`K zA1*U6uUOdOU2#`!cxp-2Pf;;1-zOxn3}E!n!xl9&f#~!>ziYc*{V*<|F}lN0|)lq6vKa0DvhV zl=nGm)(uKj`wZXnknQ74@>_cz@YBsk(IkXeA~g0K5U^PR{0RW%6=}LWLZv8h;wCTf z>qXS#=W3t{;N4~b6kcJbyEK5G4@JK@0Zol~{x>fa3FVA>JN?a+i3*s&6EnV8$q%!d zx^nfNbGHlJKgi%^QJR5USu+(ndnF%C(6IF})IE`DN)_@2F(Bclkgsw=f(fm#s&J^)?77_0ea0uSz85~3ZwxcTK^$*95H`Z@|nZi9-2 z6&Hu0`-!22;{>8d3@|K;7N{B%cNgAUF)Y0Q%&8vj8l%zH{gI^+-4|u~8803_MAer^ z*!=10GdWs{Ti5pu49rhxYtz++vcKoO1Be(p{}nNkA+j#U5*LA+1mI(gBmFP>3|u(F zeDJr%*qV$21kd-eiafeb?pL3FWm;t4q1NOOHp&Ct-F~s=pPlP{=)xW!mgEEt{T=?$ zZ}p@8mG6s<8%$$7bMV4YT!+e>6w@2qeoBtG0j<=rf^hL8iQzGG)JO(vR^_)(CS3*h zD_=eMfNfUB4C6FMJOVUS4=`30B!r%_#Kg(nA(+BoHY< zuKMyH8}V)@3ot91$yJ(h)pSW~+3DK=z)Py_9t?srf};v{t)lfoml%KIIJTr?PqBmY z+}q4z%JjWMq3vd`Zyw1ENfn#{wa(hMqULYIZ#9#WuJicx>8RnpL+?0PeEjrh+QYCf z3AYH(9Z{MWmig36t*lI*O3NbpJA2GCF;Y|jpJIknPSfjEm<|Ss(3uC~` z`76_YeDNRRS<<&_(Lod3q4oL>_rMS$dD zrGd<>_!=B0EI@>zFR@`gi?e&+>oQ}KStmJPLi6&r77IjR?kK`^P@YOORM7`ZLgUdx z4Y~^p$lQ%p$rycL!vA~%-W9$NhS2{ADbvXVgj~Gbf6T`VgHs_V`3y?!u(G4FNwcjrr=eh>M7P?53A)SKDgoDhPWS0P2qUA8p_ z5A)A%JzBX@=Sq*B#TjTP(-OIFj@RQtm>n*8b8G(D^Ik5tQ3Ljxt$&tjl21?&OO6P2Etq1};ai)o9^**qlJzMr0L9)}t zDl+%UzBII_drhoRPux?HEg$4GA{I;?HqN|sP<#FIRWVOeF6aahj)iF_A%OEuPxn!h zj+CCj_UQXQg-GPnA`2}toovlm8(+&FJq(@7AL^0hdL9e0ggkH2DdkB%CP_j#PLsdo zk!47*>thkB_W|ba?3E+Ww_0y)Cl5L90=lfFPwd4&euNqq*Kn_ec@I7}bkrt<{Zdh& z`!H{VElb@-I_wi$AbHPxnX9<|#h5JdXY}1t_AQ>01(Yha$iA5kaY}Lt2`5-OD5_eT zi$oQ&gy@7%p13b95s&g5XGzhxAR8V`wY7Pi^4jaAnPQ^rMhE)7a?#hx73{`9@8tSd zSjSh;3h!SsY(hbJF+pnOl_2!v`MZrRK_qvRam_1r&z z9!iEK)66i*Q7d9w|G(X!|NQ%3qUp^No|_qE04i&@WdTpb98HrRA+%!WxCeArn(@)0TA@|<58qGZW!hKh%;u}xO?c!{bV^-R+ z+eqK-i5*)_!k!NVZqp70N!h%BsyncS%mKyzLicA5`o%Na(h3(;Gu}SXdw%U!SC5XH zEyFv6aZ`L1=90rRz+`@2H-Nh^e(Z%El7@|kCnS+3Kw4U!Y%*+nnAKPcApmPJUfolp znwv^yFNe4vv7m;4`i-Yw+^a2rk)wDT$Rnvg)JEp=n>`drLY(@@O{7#DPpDNbL#X01`4Rj$ zGdd5aB*Qzp#}GNJzyZ5I)ScfR*&(y`1xlZmZZ*m*(aHfG&oCG!kDXUq^E$2>Ivep0 zdu0XIGhUbgG2tp^Swlm22@2c&ok>-gZE5=f1N<#(3CKP=7LN83hINfI9x^x2IhkY8 z4oRqBxV{$ZKVU~fK#z%L(Gx|)3031 z)%W_I=eC=`s9Q9Lgm!Yo-*B=Tv*oy zEWWI9U7~w0@Xp)@qoo!oV!cpO|HfDbLw7!6e8pG)J3eIo@s8H{N-ayGA?1o8dkYoC zWTZ+Kmk7Le9Y^K&6dV+}#nzs%ald`B;4-iF2;G(#Cumj;0Dt13w|ek-e#40}@HNmg zAE8^$x9CQXsgxhh5qa_XVq$b*cG|<>?xMFef{RpbH95@GjxGzLpb-&P0ekQ&wX@Si zv$&{xenHe;obBE+bf%2ky*v=t=@vO-*1Nv9XeBPTS0FpoTL5<)R@VJjFJjf^(}yKQQ*Qov@zFN;In+;A>({2mEW z0~B5mR901*9~3r2U%BQc8R9__VtPf5#V<}Jo-4-#g#zLmz);YP{i-rzM(HRE?1J$V#Z zt%NS9e~Sud%$;z4dRzMkN*IazzhlDvp2_-)d$B%_3EEd3u%zRrW6z$&2!z?$K zDG}T2n&;=Vh3y}u?GRp=yXe`@oUBhd5aHJK#(};k2!Kb&6OOs-_>E6pkV$oAaiWuB z;5Oe<*duf#+P8=!$!VItkN#5O>{a2#tsm_RUS$||w=Xf-i_s(}1Y{+Lv6qgzl+i27 z*Xq}$WV`g=-fi&3k#EcJp2D~(345actJ?ZK9-V->p&J~sW(qh*08-d*hFqNUTbb@X zL4(eUME94_P%CE*alS z-J3q#yfav^qD5q4ex#^NZutClHpfIdB@O2HtDQR9e)$#)dy~*ZRrqPXB;oAH+xFQr z`-XDoC!^HUx{|uW`kIZ0&WiY}bQs5gD9!kS@3B+Y*U4I35QK@+tb}pDCLGX)e9=Am zV9m;KYOyM7-w6_8Y}dkdShx$=+ z;f)Rxu*{0ki#)adeLu=SuXZzD$Btdv?x4Fh>!6`>i)94ihT5x!)`y=!-@iGxT9o3{ z=K&CNu&!eHx&Z7J)IBqVq=vdR0d?aF0bAeo++`=WLqwi4D*5|}eTt579J$()5t8;{ z*B<*qOGJt2`Ji`1DT4e9lS<)^cP-qedm=h1}h@=yIgztpJsgk zU!|cTqy$&lg$zHo!iYra6J?#5+Knr_ygf8hhu~x5O=h7^0h@!DBzG=7FaMk`8jp?; zqp{qAI~X9~CGGo@fi1g+`o(x=3Hk>?zNI$3QYKMe((YfmqfSZt2>Y}j4TdTEW(`st zgU*xPyZ0R{g4$1uz|igov@TO1olSHlvI@~Nmp`*xx{Ad0i4$##aY_kZgEng6%e7!6 zG~8CRm_O~imV?)rd19(;z}Ao`mCfwRlF=fMBT!qHu)tp)xrAFHwslDqsW9x7D{N*7 z$2j@TCIO`yJ@-!&L|X=iM!%RF6t36B{LV(@6s^8fX7$x>i$s@y`v|g``B^bxuPNln z&yPhmW%&VE_A}H5lr~24p^0H)7uCSZY*waah8l7vW$Tsmq^Pnhq5wa_38 z{iD_`WpNuMJi#5@eZ!0Mxiyf=Kd-ZJ&;f&cU$kvzyls(+uvMFI1339;1eUJ}z&BDt zJ_kd{Zd+R=jNCNYy0`r(|J?hV9M_GdtZK{E=yc_hKa%Zq$smk5{wgZr@JH@?RlqYV%I21dz`%_0=xDu5S2{Xp!#TthfQTJRAz!TSF?2DB&|tDSa*xTRd{pv9 zT*)P81S);J&&>d6HgfgKvX|Op$lQ$kuUm}zHnh(S_`2kxrE6@TZ7410l-=lX>*M{i zmgel|jC7C)U7tmdp2tWw&s5kx~iu|=rFMZJ8tzIXquat9HBbq5^rLvBDt z3(XwtzqYn4bN3E>1hCg9zo_A;=ssZa+=YffH&m)+G4|!GEgNTg!gP}0&J}EZ%{1@6 zW(C5akYB=}k|cp}V1hn+t}H-rG`s&orW`1dt?ZM;6$`oiRMaYHG->EPG)egwehXeC zq1o{ZOzZVn7tz<(i!)x_ZT%~Mlz$$A@(D`fJx$!Q6EKsWFpkU5;demAsbCEfA*^kY z3`dcumz;a_5rDjnp01XSYq&V7WT;+zF91nWZGf%i10KYFX7(U1Zw1@9WV1#Rua?Sx z;&%oTqCptFyx|J8f;IaMGb3U5ljs$YS(8pBo8CWi*#k`d%0s{r{ROywUj>pW&;r_9 zL9U;Iz;FX&65?V%Fvzzg10Rzu2&_TBvV|5Y8bA~qK(bAgFbx|2?j=h0yD@@%;V0`2 zL)#Qnyi}KPOk6KTEKemoP?BA*;(RYk2PK$v^b1a4@P9^xvGD`w$xWaSaE_oecIs&8 z!~(>>n6U`X?E)Q$aYb&2c3=0nYYjqp6TfTs&k7Ux!SB|v;{OG{xSroF?w+jUerbM` z{RnHs$-7=NWVg4AEr6Bf^u7RVM{9bn=mH0mcx3CtYSm%`t8@VAQx#!=&6Owx!vJ~S zDMLgtg8-FOnx*+jB1Tu3Z#G#p!fVEFUQL*rxO^EoH-Vn_LU*WxWJWV_P+I{2p*i~` zMlLyt(GMZVU)t&}EY_mOI-v;=&yozX8x5TU_R(DcT`QG)G!;xbqw3e)4D=NJD4?g* zKLtK0S`y+;bU0<|-CqDKYb(&tca(~dU(ao7%2u(j*zl0@mJ)jtIu>|4R~5K==!0K9BPNV)h@3t97Q9gkjJ0McRjFvPXw7P}ny9I#jM8kmR!ZqHQ( z)l$w`I((4pyET>JYC2fxb?2#)H2wLDWc`OtUib*gbjSg?pZ@pfX841N!xH8Jwt9~4 z%sZ%GL2JfVd`*$Hpa9w}0W^_cw8Mb~fV}sA!q2n-(T&pHX4AU1%-fO=rtSf7>o4%M zwdk^rPm&4LEH1Ms6WC)8Z)+?UD|%)C;vGo{B_z=u=%uQM95Zs*F9(H1r7YMBQK4`v z0h4ePdVw6E)6wt_Xc5GKchkV7_rluF6+qmb_)p!ON%&PK{N^P;TG#&Z z{pXO3AARwoF8~dYdrkxsZ*_uIDPY!1UhYe%ef~N%({id=3Pt8tu~*;k>}B+Dq6mEL zC^S|IL^kC{Ev8rj)TomW{XkozrUP+a6RepES}`PEr;II(rvj;ug6X{Br^ospRq2E; z2gO1aw{ZUu38=F`;n=FXB0^5NN@`b}h{_dNTJ@vMtXen-q1cU|>w)sz7H?)p=wqB6 zR{sd%Dt@jD*~}IP(L%53vDH5!*HnspaM!58yZ|f#eBT6M)jdhHr;7=#KyEZTx_rF!y|}Q)2Ao(o?}A!117u0pWY9NRlg^ z$Z>sD3Tyi9;d&L%8IxjxUkK7~LU)M#9PEJ{51;>6P)ClA zSH+TYy5T$t@ko8vZ~iQCRfvbox|i&U@*9!=9NY!#t$UafaZ^CzN1|CN3} zpIgVbEMVM>OH91>X?Uvl{Ab^clD;_N;Abb@LW_kPP&2d~t4@d;sIk$eKEbcec-Hia z16Ym_I1j-dp~mpWqLuW|iXC9d+IG{(`8~*aLYXZ#aygp2M-(>#Y!WW<2S7261X}Mj zQw@6j7kqt(IxzQT}l1p2C$&Rq< zW&Bgxbdbr%1*s)XsMPNnx`P8usAWpN3gTA3FA1hszX=!GAH5{4TZ(L|fzP`h20>V8 zPoS0yJ%`%0pe~v9FS%kn!`In2 zdiOV<&fjlIqh;XGecf(y#s!;)T%a4p4=sRJYT3O-GH|`=F&W4MLA9~0Y9b(ueRjo} zzYE)*fS3W)))xmgqnCH5mSbhQ@C!^cG)n-QjH=HpUC@%5h#e#$cq)OJcP9@BlPIs*k~LntKQVIu$9unn zrIP=R@t(wcw@pz1S3bzkc{W!$2iGM)e2*T%!!=1-7URI_Q!bjn+@#B0#-a++?A*Lo zyc&pJ`HoG!b^v6;I6DO6BS{EMkq%0yZrl^bh~O4sXn7B_{YA*znZaTLJ~P%2D7+%- z??P&#x<$~W&>(WQ0yI0(Ca7wD43-g-f*S#kO--_Xi`_{yUBrJ%0f5=1FaGEC+RwP= z91ci=;`C=Ljvn1b1P;qJ-_w8Qi!St9a)o#N`26UDKbQunKRYPHAFH2*pJlfQ0MQoL zJ!3f{<=@1%9(t;`twn$9!EQgPO22pA*o~dq=La)X$1+$L-DEcy)B`c# zd$*7fSHa@KaO*C}ojbVKsuww0y>Q)R@&#v94r}i(=s!21gNEqkpgRLXoEDD>PiW5K zZlWg-e})KCV8&$(y&)&+SAK;2CXFG$snT3`tmjmJ(K1;lECLv81#n5EL5oMt!jk;f zGM>o{zb?f(*zgI6blG`pMP+v(07b9+LN!>TP|m%Kz}_I_IzliemmAIjU`gdh=S*x7 zx1@nd6^4G~U&|5yPryEww{vW#c0W>o>4+sd67LWi)3wjad*`4TP*-o=O#mK|T)*WN zBTvImi11vb7S5ODmr?(ctKzZi!n^zCT6PJMNwhi#W52~)pPa)Mf zXG8j4Xgrx8T9^Yqp0_{|_KJpgAHo4#WfnaL^r(sRuF6kb)t>(P6P0G<-DfmCpDXDA z)od#*7JxS{$R(hugS<-}moAeKQ)Buh#5JIb(aY3vQPy2%3Bfo;5|1e8!mh*680f&2 z%uZ|DgghUIT&W~Tn^tuEFG^0p|M0UX`N#J^rZ3cxUUt$oDOF6zlsj!wH5|DpTUn=( zzAkFbU$P1+Nozc6CmS^TnCdE#Dkg6h7=E*pADtKdWYB8Rwd7@j;=_~Ds<9vU9rO`m zj<&PCloZQVYAG>8*Mz#$AtoYOi%;c?i`5Uob_Xwav^^Pm-&LQIP(~DpCn1am<8zZK z+Oh*V-1|RUy&vmWaK<<&NAjIrRO!9*Z@I9(4@~h^H>BbblzqBqA-XgUq}22a`GvB! zj_H0dYkIo_=rFN%Am{`rLQ!2wpJ*ohq>jSqlJI4ac(`$T#ZmOVL{t2pdTcyA?aDJ~ z6xyZmCRDAkFJPmQ;NEV3CBWCvz!O|~5O625Kq5-o%kwPF6Na{NzkdAm=2yVTH(0@! zJCIdS|4uy+%u)i=M`KvZneTtgHFzddYB@UDct*sF7su(gyKT=4$MEk>ybsWm^S`BW zlp7~duwLXWfrKzfqRMW&t2+hq*QMc?*ez9u^zb+FNwEpH;ay<((*@SkfY>02E7?5$ z#kl>0m6N}(0(>}b;D{O9l_YO+)Zya&)B7vQ!G!yp27*LqJi5@F^NcOfq`bKDjlio7 zZbE(xm%Y-4o)@%d->)Gf?zbjejDTpII}_wbKdR+sKkPNz`i9M09qyT*Wf&Gdk8TtW zUM3#}ON_vZRLinV`96x~2e?b&^fpTz$}3*`w&ewj6|eozg}5FA>$e|-r;${b?>RkB zOvqTmWHhH|o-G<5n766Vzzv6=hTZ3&mF2ED(;b7MM$fht*NmMcze^|C#uE{p<|>mx z|LkNJDpbXsC$qn9jl$|2dfXPvKz3WYU4kgljeU4+m2T@;(GJ+B-*FPcKKSF5Ob~#9 zI*@$pbu0Q2-OW(93JA2s^#OR^ir__9XGUv3LUys-zCeTmR{*r!H~lw$Otmkz;P$PZ zSYkeU1P7OB(L3OG;d>c?9RbbCwSF~^B+hglBh46x`5*(ruy($xs7p<9nQZk)BIT& zph{t0=o2m64EA~uo{?XJ*kxMb-vK@&I7KsOdJWI#q`E@kQwP?oTx%gY$HaAzeWN>k zqTdi-w7`o8He|E-9n_u=fn`@a9+zAU>h!nQtMc-niW@{-esvAlQU}AwzW5aHsdqBR zpRR&2HS>h{UVL+C`tn9@XdHlnAl*XQ1^7lVejccXUFSJ*At0ebg-Vb;Hwj^Wxow&* z7idMmz+yzF^II%Z>45NEDd6ci7v*OvJ}iX21VDk_MBsZk-A3FDO++u*r~w}TYz(GA z&(~3Lf@kIbM;|3(v0+ev5ZY4J(%N$NM&qL+uiqdXxCIa8ZptBaj1fHnhsJ>#R0ia7 z9hz$XmbI65r*LnZE-6Ks}f!$IUA6UpaV9!DepUNxevCp?jiVdT=1g zT<=XxtutYa_b>X&(8?Z`xaVA-=Hw^xE<#zEy^A>6oG_$(1+ObWdegdDCI}d$s zJ~4NvLP~p?K3wy13=>j?t2SC~`>w_aGGOPmeZWrxT(jg3eg$T_FrN;)qZdx>0U#6L zau{pKxEg4&IRE_RAen3;x_F#sUJX79xSJw;2E;Re0M_K1M}RHB;fiNqshjS8xHS4R zjO=!#B%+|*fE#g;5Qh%_6Qr`}Y+D3AobCc$qN>X>-9O)QA2L(|Z=;zMC5P$p_n>}S z5+ZQtN`~^h^a+dQ4bbEzZkQ_<_CmiIaDWKK=+|*`kmmx+ueSr)IGv3j>P9x6cfscq z{lLaUw^mod8OryeRjRxuW@Q%Nyg)0~ESr#fflFzVb&T&5f*!`~^cE`R-g`#1$NBmz zB968#uB=F4WIloUZ_Wq_!2`YV_{p0%+59zsX~fg}I7{0GsLY zJHLMN4qayf54a93&R8sOK~*P|ttxYbUS4?ZNYn!RD#s5d7kxagZ777=Qbjm8_WN)@1k z0(Z&@Gw1b6E!qPuv#>|8OD8rE^!jAci}gC39i9g2Mx&RV)8U&z1FF4ii_;7aad;KFEJPWZx#5Zl(_F{#?YCw4DF5ZK>fg8|J$A@aVOF>#u zrShpxm}yModnN6$Rj0v{o_}4cxoi{+eIg9;Wrxwzw*tg9m4t{(hfhPZK$iXd-F4+E z@i(V4|IMRh>P;Pp`Tx-;g^vKEORfh%us@nC6&Gd zJ^qTQ0t`Y$VlY?`b{Dt=kzP>$VG<%>0%QbparCS+{>(Chaa1H8L4&7Nf@|4jsYgN^wDey-VY_Etw0*j44jUPoW2IDq3uNmjk6MzPdDX==WczMmEY1V z_q=?#`jo&=>V0#rCu)+5uERGn6Y_>a$Ql5TDFz&UjlG5VUn>7l8h-|g{!|4v>4N%1 zZ_x8z5&hYLB9q76%)!txKTdEEy_)dLP71*CWK`5E zvb{C}_)~=Q`&H^cWlaj${fJ}D&hSp@UYp`y4u0sU!TG$DG7w6)ic~AgT(sO|M!U2} z6+FyvYd9A^-f?qeSmKwd~fB-`mOZUVM%+wB!E=$g{3JlEUTOJrS8Ll$nCoEsX; zU&%)M^LH0^I#Tf19}?oyAby$}Xm$8)FuhpN?Q}htZMBS7`vVS9qb=vf zi^!k$yCx7!p3QhRY)*{bqgGYU`tW#{2)m^B+XBXiUZ}7Q|H}@RwMy`XI*%^&0^Jxi z5(#^27VRW5ETW6EAjTQdP~iG~D0Xh$%pgyk2Uh!m1rTpkho5G{$>aFf|M27^-hE1R zSaAY$bJEoRl!#i_Szp_}VPAH}k*fw-SwWX>pLl3L0=uG0iE>>R5{;KxD&8*)7F~g8SaBTQEc_E3vt{!s>7C_u4X91UL0RVQT`Um=i|y8RrVR4fs+AZ3qp!w_ zPIcb$4BBd=pmah6}O`(q9ZBT8?-Zisrm zO#M~va9)G zJ<2-KifB$;Sbx;}8AaayQdFOC|4JTX*5@GV`YL+*f|B0ptsi%fx+u^o$#(zkkl5cE z8vlMG62yw)S7NiJk6NrV`I%(KjX@fjg9Ajf+R4jcH#zkg$#u+sd-^)h&o5j-Z#|B| zl%J-O(FLHhvp)g0_A8;vT)y!Mjix)cSg;;}gBs;TZY?HeHchQNZPRR#X8l=Djt4M|eX{?)SevW?n%H>_+B(86fv_$;^X zL(J{draiZc-{J8(Y?^3nFoO`?#mu_00?sC#; zf-T!7JljpM;(F>X>6A9f4|Gb(CSUpcHy_nDrFNE~<d>W!_GrT#zi)A~n|CC*YL?LA=>TZg2IDIFr;?YluM<#P#3t;V!D4IWy zj_T|cEBBh%=aO(wj{0HE$F2S;Ddy+>2mH0SKkjlpTXv%*DCZ^u1jC@Hw|}Cn5vq_s z##HpYN`n!77wmJvr{1GJD!Y)_(&64G2+v76ju7Z^XP*53$jk3an*2vNKm7+HSX1tQ zxf#X-#N(9n2g*ald?!I6)V@g&KLeJ%Vm@o7V z#qdRdAu>FHDm-E7z%Mc8JIcu6Yv@Tnu=lTpl7_2}-z0bDo)M1EkI>_{O^{O^V3=b5 z;cUCfdkTb-(-3`t1CIVet zO{nH#kl1MAy-|rj>Y*W_4xZDwTph8mQzv5#8!mh@>e}BG;JVSY3S+ugnyX5UJ#9u0 zL#Mj=-=hTagP{+E)gq6!e9BOoJS^Dy`GG66I4y9IbKbMyc)xwaK7;K0*GIV(XCF5& zzy?lsWuFMaJX%_^)u#`9*!?b%;d0NU?>BL8yooxF2D1tl<)2V*9hh~Pw6W@y}=9=|?aXRL* zQtM9wSBq_roU#*>fT43Jc{?Fpe;%KTOHom2nYSmKMD985mW^Rh)0sJHzxUQ(T?l=x zzoQW_XjylI`K@aW7P%PZmgn#SW7_{7Ksa%k&@`_qt?*-pX^;>Zq={SWqQWLSBH^Ew zzNBl9X3VkAz4s0*L*-~#*(hai9Zy4+OZYZArC;XZ`O0bjFGu?Kj*knK`4Wv|%F_6Y z13H|O2X2XZX7q`Po%QrdB_yXY+P!T%*~{CTjI;;4AZK>F=(jLVg(?KB;FfG(M`^o^ zV~hr?k&H5cJvXyH-IPn72Okrt-pZ^{t94?zwtdeQt}D{EW_P4d5h1%r4PKTWRr zpz)HgNyK3#1E1Q2XzJUPajY3JvyAo*;s#M~?}GK?7Lov4IR-?7Tl~t7dje0P$~{1G zygLstmEKvJ%*L5#4GT?PiyZLI+^w)%mIJ&2Y|I1LQR^)rSG2+MAu<&r=PXTztEs)X z{jWb$%wrU(sqGgYhl_$b_EqBhx5h&4TmYRJ_vzQ2-dKYlrw0ifFD`l32kR>Xdp`PK zad>Mb*h~|4&x8m_G;Fa*)Lka)mrjB1_;CP6P;u@n7eYmkBZSiqA>eXwx6BaZlttlT0UGc9G6OX~B*A~}@4gxZh0I`T`ng9Q_eBP#vIW;G+ zv{~Qhbhf@A!XPvt6U1d|F9+w_a2~^n9FafQ)za7CCew9_#Vk%o{ApZ^_S<%&`)Lg6 zSDA0S-lptOjf;Bn>FZ?vdaNCvjp0i)Z|!NkDb#pu3-WM#pl?QdS5xlw9G+ay{5iTvg2cfR$-SFEI0gA5Fost)>)w zhx(B2)C^EH+KPati^AsXP}K2R?9gm$Q8cQ;;4OU`l1q0Mo_FBW3Jtp0S#A6j%w~?z z?}^L(nRT(zIWV!UH4tLjAw$mk6H^FXV3>b{pL_|B)-_-iN(4v)mJdSh9BW`HVEz)a zfcB=K)niktz+0NA8FQI0qza6^X*^T`GKzJ42^Qq5#rJ_+W8-Z^RhtLOeZe;9m#VOS z^tuN^t8eP#jE>OGAEJjI4X0SpwhjuX?0$nWPcF%32MUthsB6MYoX|L)=xrZ4j$S59 zs7lbhni}7)$8q?5rub6;R(Q((Um3;M>#&}L4Db=Ve)~Zl5d1c$)*0&?W`TqLz-Ki4 zRv-A`Z@JJrj;{N`wz4s#7T5vlYd3xTtpMNmayci!_PbIX}?#fdUCU2*^5qn*sv*9m%Tm-yCg^+iy(33AXoa=tq9iAyztk-WT zG@tK;MD*2+L5%Vd^Cu7rt0(#GEEZ)J)!qO2I$Mg+zGs!sz$?o#Lo9Vj&k$HO! z_D8)o?;X%k2YhzZw@w@S(rdsJzE6#unZ_?}#bUK$3uqP)?}4py8mOzOhd7dZr@?+6 zzYzF3iS1(x^hfaR(BeMq144o$&=5~^&m-a6wUu3&*}z8K{jF8{ao_isG}tl%2$}nz z&@-d>MOv(oHqr;(%}cZFf`f0?m1FtfLyir8oyC9q1xGsGhx^hY!-ArOm|8S?t1z1_<7$aUW=O&KC5fAU0KqO*|U!~z06y@ zWu{Pud84xblqNKju51jP$UGJ;k8woSihQHbdRW`s}jOC*|0d z9#N5Y7qJ5Yz2k{>gZE1t4jdF57MW^Uq(+z}M0wpF)s$OFT1@^G!}_M<#|h@gZS&5v ztzyleTpnx4#fif$GUPisiPmV%hox`n%`; z<=OqpWq%D@)kMm3v&vPf>Y&@|T8U64Fl$m_PrY91Tm$SUhnc1|}# z_h9X`LHXSNF6NB(C99#(=@&8Q&jB(n{ibGoFVgo%J=|80pP(WmRBQxxywqLZk^u6= z6h=-mc*41aFUfIHp%AU;6`2VGKtK|Az|fN=cR&k!N6vWGht5Q`kTFwjq<)1n_?b;!NF z`CcY#X089zG>YEcrN#3z%$`F+~vJTWLVQfSG z^1S#@kRc4tv-h^A#)=+G=!-kFWlLe<;vx$#ydN9T(yU-?!=77km8mL>C;js5U@<{d z#5k$&`PHg&x0@lt%QSHng2X!|F<@__ZdCwC=H2=LE&;y0{%txw+H`4RqI<^MR^ZF04PV9YZ#~*H1$)?L z&+`1_V|tkKktJQ2RnS18h`uO+->F?po_XZz5dp3fDaQKgI7;`0St6<`?q!esk!Oee zPyhiy1E)_UlIZ2oj7qfc_eDak(jto^Qcy=$$yI9qP68>b4JQ}u*ZQ^t^bpY zC8MvAw4|04l|EtI$Z(##>m}M$VUqv3UG>pqu~*)$;y0=+&yR{GyC%)b= zS}C^7PU;rAyj*1tul|3g`QIR2@G3q~M_4kecK|=i6q~->&EU?&uzEAB0Lq}bz;U-k3DeL2X+tqz0&D+D^Jsy=2uSXGL zJEf*>zKc9z(|o*NO8|mn$N9J?v5C55qCIjQj83(I7Uc+{~cER%5BDn9w~se_WR;pz@W+oZV=Z z@lPq7lVG$0*_(govQ4-AG4V+lGr@5lL?}!Ai|9NvZw6dp>QO$x6efF#}!iN zD40DoS|0xnxc}d<=PZL!A+nwJk@-B9?anp+MaOLau*jxlWY1QRz=|RP`g}BgyM*k= z8P03NGRChgXb`$UwIM*f0J^Gz6j?ZdxoeIJU=Ai?fPAuVc%$Jw!AHVl1OS15odCds zdxySuzG^KKk4L2U-&kkKs|;LdNFN%mXD^!u4dD8xlR{jDah+MhZNUbHw$}_Q_8Mw~ z^*>%%V%;LeDWcU#4X(R$^6Af0S zke4F_of1s5N4sIVO;$!jZ9|9s0||Ah18KH59Q$YIdUJg$rWqtE4rT1o3pl?=3Z7JI zUbF1+WSq5pD8l0W|}+*x~_R2S=$8ohlkLkmz(H2Sp=uH`?xw?3t_JH+&^OrluumW*4A&eclbjvAaAN?uu;dGWT!ZpHDtGF!HNgzro$D@8w%qzE=0pW=`JVVQCOtIY;($Zl<~)-u;rR zzQ?6Rw3mwe)6&gmj;f*dPh){+@7T2js@yD5B^W82Nk__{T?39M~!0&v#)1y-{T zdydt?a1&rxEFi>dwN@Y+;WrFMuRGBG+-~ru=vIoPM?<=k{sv4l0MR_|BCrEf`}`ts z#jymC&e)^lD9Hp)#aP1j5?LVo3R&GnI**)86pWJYk=7IOZQu#fW1i-$h_AQ8E^byw zHiHs9HIl|s39s93D7*R;XMw6WyS~dXb&n__<~6cLs-6TG9DMECjfNR`MrPl~ zY)M5@b3JT`1<*RkW{^OAip)3U$=8y2e+nX1$UHjQ9rq!%d~C*pk1$>SJnzARtL z*0HLw4o@F9j0x6V%pl74stnFnk6h!^eAD;(2<8th3w{c z%e}biph~+~DQ9VKLC$!t%XkxKyR`A^gFccR4mTXV78s1m(PN;U(9^bSk65lpqbW10 z^_nu0PA_D74L$_^&mb%NXNVf|uueGQxW3+f5an9h0U2}JPJS|RAfH7q>jlH~3&4TB z+%Xd8gNi;C`1-uz>6~33t5Eq`S8YVEwDuhnFspR#lbt|zb~uE?PyITg7AK<)BaGLUE{Puz@9 zrM1!1yrBu|i>3VH`eMh?pJP6;Kq?hPTqPOtcunPlf0zqo7C#F>CN)1 z5NG(cnH#ehWz04VV$vst&-t*T)UB*EvSVeUb8W3cRcCP@nG7@D-Di0L>Dyi|9?8XvQcAMyTN@0f;yoUY}6}&&CUGXowwvgrBqJDD=Cz79XxQ)e6q$ z=yTe#0y+J;r&coJrcM|W{`LYlG9Ohv0~VgNZ@iSB!P3D)Z&_GkZd`kydT_G?oiz2Vu7GXPk3U4mgT+AXS89DgE`^6`0bEmvWxY(c_t$783Y%;^Lkn9Lp5 z^SfbplJc0;ffIr-cJa)S`jNWaJ)ND0E?K#5D>7#;h#6C?)sW&i8U;)_$Ah(F_jh~` zb?Y_WJUl;g;sEUxw-kCxZlqQCK)e5lZ?5F!h*t^u@nJA?Q@*Iee9>D%S9+ez$HX_z zF))@YU)DZ*aO%FVo%Ki!NsN-Qv9iN%pMt-EgZI;(n~E8_F;((%1sT!qe(g#E`+?&N zYEf(x2T!)x7;GX92v7};kejs9CQ>>JnPlH-1Xec-7Q>UmuURAqTrglzph-?Di1PyJ zO}1gQll{S#&)aLZxmdtO*F@JK`uy0L8BiGmmHj?X8UHsngKG|dQbh4wm5pn0^J~i{6;MQ%c zwS}w?Y2Ur?E2r>qV#pbVR~cT-{v)p* zH-4QGSP{m9^6FkvRvF@LFSMlcx!qVZf35!0kkKjm-7VQqm3YVr9EIdFo10I(nHUW| zz97Wm#9b~LPjgYbrJGD!25(rbwr}PQh2RNpq)dHUN_w*F(NC#=viRNjKZJ zZk5u?Nc2r*XkAUcVKMu%R%2xAfWt!tf!0IBgglT09!LoAUp+`$d~lMa2>r zs1ZJ+@n$CJb(luy)i%tIftcAbSo!Qv$_Y3P~VyN+N z#c208y*&0#@Tg{h7c$ic_lDrit6!|qT5IJx`PMU5uFQh0G+wX8*`9^3A3brxn-#>I zF7ci&XPskh)?svq<(~A3qp{EZbVnWA$dxL6FFl=$chB8P+UT=_3=}f4lF%VmzqcZO zmo7kaBk|cvbvE!p=ZID_(O5Y%!R6?f?yEM80dA7VC8gD0%5ccMpYIS*Ol?f?8?RlE z`ncC2c6{3?vRWoxN9cu-> z`h`8%6D~_^%$R?lF*%jW0P^Ne5N(mfZOyNn*IV;};yd0k;}uU7B+U=~$O8cO+rcCd zP_3R^OWom1+b}%eTJy&H9nYFt_XDzgjQcNxE#0Dk4n7?7laz*(K}nA+GyF+z7*0*# zMKKVlgMjZ-B?^%3XOe<HetHyWFIw}7$j$*5hRHf1@V`CN#eYBulc=`kII zPT=GW=`4UN&GpEk?OGYB%gNz1xrK>f4t)^q{%HIA1?g@RLE`9i^<`)FUu7ZWQ2TN}nYw1%XZ z1(iJt;hAovT`tIHfFMe$`z=6mig_(aWuQ*G5oRE>1KHVvb~`hE)t+GJ4h~6e)Pqqzl)SE6OLyt{Epr zFDA*}9(Nens8>Uu=gAyutJ)!^-Fa%8DmZNe&qR-)>jsGWcM$b=83)&|BH*Gps6Y zd*-Km8qyMw4>;4~&9>e{PT0~h_4?&+NOCX21fUVX9RuhF%Viqf1c7mFp;nL)LG zFEGV^eP_Wq+N`GM(SGR&-$+-ov$ou2)f_yMS3lZKH`)+`D-49kXAT?_JMA?XDm8}^`-PiV>BbAw6&+MGNn%SohOLlfT{?FHub94-Ftf4tb*G4y z><-Iu6-GqW%GhP{jmPg$i-p}+d(hOhlk@giVx(G+*EJPKWVlAK2dBT~lixI7f6H9o zIQG}uiQhbS5t*3}>N>_xu~HSeohVI(9BmxP_1bC_>&ISdBUoNyCMM6Y#Z0)=bAszx z=?$GavJ#bdHaNGijtoXZaAgypr}wSN52xEai_FOjD2JWpS0HMt&erv>o+dPLr}Y5k zQSoP2TesfYbL{wxk&tqg2LHgJXazi(Z*}gK2!H8uikRE)SW=p(P4{ZKp^k>LE>wgO zC=1d!OBC7!5K7 zjuW^I($oGjocmYd>;IPPV#FJqF2(1^b`(N8Tl#_;;ZNNmr^!CP+zV#xoqk|=()&`THLUU-jMgF-oD{;%1GqbjslTgO?h?x4v6oV6@LH09uyyJGR7 z@xgGyg9O+}FO0ZN(abxIgOANRUQ7oB45&d1#XmV}wQ;@mO22MV{rKncU8DGC2bh`P zL4^FnNO^tfLi6ZO(%79lY*|iJ`}XG>XQQr#TbB0eNQ~Esh$QJ>zr;)L=PYX~Az*uI zXG|LiUw&5IZTff$em~OLrEQ zmcEQ3L&N@@oz8>mAJwv*Y6YI%#fr#Zp?JXpo8%ZVay1_a@S;lwl@6dse(^++v^Ed8 zTF82XetOR~!f;r;OO{FK$?}qJZV%)m)H$Nd-6o2AbJy#{yoh#RbD=v7v4Pc zB2_jcli?}8ijPc30ob-O!xaeW9Vky&0Z+zaHll?tq6}Pp5Mm3 zNa4uc3uQyCqo=b`#gY!P_NaRx>U=BtOSWvNRsf0R_-Yc*kAnH13v&PXH$A+kGM!CG zg_mSecY<9tW3<>CN}LD9flLvWXH)#IvmQk3qusrk-0)5RX)*a}rU#Bq7Zh`-S(8H1 zUI*oPU4>{WI8ZXD6;$ET23hwULOrxf_{V$vg*e~}Bu6UM5x2>AubYBB+C{>TSf-m^ zC8A~t&ha^~s&>5T4*;~wt6LkcWR!>3*&v#*Vt6k+zE%>73(Nb@6Y&2`*ZrDLL;cR%Db5;s!C|@xk(h2X~O4F`>fy z3LpM>KX@D%q}UC^{L{if-{sw7e+Fu$m7o-#S$)nG76ipvk7PwXZm`OJEnko}-dAS1I@nhA%34-(9Kv~k zOi#({J`>R?yd=wXzu|+nxV=*??q2!f=C5T)m_ZF$?+II z1|gM}=MN$3ykX9J9Q!G&`EZR$c!N)1OjQ1sNah5O(|$mXhjGIz-m<<{OMh;!* ztGYI0A0gjoix17nH#yc>dZ%-o!C6O&ZT<5c)j@(W&|TdADaFk%6MG0*M#r>-*ClR= zy`;BGe)5KyG5|AnhgaPY#F_BLT`eG7U4&fP8)t1P4ea{|6wwJV-7j}gUBUYfrzl98 zIRF1@Kz!Gt@@FhufAlp#Q7Npn(Mbh#-}!k*|7_cvmJQYu%~O3*4ty#NXO=;SkTJB9 zg#fcpoa0_cx-829TaHujr|CGFUPga32t*lMJlD40Y;~>0?W2munA~7KkWE6qJgu?D ziLbLWE;-u0_scAZnNUEyz{?k|K(4xtr9bW+BXyf3p~XZ_<0kuj4B7ag=F+W)vaJ0K z+MM?Lh9q2aMdmp8<3oZ|C7}f!zo2;!P%*sB%Jivf(tIShkMD#t(LM8%5`v+3Og7lM zzSn{ZVsMsp#2!MVfT2>iWtrgud>p37HAgZ}-C}wFxWD`Ao;(*7&=57uL-mVOEdtv% zY%EHt$NSXo!B9D_{}U>&Z)P4Hob$G6@RCRj`iP)i3-`jjcxjZw&CrjCCf|<*@`21{ zW%&#b3B&5eI`o(zYfwu4_<;?t>Mzb6{;Ryob?_1)t<~j??cYsFbmAhpHbf;oV8inW zaVH-`XzLzwapxOP;m zfvQ8wCeDm>%`r}#MPvYrt7zQ&1K zS$c11JrLULj0Hj)N7(Wh=!I-yN3C$`<+!m5j{x)*E9JExf-werdfxkJM5iWaybC#R zw6pT?Xr$o568RUnSafe?-aPl?W=m;{b1?Qr8ZX;YSfZ6pn$0}-Hsfm-BN?9Pu^lL% z6Sd|GiH~{{(tMsmVlsrzrrq;{e@DED;`WwjpHNC&tmY-cH)fwGXw~`qXY;N~)D?eL zqW;s`L3T+6t1Te+w7<{nfF!J_^aTlf*60I68(iP!#Cr?15I<)l{i3$uVY-JGwa)C_ z9as3cXbx89a&ST|_2PKs9<`3uTCPEWZ~V~>LrC|CUD5n_XuI4#n+p27&?KT6MFXYA z;HMvhFclUD==VAsPz%O#@;0$2j8R`9)z$R{`P|g?lV5Om3B|*_Z#RTl%8IO}`~8xy z|39}Re;Mfi)>ni;pXnm`d4P$5d;KESD&PaYopctIg=q#Z^Uz5d%>&nwZY-`qy+fV< zc`aUV3zgOy$}1l3MJN@ptL0F^7oL6N_17zPlC3L)#%6JvYPbA)uc(N=y45~xA#7gX zHI>N04%*#_mM(KD0Jmc&W_h}+2R^SF34}4Ux(fr?f?Qz_TVe6H%Zz%&06>FO-)|-^ znodTp-CrjZbT&wMSNaSTPBDbd^nmhzE}8^(Qbhw2S1>{%q~j6M3X+8*TuFnlRt*#Z zuZ`?_x>_FKZ7S2^BnabTPlCeD4GLzUpRhe@?Zr`}iExtBDeOcg^1g#LjTZPG^!#`E zcJnIiJ{r)H{@B=mZ)WMs(j?+`^dJCa4dEiWu3(yMM1cR^iRxcHiB){`d;O1zPIn#H zq;;M?W{*VK%LmT(vA18)y&Hgyh6<2=m=9kVKo+3ZyhkfYKI%tZ51*F<9N^hy`Q>RW znD}cp5bP28<&4E^j}JJLD=vVzbm*qFkgA&UUS~Me#N!0L?puW>@4 z^fSdqosxVZl$rwr;o>!!%Nu~5qy%g*XNVRZJS&;>(Mp|3G?G-ro@o zT2XlThccF?oZ!?mxi%A*jAJ_QF!WlO2~}4PIgp%p^PL)eQ)J~k)S%*cXozp8N=CYK znH}?-(vb6Tv3gVJ+_^s}XiUM^%LEkoSG!7$=DA=_60)5pA8+`2U0qU@C!9bo-ADG9 zu0ZsZ#SbIPTqu|3KppN8e~fsdgYR?cQ0{12nl=$EUTp<3w_^oTjv@hZ{+f*p8BSP2 z<2d52yI%GRPPgPvNjrxXn zpigHk=q>fNPbE08C!mBCEmm7~Tw(qRB5WdohNMwC32~(r*Eh#DTM)&ZIqQxDu-!lE zH4eX0VeaKthG9n+=BF1&h81^-!0ZnQ4cVFA(Ps*Z^Bl6ehSRU8iUY;=zQ23PFYr7l z`S2iyco+{GX++Mlq2;owAL>psxsh^#B3;6vf215kkg`$2Uja|P@9J+N)9l<05`f-T zuJ#k&t;Uzz-L-h=1a>SM^Z`_lOl>vdG;=rE*MSFY4SRI@}V~w!YaP05RK#>h%_hS2D6hsHmVQH?s zS$%3J>HH+JIS$Yt@>-$xd@GQLRTan`fc$v-IdaYEn2(+2S6^)mOcuX2J?9Ykoi_tl z8?x5Wr9@3(6!j;Qn?PuLuIh^k{N22z-^=UTIM46r!ETHtI|L&(CBcJt?SA|Cz+pwW zLdq^w5mQC(j!YPx#_p%hcXzp7*Yo%Ph#c(-y_|L$jUo31g`D<$jS*SrHUjYpB|3%EF|zHq!9X0#4(hQM!0(6~KxJHlgj&($vjz45y7=>HLOAWkEaK9jx2F6iy(lDtuO1>hw9-;v$IJ8j+ySCCRE!4F;~ccGk(Q(~j-5emx5rPhteg zy(r}q&8?e2L$7mw$Y#I}yhz;Ef;VlC#drTj)%#*vaNV*co@BO5ZB63}EOe@y=Eaps*reJ7tWQ10_-kPw70I5zmlf zU@^P^P*Kckor1qG5$=~>`)%q6#Io>5*2~!2{^M>0mgN>O6{9v+$Z(84S8Pn2E#7oF zCxIskqZ>O5eXosoUFv@$E&8xp66Mz1jCOgJkai11Xw{$f`&mf8in4T#vcF`!H{t!L z`m3b6lM0>Y10-u_N<6@Pu$i`Vam2cc4#;GsWX;5#dfa8*fvQnV|^TK<_Mfm zB7$CVR2|~28$!d*HMZ5=Obsn<4VeVoR{UyrIZ|qilGqMwsH7F3sJH&`zerf92QH0; z`t)}Vz87o>>7Hqr?{{{N=LFC^Xm{?tX9|y}QN8oJrpU^!=V+OX=LY1r72hSaWKA6< zmZfQk((vDhQ>grRujTTUpSN-rraY$qB=czgFP+ z;qK9c1k2{Rge-O?zeaBJ%VQ^;;QH40pAf_3;jrT)1l>N577TA4bqT*lrn z`T*ltVLd0N*oeF6Fr=;JBtDcRV?{Vf&ligN_@BmnCDz zXB8x!f`;$^nh3)89CK>~$oe;DtU&GpM^qvu{@)f;ShHAe z*@>6tA7d!!Cv!{9vSyxIYNBtN(G-;K@jJ$HSX%~EI@d{*ls|s&&6FeKC3%nIY>(kI zrYvC|ZmcBe@T}qh+i<5oxqgqV6wXK{*2JBHhv_**&7QuR-mDHTsnohiV%_*NG^0`@ zHqX&?8R@nLRdRl9Ca-$Qlj^z5db`RPv>)1w*Yu45q% zdkUw~*+sUyw?3}Oe4oHlCYU#jd)FX3=aWh24$u2`)*=!4wwovmFtC9NVDYTQM+{IRt564SJqXFd` zY_--RFu)&J3;6T%ip!v{v!N+e7Ul^?uP}n?8GcQ@LcM}kcTh;vD2EdkthKB$7CtYZ zEV=3U&_$oI*F7JWaAzD83Pk(=9mpec9Hocuw8EU}G62O9iWy6z;>VHY@J8$yiu6dP zZ)9{5o97-uKrv!Uxvs40epY2IAX_2)a0=E9TiTn*@u3-5%kAbX5VBQO=jQ4jeQHS>Wk$QTW&xoI zn*MGDtBN*?t{g9A=d7f|)!vrbgZD~&pUv_$M=MvfRz|2Tvbmp~xYGm=D0>yE`$ z0~ZPlBtlbG>h5pD^=e`;V5j@VJrj#FzDG1nsdQaUkd1yXxl%h`sB2HPJw+%;di0=W=nJ~wZt+kL*)1&%`W z1+MnQ{hU0^9*4Su;Kn0h@+d{u-L%9>EWr(6aWweN=QR4`*Kgl$b1yLlnUnCV zzxMthDxh=DPA?JEn4PP$B{F99>YO$2_5g;b1LSe)P<|deF^mLW1S~n$T|_$=K<@r6 zRhYbLV=&2hs{rC#UsmG3Y?~$QXxR3{*CooLq#4YlIIB&V0oJ(4dcf)q6A}p$h_2z? zE-owU8l#q zIIZSz>Pg%EGK0OuAj&FBukdpu2N!5NM;yD#mDQH;cek9e?ui|#Dh4Swp)ddFb^LF3 z{>=z(VnowzTjQC%ugyblT+bN@@b!2ba8r=kYp+q=i02dos@0mB1JzL-$oK(}2>9k> zr)XuQ8g$Z54@G!%3#^-(6SJN+sddJ^cgA;SxN@Ik6D&0# z@slvRiTL#GyZiOjS5s=UFK_xe2kcM!8)e9Pbol05{va7h$~Q53PK!EV>2oDO4Cj5p z+OL+&(j86kL4?m!B8dkX>~kI9`SOeO7}zL)M@u}y{iVok`I^!3y{Bo(OzTb*}u8ob)`a)mT03zSUGIJ^Q{h z%I9j8ukNtkf93%lr@A4(VBh^sQXUV5IlRc^B0TheQR@0XXvDvQnV&KUej7LGX!@y%-DX)NT3fcXPyxY*9J!-VAb(wV^2uA@KH2 z`u$fdXkp6OAz{R|sM}_rS^}zrEYr7SbD_JYNa~5P3IXu`%daC~QuVa5DL8Sby9aq3 znB)tOrNl(!vV&5f^oboE;MB?+e)uoc3w}ps^}n4Tj(Ng4ytF8RX49cvh3Igg_@jX! zUOF)VXr47e%3=DfIp zynpPO_r{}%ES`8(*{Z_fa|a1=FuXclDPdU+*yQxp!Y`1@&LJUDfR#FUlaaq@}# z!W&%l@}&vFk^|MLV^FiW<{w6_l=%bAbTvvXjX5fJxp9ni5tfu2*}~uaoN@an{!Ni5 zK34TgMd4b3~PkSD;Rm4QKr{CB0;rf6cL8(=OR^P8FI2oJa3F> zls*;ByXN!6b~~Ml!$GaMJ6HS1bkP*BMB`fNE3dQ2W7!(+n3wLlc0}?515^qEa>?$T z{TmGv*@xkT>@}EcBX1(o z)Pl>^Wr?Hia+IpRz{@R2oHQkpVW$mENvA-otam^c{6c^v3q+5_&DSJhi3pPI!khUk zBxS%aPR2WdGo3Xh1V8`G%|T7wfP8ob;;)39vTjj;H-Uha$a0G#JCZ{X(0c1m21vgh z>G{}M@O8>#vG}Y}_Q(+s?+PW3iamh^&?CS3rbB?=)9mhAB1iT&bP=>|XcXpvkg7)AEoy*XBJ{<`9R96hvC{m`4s_tW45N?iHOtfuZvD*c==cN&BhMB zpt+v53cf!t6u)L#BdWtE6GgSbv_KJpJXatdm={B@L%okTn6)g7 zl#vA~Q?|rSu<2V|B#w7(5#hXNmflx~!+JFAvPnNME%MTWB35t$r#vmPh6T*n>#Npr zNSJ-_+FVe$_`0LBnI3fRZMLGM($Y4x5x+oryEfiFruF)e`Tgq-vSCn3 zY0-TeA1|5mj6G#z9|`Gpa}|skIp6wag%su@mzwAu;a9%3jdk_3EkB-C2df1uOk^rg z4pe>OG&9Ja`yV#B z61kvD4g%Bsp2QAtL^>$yh5;hdSv|zDQx^9SoOHriyp}lgYP6P@LnyiT=J)khXcJODj zmq?32CUp4`HOSq_{_s!8`DWnZ=2~AftgQs+={ld++<}!ue#1N9aWZQHsi`}c+{ZeoVm4FA^SYnRkl9H{BDP)@> z+Z|03y06{TVQ}c9XlL#2*H2Z{SE0Y;I`Fjgp@NPl=rN{oi+|~rZ!v+B^>B;xMHW~9 z95_U!q=*&B;>i_AYkih5Dfv<+uCdYXQh|Iz85bASU;cdF&@GlX^K-DfI93~B-5;!+ zg`P_LVva&A#dnZ<(R0aJb_w=o8OmvUarBNSk|mY+N+p$eJiN;h=LMlSyG7W8LvHVy z@g*NX0f0WOoEpA-4OmSU^pR}jHy>o^Pw@_e4rlp54dd#;9=qBv`)jmO+!Id${D_ka z#C!b!*eM`lo1Z$71N*XnnN(nb9Eyo=7)c8+Kn0c{89&qdA^Crk02c+5V;?4|OG^`Z zYhwE5?FD;$)gE5&R0_fguBBC}A@GCsw9=A+3cuq#=^fCF)_5zRZG{*U%o>8_N=<Xh;V`Wl}YM&9)Kih;%KcRygB}uhjcC;O@f(TVnBpNoK z1WoA3LC_?k&<68wLMy2k)34c!Tx90jC6s^Ct?L^4 zxoU%6-I@63i&CmIWjZdmhA7T^`E7L`DHtCg=Nj+N$_j`IJD=H+4VF8(#>NLxRqc*Y zsAX55?@{j?-i>``2i4`ylh?S(p?CIFWua~_otfq+KgeaWy<|Y>M5IqC8`@s%zHRFL zi-OX{kKzHc_?i;_Jw}~ed>N5mk5h}1R`(cRgs>cBX>N;07F@asYCuPWtSLCY$@USl z|0omDoaucNpSdzdu>2J-;5_a^=j zDOYoH--uGiG_(C?!}f!3i>STW*+oK05-cHSQY~$J~-;2n6G)X5a+Ab##*gt z!U@baV7fJd*gpzTN4Eim7|_GCv=iB%f+fh(`;Ef%looYAT3aEGe{&vK&rLfx$+c_o zB(UGqaMo;!q*wxGTsVspJUDAl!Zi6dhXqK3ObJf|SJNE*wB1@7NQeanVAm9XbxQ#| z()y(*zO96JDRGNYEIP)CeYIsE)qN26yZ(Fm+Rz!82dv+?2|GeU5)U-a7CTkSW5Os-|-UI6XN9`9iUovbpJ9ls%vjyGUGoEuNl{!jp_$2z#?Q)25Ao)AT zAG|E9PB%0i2-d0{)Qq@+b_f7#pTVz5{U@uy2a+TdKrKTm!UsLo>NV?xeE{}h2^j4g zWM9@)9d{jj9e3?#auEO+Wd8&5+5TO`x)xY$y!U`C>h%J>cfd(~QVVkE;mAXD*Eib- z37400V3XH|u*|^x$^zv6wOAu%1nFB_JrE87m{$^Hl)VWFU*h1H6CR76j2xH>Fa50R z)aU*UOEVd+>j1J}5fHzaS@5)5ARZyo2*BI$m8mCT>j8OFu5(m7MV!1PAGz8Bw`Jsu zgCULvnDV{2*{{9dQ$&5z`7C#$Q#r__qKibNhA-|JW}2H}Bi%Ffwh*f}VOp(x;R_bG z&oTgt2>edcS%8C@E0IH-+Oig%n?OP?4Jgqy-34-vl(etl75Wh*mQ`?F^lQJP1sEdg>odJ977Q8b>cCgn%=R#ccN``n{5rnx&`y<;R6J(MI< zcRbr`bB5ORq2-pm<(6uCYle7}9K8a%$r|e@Kig~i+|xJ+HA*T^4Atyv-jo}blQp}@ z_WFI5%&J$D_nk`uJMiAQ2=^j^hL>eAxFj)rA3!QHu%%vDP=etMCz5Ja`(C!`%M+5j zCucf$Pd0bx1z<#N{(k`KAOAVx&=eO*vJ$zptV<*td5ae4)g^d71+#q~yF}i6N`Tnu z;?8)DGy*$cF%;pkc)l0h)*nqsE@h7`p%@7gWvW-#mC0<YxAm52GL zkQOMz`>W4`2Y8q=>B|HC-}EZ3hQ|U_c}X3lkTNYD5$@$o|Mr6iNNRBmCEqU^yC z{E1woHju*Fj0yjS?8utbEpleYNPSFk%Iw5KagHB_fB`ZH?3nMb8E2 z{^z|SNBA7wc|}2d-jpbXoJOoblF{|>q>Os2vOD9ap7s}PVs+)>>L-U#`G+_V#a|Pl z)bT>`(vQ->{YY4)1-?roX7TPQm>o}$b45sAwZ`OL-No(j6^IsmhR<8)rfKhK;H9X4 zwXlen&0*mGE$SFBU(k8$?!y``@*n?sp9>h2vP@I($N3E>jJNfuqCcOZsw z)?uJz1(ID|)At_Mp+95~{7YSSr?0aM@sa=5mBHwO z)Xf!$=~SYa+ql7K&`1j6S*u+-BAM)RZx4j|M4zn_PLvuSJa$HxT7BezCsDGtdRz_1 zY)e5u)sCU4=i`ZH_h&z23ecAxM>iYe_n$`;e%NNbFN# zFB4jI41C)^+B@zyxUq-7B+gg=erV|WP{|Xe zr)lt~3Oaxk+(B6kn*oLi+4TvD?_ipIK>&aiwj@9#0rJ7SVOhwAZ)t#X@E7e}J37!J zo_T)Jci;&k7RbKbrsM&`JJhwXq)QTj6WCz@`&N^@S0G5ho%C5b3fWMiuaIuo--He$ zzqv4=z}J5>#wu;MkteVqhSK%xS_bxk4poCFZBMqhh(d6idQ^@XS$yOoU4PU*r2rKcfhD`o`1HX`gZ@Npi{qhC-f5d(2quugw=kC(Cl^}xND7xAwp8}c3R$xG+f`WiY-$bOL+Wb^y*C8{{SvIVgW zr&Xq0@(ZKJ==lwiUun0_6R|$u1NYU%ufo*Gwb7gJ`AYw`FD8fp=mQoLz`*E&88uXb zdHt<3;(2KDW#ln15`r(*{`hZs{Ke^aZg^m^K$09VS83QKz7fn80(|J0H83*{H-Ifa z`{kGZ8L#x1HDt)0wKNGLNE7dM4Tzf0ep#=eL)N%}A?wzA!_46RzuEK!;{Lb2W^_G5 zPM-oGp?MXrP-+L5V}TRYua*8q-<4^O9iN#MoS|G$Ut(N^Efq}r{xwL*o!CLn704ar zyaNaY!0va=03?;;Y+7vra0!iykOJEHIU6q$e~QmqWCoTJjVlEJ>cQhWB`xPk8DX}gMy^Jd)2Rf zq8SnK2EtE*Kg{}mTDaqFepppa&2=Z^xndqieN4(e^`Ccgw$Vm0t-S>M+6{2M$X4d1(QNuIS7Vct zXAB}UUDdQcp5A!`%4)1*X7nn;qn4AC-ak+@#1+&K`HH>%yqWrk2Z+8QmKPoxn;gS> zN4TofT-d6x{a|@Q_!}Jn3toZf;VAGl>{BBaJKZ>IRmJlifz-zzL=lroG|sLIBxg2o zqd-B&Q;3!wvnr@{M=@Q^1pxwSP^Y0400$x6t3PuB_5tU+7#(*lwiYfVt`508k1WW} z8ZCH@SuI4Zef5ix`fq!MeuMo-tIpF}*B~9Z3HGS!Y5m9mWNsnw3TlQTJeJ%>CH_f^UIykN z(+o(FPs1*sv`HTrA|$1nuo*>Q|K_+vL-s-E!Z2;HD!uw|G{E;3#js*=FzF0=ynFBSZt$23E}JB|Gd{Xiq3c|f!ISaHw}$eX{~U2^u7z?qZw)SFwMxtXOCjnj6HU-?i};!y?f5GWQf0h zQ&ew#T!yM61fQiCFLA|ZjPanPLo|U?_7KShP^S~U$SKgwJf#+k8(e{qNC1UW>rl?? zu)JNa4kncr+vwU4SRvxR*#o4Qtvmi^uLxHTENMzRu+v@}It=pJ&X_JPf`AY95vYl} z%68R*Y`gI1E0AS;I6;=F)y}7Kf^yUeadROIu{I=@$b?r779bG105C2B3M3=_bCZpM z?k=_S()vi4$%N1kB_I0^kT*2TQIcr{+^*8(niifEGIkJr*bth4X)b?$MnTfiz4q67 zS%2AamJZQwColsu#^IwTW(O6>Bw!tV6wxjnBF)m0d~6I4o@+81z}&2#X>pvV@Aew^ zISZLzd}9d1Ur4Q9oB}L3;3JC>(X|?m2DD@9xF($~@1AYV4imY0ZV_IUhkGYTGg@8478PlXl#MSk_hxNXeE zjXAI}2R7!w#vIs~0~>Q-V-Eb|<^T&%1g*`EI38(1$dygCT4}Mp54r{nii}Hnd1k_| zB4f}N27?)9GcwcM2e!2Mqe@Dm5oDI1r6g6Gi;~+u|7;zvufDavS6I$Bh@X(k@cj7$@g> z$ZS_MJuZf+45Z&`%i4#`@D&&N3zEIE=-(5>#z*Y{rGW#r$W6c{oTc=DKTv+k>n^n` znqk`~ZIXY?Zkc>GW=>a?27NO3MT#km7}~Rdm#6ci1f*?hg6-Y8yw#jxWt|AWnvs|Y zkB0Yv#r=-dnQW;h)506d!%igrM%)U=HWLby!S|_c02*3myfNIs zmu15UwUpVzjy^!_YX_hY7%0tqKnHApuy^6 zcn*lkz(g}V7vZygy2OXM{n)(#7ACzqhX&Pen)CP_$i?XHBgF1_e9CGa3s!Nv`K~rgvnZ95& znw%4MY$(n5!t-MTp;F`c6S#SRCq#|_7$K?h(zO)iq*3$uhag~jqZv`lR29+4=$8*V zE8Q;y7{>nfZE$P|e2}{nISzL55dd~PaLrn|mg()xU>7}VA!xdEnE*h;DxZ5vel-UV zNd~_eCNNZ=y|i{)wt~hrZmxSDI<^d$sE%9uym1Vfg*6s|+Q_2-YcSnax^e<7nI>0z z(!jh^R*?kEuldc2dH%I0{9lmCV=vJs0bq z$N|(-{pSSQ$Auug+ig&>LjiV{#@jS>nc8i=ki|}VqD+&h@P?iM-dkYqq=|JF;9mTf zifo||hIQ9z%t~ibL@$m06lyvUY>oz^(F6#^n=LP@4xdr%BMVpLI5RVt{T2YoXa^CwRa{1jPxXH$K zM1kCxVaCjq;tn7BsHwjOt`WdMz))4}(4O#O24G{?FZMHMRVhv}hxpbIeBKOANy- z8}T?NB5$(f9xdv#{wI$FqLvzdhinZLfg4e1sQUoy#qIHNw|~4(ZkbP_>cSY z5nJeAYFpHrUmc&|Q5VRRJZ_bxwuV0jEUD%09wN?cAvx#%e#zTTwQIvE7G6{(#TLFd zDGL;*JD!Y=EIYVvjG?^VZo~rH1VC)p z0Bdqwj07P6#hip~mPMe(tKbm+Db9@GSP3jd%9e=nY=1!LsN;rXkIEK%{Pm@OtoM1` z`?2l#+EZCU+AlfQSQ6ng%&lU0>#co4mI*W7CtCxhZ`mHgm7wBI@&{R5Jiq64So+rC zqta|kDf8G%E7a?sK$&yRSzx$~Qq7<8KJL>vBM)ftk7JIv8fV{NF;)NY+9D?fvw?&f z*j=IVRemBvOPDz0`_6^g%>?19*70P>iLmdX)JL0K$lId=zFvVW5%e@BC9o1AjGf>coH(=|E5Luy?_TO!tK|H z60eb+fHr1AK`YxvY_oW6BW`uHzP}YXum%QSyjUBtZzO0qsBn3r&L||M`RHouKiLjFQ^#l^-sPYKhPoqEC~`lFXw#*~udpe6p;)wXaC2X6GMetzod~?h>flIsO4< zgmGN(Tz$u3$YuTX+fT- z8SY=FdJ8s8Js@=8wQO(0ZW2UxD%gFK%~)W2LtjPyY?hI=0aAyr1dWajD7B&j3RdSG z7=zQ1)1njG1V6CoMx%V~?A z{-wI+@8x_4elJkoWm5dvc;qzRUI=K9Zpeo^D?l&Eh$Nndth>vwb+WMZm|E~oEBjlw z`|5ZF#HE1Q8yS&)0(6#+8SirLC*M{aI-;TN8WI<8c6(pB+y_oVb6Z5T03^%_k$vpA za*9P%6gwrUPuhDjt!uTM`^vrio2h`*avl7aY~O!m8~+#nE;7A2x|O&%kN3C^)DwtH zybsAYnu}jxX^mbWRSrs=2O=6m64QwbhwvU?PonRDlU@`bESi3!yTphh76V0hL1RT@ z7`+&ApKTbdP5S9S`U3q=&3}_+^S|z#rGR9^KEnd1v$F7D4vf#yJWLhO`+XA%*L$%; z5`Knvp1Kdl-t5witfE#Ni&AA_>~dW^_bOUnU(y`85Nf2mT-Hj&nh`mCu?pGT>w|`X zri~vodQhGn(8qL3J4jltmhff!t@d`;?l=yq>v@A=dxg)`Ty=DddqwNtVjU=bS;#j* z#K$AmkhV&b$3QJ!W$<B@tON1**y&k|b~2YvE2Zqt~YeD7QC;_hnmL}z0o-f;dAGpWotyf0N$Awhm{ zA;RuURL`ANy9{mvil4|Coq77Z9l#@X0x z9a;lI$AH^(^$(vg*4LfTxSJ@{2Y$FimLk2zTYxh}Nz^qa|rV%`7#|)PU|h`ork^9gV)<+JpJVh-9feh@kWJxSMLKx6BrB zr@eQ(`IHiyk4uZw;hQSfcV4U_{f4iqfqisT=O_rQA&FAHpSRv#G)RTM2PJqc(qQ+f zF{G?>Cv_5~*Lb#g0^q+ZtOCA54FXS~Zh+MC20Fxy18I#BkQ2iu30`wnD_w%;zohwx z<0{vcPXV?DKSINss9eA;O}R)-AP4N-=a8g*?Pl*md;ln2>EJ{TA2nuGG~Rda&bDv8 z>}ulXxgruKPs^G{e|QVJJ;3anI|biTk};?~Q(!7lmWmauZR9j;C)Gl}U%T*2btudO z`vmErM+jY&&!1geFDy!=yj#_v&*&JU&~@OXWpa2Wbg;jtyPB{KUAh34smgbDR*(3w z^QU~VN~8X4kY29=nu_?b13tkCQZJvg(q_iYD+j+Mr3K4-xT^D-br=c7DaiL4ARP#j z+6J30u=2>!_O*ygn8*+*I2aBhdGn_9q)=W$Eh}0z6xd|{Z9aKv8*kdahf!XcXWo#v zy(j15I+mU5F#b$>|L#nt_P5hwC-d7R#P9AYPTzJ-|I{#GBNV2-ub|dx(`ED2Yj?Gg z$C?G8D9HlL6EvnMX?Zp2qu+<6GXlB%^?OQ5K>_m5QCtp9rzfU&_uC&oQ|G}^o-HW} z3D1_ci^Rs7MF`8kXURLVEdYMXqm|KD37xy8Kw}X%caIxgJdfMfb2l7urbda2LT?KB zvMFBlYEpln-_#9@yGs5};i8~umLl?d@nwF@bXpSYC6lf01GlmJryqhDMY(Q0uZS?w+X$4!P5e1xJRfxs?|Lw3gK;vlJ% zeT>Q1flL7@zyDme>)Y=_uncovP0&8e%6yudU!tEwv_O9;t)M7brHCIFSlN912}58n z&D3#t$AU#{qa49WTjy)=`>B!fKo|6l83knR)IbAH*>ny_dTAqAiaPfl}Kk?u?_?kQ_6{C1Lqd!Sgq! zoaBte0d!{*Irt9?=nrH8{ni%MA8kAbP|rEP?uP8qCHNO_0pv16cKEVV(4V4Kh0|*a ze`;U+-T-1H~lOI(vE%p?gBav@jRh}5EL`+rmLskZe+ zx0o>=PEMgxeLnCgYYA3o+|FyZPOgjWEJERSqG4%TQWHzd)SgEH$&=u?+c)=%UWdk3 zcc13Ao8%O`$)@-M9$_D>Bcc(ZSWTjoyb_j~=+Zt3?UWc4HKABQq1VBqt{MJT(maBD zQRD^Fk&N7&5p{u(+r&i{dIyGku1h>?1WDVR+{>GL&Z_yxvscPuPRQ~#^8%vB=l}5q zyJ~l!(wMwS*wuTxy06g~chMcsh8KJri!HK>6uNVmD$(ke%tKmoUuh z!^R*;0jzGQTB?Xa*Ot|`eE~tP!{p3;q7G{*9UP%kuxNBtWL8mbsf&UsyT6E^UlsK$ zidZGhxQGPcpR169gFpWNSc89h51`@L@K2D_Xj1o_3`8UXg;xaho(NLMgf5QTpg*@; zgfqyDO0$2-bj=A-L9}ltk7%8t|pf)k9Nm9&ZzxZ)~A%x%Z zA3C<aj7Xg zQb!Qk+1vI#AK_sx60d&ESY7YeQ8003H6T~Qp+1md#9t)ioWHPe{;7uQ;{j~}+WqBy z<}fi|VLq*(+<}O$+pCj))oaC)=BmdJ)S6mAD>!qmg$eQTJfspIE0)V@mk|hS4ua*+ zUsb#NC@C&8`mKGT#Oodo-$9EuJvOFj(Z{JAivTDRZrFc0$`fFVzC!u@p6^fk*FC$i zRAU=;@{T|wWTbUEbkV!ZL(#KKcDr5e!1bhM-v;!k@|AmjmfNl9N)ow}9a{>SPs;8) zI&4G`bv73BgjGKe3-2NW4IcO1slqu6P2T0~H}=^fdf1WKXr)j%4?WA0?~39Q_w#!w zyl=fTuv2}YFtcQ=Cg9=Lq|>K`nF&ElX(^miv30ArS#4GTZ{#oRn13-R5g>$D*4z0B zGTsVM0;QIqhhVDE*~I%QQSJw0otCUcLp&EzSj`X+puriIuFWZt`d4rIn2ifpiQeGZ z*X2B(sjLG+g}bbDL2yukpGc_vx#i*J0~n!Kgy6?BCCgn2Xb^yO%SQw9vpA5;xjzC- z1pvqT_6RQgGO?iouuROf{mOK$q_MA3r|A0Jp63)eR$EvxC|=>;y8Swp*!`jwd$}iC zN}OqdeI?5s2~nP70>AcHQt1&7P~$9sZ_-a{7xog_>PrMn6f?#_QAP7+D*0#*Az$nz z_+&MRMIl!K5yp*A5JmVp{U=CznvSPvvEpEzPxRj$!q-eC&oVjzgsjSmVaO#Alh>2R zvof!cf~=(*bfXi|paCR9!W4Y)^e0F>Gv52B?q@qa2%x$5h#9de-;sS4Bkb{yC*dpE ziWcj?!PpcuI^R?uHoVoR)J-F$6fk<#Q1%eFks3C%rD26D`R=R%7cD{j3*O|%>vvNj z0G{>#-&}N%i^9Ykx}^S`x6tP|>AS1-dP1eUL~sBP?gQlDPpQ>jYv%Ps)=jvTrzF7j zD|Or^eV5wYoddSYgKsU`zle|jfLEr6eJV}tcun~5u0j3Gy$=)uHF%5l;fU;XN!9?h zTaARL zVnSv`i@mrH8^gQk7$P)h3-SnU*92HZH4{XrhF={kdYB`k01`5$#sONd8g^~uA$u9A z&pQZ;tTYO%i8^8(bsFjB8s+>+`6#s!Mx_VYxvd!2j2BWHoXuUiBBwm&!t_e}X4~{* z9aHW1IL<%Hew$)2<17rd1s!Nbn{1ZXEeG4!gq4>pEtnY zHk}gWlQqjzdnQeg&LRp&rh6hMea>5TVx22><8Nej3<9O}{|4kEP7EX0f!xhOZE)IT zKN#vcU={nMnP0T(%=Xln`oZw@2B@-<`NX?VgqPJOxMUtVFO1vvi_O|%60YKd;* z>@C1qK8gcdTzfq0i`N8A97L_ttsrqkk53Q@Xplw(P*i?sY4EiZ$dxlHa5q1df%_gU z;Cy@O>R)>tn7|D~_?vtg@atE*`-}kk4$Z~yBJ~|hRNwqjCmjC3kyf9Gj;T6@9(^%AXqgnI&C)*W97qh&E=xtdZ-q)Y^o2|hU z3}bEe)$aM__h|H1I~YSNq)#4mXZl#(Yn_QWtS zyxj5qpMaJD7Mdn7`%rMaC#eP#f2^AyzYa_=1gPjl-C*HPxH?yg z_8VvSW=T5s!d5_4*OHyZE9e95HamH>uMFXo z-Gi47ZA3?cZg~*eRbcmXIarDMg{!MyiwBY@!RoV+GPbu;7dn{E*rjIw_#_9{**a&Q ziSwcbdLkVPG_lYVcXoF5uGNgl>Z!BXSd$vIic`GW9g<(VN&(cS3ZR}nXrN~c) zj+ekY!smiy-KF+bkvEc6jfo_P*d7+OXi7+ObqM!1XtiODvdk4q?dwRhk+wOcbF+pr zp)9bfm)eA?B&;)a!ZFI2?&6`RS;BiV5{QQwrOsMR@qF-Hbes}7kSc~sjt%qY@4D;r zE`RVA+NUv4ZJFRa!%%64g$eN48+1F{j?5g3ZH(zJ#imQiJ z1;uDhWhPyWz1h@shM5CLP!feT4?Kij+rMM)af8!I!dEJ3%%xa7&v{cwio3umo$Z>V z647VS_-TwOezyiWw{;j@v&+m z5g=O*0E$d!J>q>6mBQ?7Z`bul?kQ#2w_-}va2g*SfbI<9Vz;icrO%2$7> z{Q26L{O`Y4$91GqJ&mn*I^CB`#e=6Lgvf=p+7C##uoaoc zwwXRrS`?f(ja|dq! z$oIOiZxBnWl})D{Ljqv-naFMSvBpKK!CVvPD4fk3|Q- zw{+iw%B7nb(<`hxBNUh z)qHvB(v}>6YyzF{vSHktKDEX#a7(a}ibHRLMgDc#=s)Z6w~LB#IgVDEEWTm`rairE zRs=Y+QJ?J&uWE`lMifH|(+)WTFnPKgTe)IX%#E^k3fXqnlRJIwrWO-Hr#-XwQAX2 z>foKp$vh44L9L(lnsez-3M~951(r+FhOHB+CApV=VWA)d_Xugba>}o-EBe*$lnj9*KCX<}lUd4`f(J8E5=M6wQjjLsUJNrA z?M*+4GI2pR-OuKwL7e$g=(Z_df`AVZObqEHj+@lmSW;d%59d~R=jU~uNwj7yb@I4O zwBd1^iCd7&nPLL^(|9zlc<>0BXBEfHtxBna zh?57&Yl1*0b+&d?_Ia${YN#6eu;2Be6_YgbriG6{m2hWBdolOr0Qt7r`J1!`s1wK{ zp?&X%kNBY+pHv55t19L;+{M%C#PIQ0I`=I#a%(;j52D1`j+(6oWL@*MHqSA7xCp^Gl?$^2{d)^|HwRZ#7jh zYV$X#a^|`e@#x#_X)g)QFwnl`U9?VhnBmdG4^t=QX%*s9Y9oxLlnvRyH@5(tGZwLF zqx>vKfRlr;1DN-@K!CI_UEfz)<%^ZJMz3Q)z`>iyTaGbYlM0&{WKWwX?(2gQosml{ zNRWN!Tn{VJ8P35ncS_{$c6%_&y3D0XbOV=EHcF z0t6mlT}MDbgH9|}Y(lWPOj)~s(_#1^V@v5cNE967$2No6h&TG|_nZS5=&ufMo`14Z z0hKk=rr@QrW>2NzmbY6>ysaMiTLeU4IBg|0PSU;x{n1^1&t3Op?7uKo{8)?s?^+~( z{3sFMrC=vmp?p-YrgoKf&XL;cd`rpW(ISU5-teeNa|U_K(AeuT9KjP}c`Osu44t9v z;TMR`ibUgj|2TC;#by_QH{=r#s7B!pCRM%eX!)-4=it6%0u%YCL|gs>RbK6x<}pF( zzT>-Pk2A$OpK(#TYt_j+0Uf-oa3Z_Hs;uYslk#Xifg>YK#$D$`m3h67?W*i%bnm)~ z+~pHZD}bS$k+f2CL!A|AxXp!VEC@NLEP4G8Ux5Cb`Y6Ar|MO$)KQz(7KfTW!=6x~o zPO&XF{9G+umR&6JeL1KZ-Kn*#reNuvyce5Sp3Ku5+R)!r!7DoMzNOzb{F-<8tjtnP z3!q`FAh9qiT~RQTI&`mL_H9eyxbyaANob4XjjuzU+R_hg;#)D+nf`yB#kE|y;yBul!FoS*>&$MbrW}}Q z?B_e(W7SEEqkObM4RVH&+CfC}c&sY!WZ(0cj)qqRj~L{8u6ockuocfvEN_8N9J>7p z;xb8u-uL7J?f&YRKR8Mgw#<|+Fv81xXGB?u4{UX@RH#A3MAQsuFZdrApaW;)9p)}? z46|qOj*WV9)o=2dXwo~HD+f$TVb?AHa}l)PVxvSSPdzihndAm!43d3t9d0l&kDkWa z%p#KOi|o?&NL)F%m&f6ttH*$M%Q(ffkIQhO?YYnl-dLpwwWAC1kGsotU&vSYK{tl< z*RR4})L2byS9CPD>VZyS26(6M@9xx8Z@FZ}(5Er$-6+d-W+|O5|80|~lv7*f3V%iG zhQY)HFg3k?_yPZ4Kj3@4-Y-}g)V(Hoy~^)C^=^Hq$Ot z6dO_nl%6&$%2pRa%slyr=Kt?mIONooLQ@lt@-iO$DgXn>a%6b^I);3*lf2k|*33Rr zi*D?-&OtrH9bG$)c;RwHn_69XuJJw(@0xrcU(0BBLqmfq3CEYdZD@`?-XsbBgjyNk z>AlvrWE#X6wHP)03P6Luyw8-WedWoB^6^{6d2IC0m)=->7{N4&JuD1q7miSs5s(iA zX5u9mk~f+ns$WG%?J>W<^=iq6$oyeHM6F$&zm#Q?^krkqBKR;H-g^~=89?FA%Jony zTt&gopp{!a&WchK59+(ZC%8XB{98aYjs{uQu;4)eu;L{RUE;A4hp0kgv{Io!Nuf%H zm^+B<1rJi=c7YI7Rw-VRc_C8-l&y;+@h^ftK^~(c45FvbZM??KD%RlW|IxU<39WPG z)7io-(?aY~MbWK46x1I$#Wg0PnaJ^`;GW{H{5|ZC=+6vpG=_&&_gB>|=R%-eRDGUQO;zy_1n;)I5GMAQHNfpC! zUT744{CM4?A#&W-seHLHjG4o73r67nqsa(VpydsYC8fZb3ZIW4{iqfB zb6n0yww zO3TAS1~Lpaq!YZM9vDhaK;=6n4?BfZVquKpI`%_LROhYh%KU zvuA(VU{JuL8H*1qVpYY-a&0W_)`ddr;DTGPJWs^4A2SI7*Rc5k{&tPg&! z+3SD#+4e4T;f)7gR*h#qCUI5s9YdXScrmfk%^sB{vOwA^Xlg8|W?^xTC)l$Qz5I*I zHcQH>x1S(1W0jvEyO-LhS+ZS&H#JXjz0aF-tLmT#h1VB?icoVBLT8H zPz|4$uwbx9)ozMXOSEr~zs^|NDed}fzaYSH*}{h>HEhO1m=dh(7iNiZmyWvxylMJ4 zoc9UBtg#}r`ntV1hPRLAA;9eacdIb|C&QnrqKM1BaxHV*v9#Azjv|X3$=(kie}Hn_ z9@ytsb5Fce^(fsrHm;3Z;SaWwwQ;9elFe2LjTJ4W=;|mW=qfmvcfHU*)f+~ABceQV z6{?eQcLsA(!k-U_2EWfKW|e5aA-`MRU5q6I{BktqNB{} zAY8dzT?9t?LvnQfug@F$#@<6k$UU;oYxiFN^kD{E*jg>~3s~$TS4;<;y-Zlja(Ght z!$=!=&3&=Z(<#cyy~loFs<=r95q&kh_Z4EvDzV)n9bq7ajPAeZ7?_ zz4eZ4jLa~j`UeR7fKmz)U>s`lL0TUI3cx!;5Vmv(TP~!rVd=`=EC86Q2d$vK`oKH- zT#Z<1#|KEgrjXs;W`wPr@cAXsxrzDf4-U6!oS?m;{&S9~)tpe^B<)h#z?Xt1P+xt} zQI}+@w4=UN7!glMjRW6(p_TXv!VOwfef_EPg|c+Ic6k@qIA|;N)jYnPl=2M1{IBLD zzYP;x|NP<9POaU6KIf~MiVy*vvIFS#-GJ0t2Y_*2ab8M1o_112R%;GKn<~DW20yR{ zP%lCMP6E_RsF<0ETSA0m-_Flaov9XVGFr)}DKbf#aeYXhcD7{rh;IYpBwP7A4s|+N zE)0d;iQo`PQn`6foNTdoLfyWgbG}?r#c+T$0uV+xfB#zd=eGCx&7e4XY=gL=L}ZN* z3`eTRIk-V5KS37KtdZ;MfL^Vn^>h2AO_y1|#=YZdU`H#FATH6MzWLo6VU^U?{+p`; zJvs~{Zb&*J@vv}a;(fEyd9aU2ot-va#gHPFd1;vv11C35PMEw|rt&oOBIQ}>Cg$_! zR|lBOBS4dPgb*B$???6<0vJ{MJD#^MG$fa_yLEI=J$<{a)!1iB>ZA1fv;u2zphng> zJtHHHvYLgPJ+ew^oqiTR{T9A*D{u}v_z6M_A29X0Oc|r zarq0f1rtuAtSjR5YxsS#uM=H=>h}&*nTsk~t=aD`)X{4TM&;)F({R)KUq~kxxL>5o z4Y*xE*#=6Khe(hGc&JXfvNoep%gpWxG>{-}r9;%~%dPPFHWXf)c_9}s4j@8~`UG6S zC&<(2sX+3;h)zlScs%DP$X;YqL@=m~j{&=4;@c~)CNQL|7QiaugJ#%A#Ct1E8yL1v zkVDdcbs;YH{HT6*v(8CSoR6$vULKD__9w!z1*-*(v9v0=r$b1kAkTo2xw#bNd;9G7 z@)!@p!0xauN+Uuo&F2}mCmxJVnA+bE zIrw6yY+sF-OO_I<&@VyM>_f5yR1S}S9A ztnFelBm^ZOo4h*->t+klUk|7gB*{z~;~iEoj$Pn;cG84Y_eqk{S z2)z3pAZToXGJBC4qPfhLec!vljnPV4=X30Mb?mH zug*?Doqrr{{!O@`;5D*RFdbPgvP23#Eq!^?s8c4QJlBUm{$UNI-yn4+X1FMg_bzB6 zAc3xorpri1R5CB|O~Ww+IMK_f4sFRy$qUve;g?6IBpDqDn<^Nnc18uC1%Jug@xQ!$ z-^FjQUR1(A4MHwZ6ZRP2+$I>MqfS5{m(*`+~;U^k%6L zhup=A+$CJV9+gk^1xNQ?$7{cN=zqir{{_*#9>3|aPt~PC*7T%+W>zboAh!*djXun@1dV$h5WX&Bj+?p9-r*Y_Jp%9Ee1^$s-&XHdjBY(N@-?3VL z?`t;a1=c8|ouVc+yvmGc&o)k}YQGwPpzSj4<<}ap-qFU9WHok2HL>8?sC4~RL~H57 zQ+p?(i;ymnteObYtDJ-LILIUtOTmmqm~}>f7{)y>M4eIA1)OzX|4kWy^m9E*C&*(z zK?WF*gVNwsu~@G0hQB|gGG=0xI#E796_jbe{G3Ahi|?jd)MjdOh^LNR?1oc?;=4!&NdyX4RURSq|U@OyMd(q#2UT$r+%@&jTVMO+_$lWxL=#w?P?Q&Th z$#1=EK$9SsKY1+{*|L%+e8jW^IgLXS4z~wtl(2(vZLT`7hbKYLTs<{ar)OAYQrZ3a zFA+^BM*Ci(u4?CY;Te4GGw_!;=l|r3^lL>m-_Q%3sl~?ASaA9p}s??^+TXs ze1I88*DgIIDLo_|2JTab&6nW%FR#`SfHnJBLqBGY)cTfRo9$ug2oFEODHn9c1?&mn zUtcqzrLc7SqbFT%Piw@lI_Jp*-v=Due7q2upL(;Y^jiR|m z^X~7;v6v91uFG4@^N>5}GjqwuFeWcJHn6^?`gq7~8iacvhE&@7Y@1FiM&4WS6U4SB ziZjS-1wMepwM%&>G+w^fY1ouMoyV^{@@xx3uh+8WMDQO+-QdH1~M|yxDM=lHnpV~a?7$XC-}@Uc)t`AA{4T%khur%I za``avL|}A_t;?C?p7CN~s7Wnn8WjV$WTejcf1W zTzRy1IiQsQ@=W^cD~vVU1Mb#*C@#%vHTA9>tuVg`f6{o?T#+JiU_mfVUKtx0r)e89$ty!&m4_QF2Q@x>r;2c8|RrTV|?eASt z!fNPZwgaJpCYHrK8uH>i`_!95W@y|>`m`;B?bh8yo3Rz;n*=Xmrr}t7luU=ZURI&5 zh|9g;?VS^f5K)=8jXWBd z(wb)h+_P>e3C87MC(4|xOjKz{4kEG1#0NNj!aBfn`T!LHke-#gE7Z-U^9`kV%c3Mt zP|F~eD!s0x`p*naY8i&hW*!wq5P|0KES+GEM)n6Iv7^ijpfDUzlM?8Ocu-VP4XaCt zj?gZjYC}H9=wd+`IM7q~y+MNHHsEXvT(P+)sB6)Y)nk|c)+cs{~vbsz~nz$RPn{ox-Qp67;*k1{6u@$7oikD8Y07(Vk;D8T;XEVW4{PBb&y5KNGtIajVbiV3bK0k_2KBRzO(?xzUn{6^vzVVtd;fvX628f)!q2n=I1@5 zvvX9AD7lYO9)i4gs4N}94!C^&4{kV+1rEV%QL=Zm##pIcc>I7#EkcA=A)+&q6V)!) zN$p@c;yI8_&-c2-pFBKrbmv@r{5s~HgP=EzS9xck0YG?=`p18U^(YwM?L;V_&#!;2 z^&pIDd|_J0O{?Gi)P2ItQ(}b!b1)GVZXGy#{iLPJn6nfJ*QAkpIsb0upS0a$=~Qm9 z^3JFGe<6?>bABK&R3tPvH$J=wPX2Y9*ph@A@3>o+7$Jz^p$fGpXgU4nsU5`jUlyA=lm-+u1TiR@VrRSW4^g zyr-N`ev?%{-pVU){9*0j!}Fu6IdhPu{1q0KMYNO8#TV!N`4Qf40OQhb>I>Ad@`5m_ z#t9Ifkoj(~4wmw& zypX(dmBi5fqJdhhFe{{P@KvyR`KuY}gw+ICGh43v7z@K<%44U~lXIebuJ>WJuVrc| zWVQ$jGCDh-nK7-WZNx`;y<$ihrb81s%?48 z?;ZXBe~%9fU-U^_-NVrHih$|RW2(nX$G;*cZi{FO&BzPQ$Zu9w7h`H~MYKdeD+qo0 zMm;FcOy^M=&ty-wv5MkAczYR`z>PmO?&?oS*$wU&MHpVO^|61w%H>KKz9j~)-M52$ z@&%Cqrt74$k!aX~%L(W8ey_K?oWk(!VZp6V56RHf?bgY~bcC6CmY!ovJ4Usg&PEIX z0cqsdDP^a2@@pGt7mh2;#?+{#Vms`di&zWU4#Ar|z3i;TV|nvi>Gsd zUgcb485rsHcD1kzlxVPW=BK;*5`sWlk|JLtQ*C0MH9NI;0X3kfWf4X721|KnU zjggqgqUO0hRB>YAopE`A&m+G28Y|kWuHjnmCyZp(I@A;qqA-pUcmH!Q_6K@s83%ar`7QjH5NqwS!c^L^< zltHHAapDoI#jEnOHS=~tUSopC$&?sZU62}fu%3%c37lgE!8dZLb?%yv5K4`yceg&9m(2^I+djd}LAMQeQ=Y$~e4f)MSX6dR zEc74nU&clO;8Sir3it zwV?~0fevG4pl444S%2j;+DF6?)I0V+M$WKV0brg+N%dbH%1BP10C6`OFHo1AF1iV# z1uU<@x(%P4*tTUW=FDXRFuYQgPJit$esAwNcGc&ln2Z*@91?i`bBBU$N?L3_ymn53 zErYiEBKHU|+|{e0@F}NgMHyYOy;!G)5Y(*CH$$H&csV9}Eq!FbY4IGPWdPe;CWs72`M8L*~nF^;Nn?3!Gv0~r519yESsp1dUupC2a!5?5;VzUy1 zGb)N04)mNV={pOjn}fX)P7Xg4NV4eSNM6D3lFIop?vHi-7xnX{42A?2yivUw`Pf*giT9T>00iJ~{!~#s27(-Oaa1=O+ zxf|YxM-DJkDeGD^OJ^)o&oa*u;S1CrAOyvp6NER2Y%^X13|KZIJ88pKH-lI^L2qdHm*#1z^TEZntr!++$p?85;WBTX0`h z-665~BO}1nAIkty5pqDrF+Q|R+|VVmW^D#r<{rFaD+ zLpmBd?w2{8{M__QdVbH-oTVUdKS4y@uBu3uoqfs+mf<}K&iR{$FMo{p?Rw_V8mk#Q z%Y78cU)o{E6yp;vx)V=Gx_ts_doIoToXXJ<;m2yAmFnr5W2mcNGSQIV!4CN|jQQ`| zQa={-N1N_{at~}ti?+|0h~*V5rsA zhIeqbVC@q<*m1=E4q0CTrinb4VP*OnbB`mMuyr1}aI~~4p;;@<(kWA(MVz-!M-bYn zQg}j!#k!$2&L)Hzq?rfZGg}+L7aX)YZ1Xker-RxyP>Tyw5Xj3g^=eXS35!p^jZ&5>*<2YpDgA7i7=(V0NCMSkoKz zB{UO7P*oYpV%GwpwpT#T>2VuOQ@rhdwcV&ZYmb9~pa{$s-uemBu6|BcN|9@VE`MT0 z?aq^gUDJD0WJ8WXm;2w3msqTiWlfiG@>*YSe+Yd0e>N0HabkFSczeK}kQdv>F6EMM zLu~bJNW|}PcxR`(4>?8;S_mUo-o(EJ|wIV@J!8rL@1d3U%jy?%v^i*L zYL8M2PzYbOj9ly;z%((r7reWG+jF)|v;JWjySrkuzr!2yDH-UnU9M&S$9Hyu4gTqR zwQp8wXN0JYx}V>jV-?p49!NDbTWQuiSy>t7M$0m;=<;Cp4ctSdGq}AEb_FHdcC+w7 zD93#p3i{3h6!2nnvrPq-VPrEaSIrd|-xXO^^hEnfMC;LRy+!ArSM^s@t;e=jGJl}6 z_iP^)a>XBuxMbX@%dE5A2{+(58RK{K$!K6Z%X!eTWy^!MfDZ_lDctjds#Gf^d-^a*Ug?v3KD)s(>Uh3;IH9gq%XCx zsuez_KJfwH%5Cm^O%HuVa7Muvvz%RAk&}By>%wP#|LY8=1u0ODYqMMgUInfWoaifk zZ>^-9ffyfzSmelkXjq`TCTO1VUHL^z#b1kBtxaOM!*x??$Z4BB!D-tiPoP1s{vf3N zo%~x^l^B1f36H?5l&ow- zoHF#3oPw^D1>h|S#QGB5_aHt&$U)$S4n7E5WG3vULld{l5_$b3S*8fy@KIe0@VxER z1wg-v>+Q&evr3E6#QmlFK%nPs5-4%Gg&J0;xy%G|^XR-zfYd`*AXiQsm11exu+86G zm*UAzt*5k(=mmj?GQJea_vcMAMpk-?W{Is@qR~S+onh3-~JvI)(~NP4Rx(!?6s^eXYkU_BO1GInaJ{g zd^-X_y1Mb>TH#6#mYqSCz3^>~pQ~sh(HtM%rch!khGAtu_gQ$2 zIuUvMl3@wAk3RQ$NF@#(=WVmMQeHmBXC)h?c(d05HX(-U>@HweYzp+_ZR-bWE}`L{ z4Xq599O)`5uu1KnJGPVZ^{%k()yG#y&*P1ojC;6EkCkSGv{<|xy%PVxZ;q$eh6yu5 zmlnzwkWgmipH5yB0ba?s{uBrgcX`E6!W zaD!m6M+s4$lYht2$+YRy5IrR4Kbijw@5j~aZb?P9I?VP#MQ-kmMTAhti@90r8b!Sv z)0Wdm-0xX4U-HAS`M{pV3m0Xa^XCyxKh;o8;uBIx`%oQt?HNd$Kj^im)}VYBqxkN{ ziCHXLj=FQft@~n8g>?&9R{!oH!6DNOskhDPAgZ><>7Z|tWQt+B&PBet8tYR#r5MGD z$P2KLtW$I6biggx_w}AV%*31bqUSB{X+_Vqs8<3MqjxBQN94Ikw~A&$)&PbQ04O?~ zJ(L~82a08&*S{z#=yd6xyC*`+8vOax=!0acD0aD-+&57g){)dnUnnO^CZlk8GXfch z{%gim8fEp}pKp3x?J-GuSgi)5a7OPvS+ui++kX3C|M>I{iOZ6TCs}&j8 z{$@V!y}Z8y3+SE7&i>DCnBVKX%{t3*Pqpj0jnLq`OvcZa@@*;Wy#gY{G@cUohVv7h z`am;RQdG2k`Iw2hH3Ec8cPNH}SS9F%^-EZkO##GP*N|)7q~>#0N7COmYmeiP3Yp>8 zK>c3{5P?qsM)~W(nj0QgQ%KsO7F;Jwmp{&b4$t~xFIe}l&)a>8$)4TC!05Ei3i9O^oA)&kwz5Yq6ZdH^H6xj zC&+2=5D0!Y!97p<*F39Osxf~Y`*Jvv(SU444S_%IsDvi~6~#|#xH-tuf*hX*{5Pf8 zt4=a@jKRs0w~=MiF(91YPn19|0M#qXM!XNc3YhtBOf8IM4ee1GrC(j943sWY0AMXc zt^*i+nXe($;2oo8b=?KON%-;_Nc#5U*@3?G1$kdoDc&8ZSm`Ve^GsfY6f{<51+~5b zXzk31P|lp(_`cp#d$r8`GTlCu3((G;T&~3I;<@0-o&+Sx_mnHMzPdRnX8xf$5Sx#D{@31;&knn)|RwDE@Wouu4CHZ^MJ_B8d=uZj2!R04C+}xV!N{4 z>E!C6v%+$)r(j9Lqrg(90oJJdz+8G7O+07|j*1m{5CG>Jm+x({w+%imo*$9yi6jHVas`;F~X7RheO^nPpGo-uyLblVZXx zm~chZBqjU zW%mvSbW-%=SD>#XS<%rTh7I3gRA7xNbW0m#qg*(t*H5bx{a{XT`Wkf3T8-=BMBSK( z;J#5mJ#Y2C$EvEd$0J-QC(j|bO&wY~9`v~5Mb~=nA`6w3+iYuz(0B;oN4~nhSI{%W zHrzB;{X}Y#skg&%j9za*Z+iiIYD@ajzZXZ-Q6C~0+BhR_vGH|uT@>7Urs>p<8S^tu z;t`lG`%(>47P+pSmG2srsbo0L)Nc{?^0I0h&vv+Nt?b)<6IgL-L!aTElSPM8irrIQ zSjzO@DG=rxcY8)?^|G7nNobNAGl)H5bBCfp`5M#y4)@fUB$-9vmyDX_ogFfVYmYm4orDDG21_X&K2Et{gySnRuKLIj zB-tL5=gDBW#-+ikb>r}oip!Zsb5T)q3v*}4=mf}XeKuK0zg(wzKvZDzBTX*XVOdLs z@-5=zwp)f7J>B3>aEKtR+4;Q1?Flayqn*Qd7(WqzbFnFny20TM(WNuLnoeTB_~Bov`s`bfTYtT_MFvB$S&Y1zUcVlfZSn^?m4+Qi6TZ8_q1 z$$#$}gke^>?oqYXqfQY=x@9aIFg8vOnr2iCel|9!c~4+Qy4_Yft#WP$*YmTHf6#wD zA?k*R91P2kwd%Gh8Yvf_(>dQ9+BK2vMX&5{0iTJOov0awhn}6 z=#x)IxDIEmLMK-kt;gTd1C=EX?#yMfAOHV1)<6fk7*CX@SK6S6Cvl>86v2j-@IHK~ zRcaE;Fsoxe|3=G-K43wh@kM`mz`neSd1C?c{rEKKWt!8E6P!k;No>-s30M*RjY_3O zILY^*G6(7ul2m}gKQx0+KLTDUYpSZY5>cEVg#l^hl>>5`r=>%ItvedJ$rdrfS`j5y z`xoGZtsSageP~y~zK^JO2Gl2Ux4xF0|LynCff7I)=@+C5m_TYvS9o+VI=cW@B(04u z4i8LH3Eo!szTh?z)Zh;Rx-bXoY$6)}Og|`;n7U&z2(-^A`Z|(?(fmDL zQF(7=(|tI@S%K*TBWm=Ojtla08da3hpZmPes3<^uhijC$AoT%y*~HO$1Lb%A*Ne3V z+$?+Iwi%P5`Gg144C zuQdWHde*%LbajwW`sFf;UYzQ1Zn~9-QaHogxaTf5VM~w zXP9TeoZfWu@cH%~4flPTSc2{~JmxweiMsZXm%>j%R5?rpkeH~!xzu?gFl*hXf*di{wq}cuyY;IT*N^RhUCM~P9x>WC! zSDE{|_Qp`tJk<(fE*Te zj46esyGteT&MeN4O005qi}s3VR>Z1H2-v?Z+0~MRXOLm?YNe5xpSW+ncKt%@gYkrZ zr(;;wbG{Eb9i(9cb8*Mk@zt!(m^qSqUWi^QId0bH5YzqMfYtumZFc6R2BmMkzj(j( zZtbkl(cxnXc^kBkUAoF|KbX#ZmkV4ASNq0-B+G}6p6%m%#K;6X@0gQ}U>Gy37alBY zs6HT5RH7YhyDxT@sb?Qu*5#D4;Xo zuSZX0;k|6fMp4eCQ2tFI)v$#i208RqP{+rDuV9|TXCv@V`b`RrKuRA59tTx8ApSld znYP^~0}%2nfdJ0W#+G7|D`EfvEKE=#U3*>o+g$~O=k9Tx)CXvmA3TCZpu0pe%>3$>$?#&=5%@M}I5ReO`dmVd z9&m?!;`v7X{b_}ni3X*)4I})#?p>l%@xCck(tBdoifQd0wP0K6SjmIj^LRrk4P0+E zQ!#2ANZpY;1Y5~9yzeo@WHL@tVAd#m=_7M{9{44X2&jcVv`5W&lv*$OwSP@Ij0I+h zqJ*oOv(RC35;OC~B$`<27Fd%QbSe)P5S1>}usNcm)te@6$bd+gd|`XIAMw{n82vo~ z)|$XuK48La<=6c|@fQF{zpMBh`)0v~%*D9agEiz`+JOH!LSQ6*TZ3d?huNxo5SUoK z7kW2|2$DMVrhrMgJ%}y%SVThYMmX99OcR{MV;yE4i)UFOSb5b1MMZ&>2cD(tLpWmy zx4kKDqh!;Q(%Chq58!6n?Tw2&L4y>Ow6)^_Rt*cP{AMo>qCVU*6%+10|H zSX2OXx@P6ycelT>KZkpK?&JPXr}xb;rSNn~kaLD$ofQzt>8RBmpes@jKjgC0f?+6J zP||&|d;B!$Y^#VMbhZ^+JmL-L0OH|T5}E0+vKHYXH(B*|oC|1_%Lc&b*G9R8piwS` z*4IY4z{~}r*c<*e@@*yoY)%>MQ@~oJoPN`e*OIQ) z55%1YfsHF1x^i$GR*G5{J0H3NaA-LS&mAv9UrpyUUI~2o8_pENG6uKUhfG)fhzrm>^FtCf?m=j5!2`QBuZg!1^$lu4Vv`>*C2*{JunwtoirTVwIB$Ku^- zgO9l+Pm>N!DI~959iep7sP;Y^=Ig;u)ELwm?$j%1-hG}f)VmxiOqvG4dJq)UF#a&1i`1M5`7YH=b9LPy9=iqa*8g_u^>zl8v+jQpG zaF}ookZ++rYpwtGW{DO)iD9w+U6r=#{<`5Kb$YAz!q?v^wbJ*sRGhK_PM)Sp*07IR zELH?=r(NG0{{C0@!@dbH7L0z2D5Ll1amDC>yvvqv@-8Vhn!Smpxd`x}%SWOCRg4Vo zNE5g4PVStE^Rgl~PqrY;-vpv;LC^miF|*&}Ip1Vzo)36?Z=mUv&(#x3%DqH#{7ziR zu|f+V<0%(pR@eLqv7!Vv{RdHcyUggTaOeoAR=sE)woM*;58qvf9_G+ohdnxp=k7g^ z6l+47$=t~cnfOsN}9rsJ8m@lrGHSh|WbKl9I>ovlbKocl@jk>F924e-wVX88}79c*I zE`Lup|JJ>HSA{>@ww}j-_dN1hK!n{J1tJhhIS>dYPpBUTS>5GjaS)~hy-Jn%?#y_b z*LXE>rzZmf_8)i%g${36qv|%(S@=8XMc}2;O}dgKjGm#YLiTBbdUWR zKN%Xs)S9%DjNL+F8b*&^H!)rdo`wxa)Y>W74*7{L3g%|#NVM@YYTyq&(85EA*+YCmO+9JxfnTI6kD)-{>h#<93LK!lHx?v-ZOzDlUDxrCsHOAy3Gmn##wkA_u znFbXGS<}_on3(&M13S&(d3S7{TdjJp;&mts1k?niyS&)C@Pa&V^(VyL})$ES?*OGH(Em43>(t>z$+Yl00IT4 zWsk8k9E-R@4e=6--9(fXyN~hS;Oo))GF4}{XWrJ-)017!Jd$8zFfx4aCV0|r3K21#Oq`#2b zoF^eX0&1w8#J03>&^$B=?)~T*fUYC%g_TiRyD z2&!`g1akgSoue#|l1CGZPPGX;8?*>=B%aB6`_9Y6jFd6p5T~^8BFRO^*QNqURCBk> zLTT-Sws-Y|sA98i(y*GY52IoYQDU|^rNiSTvWw3f%Q_Ho|ksV8IMtRu{B~P zAYnv6u`w|Mgz+AMo{qK037vz8Lb0raYK6n&_#^AEPe^>+c0$>O2=dL zOpMT#?L(sSmOMjLvYqR|HOMX8AV~8LA}61H(5247A+%$ zd(hMvO>vM?V>)hztox(CtdrF~(+Ik1k}p%Tvg$0t%&%SxoN)~W`tFnU4=zFqbnk;x zT^f6Hb{@;RZ9_8X*dp8kuWAlLTAm4}9SHZTuRM~Oob{;uG_B-guRz$I5O?->ONUYk znMhlr{7+D0YdWg}3E$6W=w&2vf%i|{j0w+`OZn7U2-pR_V!cSkyT-#MO464|wo^;866e-hKojhD zd^vGZhM@8Yv6b#gLd!Hy~k@T5Icr8+&^lty!0#?{eWGA$o(L5iruK8MaADBOKmva$@li&aF#99W=%x>3t}Z>{MBwAt4LPB;$AoTeIS9O#)D z-q|)5Uwppc@^yCktb(W7;r4#`>0z-e9!{bTV{H!%!wNFI2HO-~Qted0pjYPKvCs&F z2y>#CR$hJz0u`{lzr6L$KV@tG&z7U4W~$SbU3s0Y&wZauiFq*z=Zr(4S0fOwU%2wEA zWsutpV(NQ*XxOE6Id-IHd%*23+S?OWKoR zZhK6I^U1!byQ-VS0%w-u96k??e{7(v5~$D;4?I(YL>oO*>dtSjH4MK@{IKn?F1@=r zyfS|^uNx$x?QF;IAaLMTCYGjW5!eVnbZo}|_kEZ^Z3BNe!#`>p)Oq?&-yRFf_t#W9 z4r3B;sf<}Di)C6G^T6o!cbdGLI4bq9Pvu1?`?gCrYcAmzcdZhaaSt|S@Gb~l+fT!B zZxwi6l<6N59tzT;XTOP$R>U<^RIWIskGPQJsunDyV<^$UC6*yX%HV0VOD1SyDOzfL zsa&w$CpX1UU;izw(&W6NrAu5?+S^Okc~_F#*-*VEjan@95kgNBs0Rh9L`qu0S6p=Z zg_z!wZGX0G+xq_Ra1Q2AAwBz=CYwrk`@KrKV~V)UUdQe`^T1mvyx_)#?AdM@S%B&8 zg>t+?B#(}+tQu_-Nb)4%-6&L%P?+e^9M@CWrm8XTm|O-|ZVc^6QSi6m^GwoJojg#ARc*Oo^65yM->V zYHg>-_D7v8QEO@TWRcTnVT{v1q@Vk`WISR&`vAw1*hT(*Jut3`o5SI`GB!+p&%w?9 zgxx`*Y!alc59wsT()KIcpOYMedlj8YCY>Y1-emBRy*d9_f~S`FP4B?OiH8zyB!goa zsb;}ni)8)87X&|9z*nr_>s|o@RxB83!aqG_b?Y9sp27D%2PpP;zC&iFs(d0XqvYjf z%;x4MCmO`OG`ppmemIfVoH2q-c0ysSj{EclI_dUGe^=VK4^5-7Lh&x|8xqY&u38-mI%A<%bK6&5vby%|jBc7reJ(ya!w=ATiY~e(~wZ>ICDz{ai#F!|(sGcw|xT$Jzz! z$;!0iOA@jsFaJ^hNtM|D%`XDXRJrwtp~1DUMX0{Pw<4cKF!fcZ@*TR>EZ(U`yHipA z`K94Y(F#IbGHRS9rw{enM4-Nwg-#9-eE`iH?<6X+_)Ituz`>=Bn00IW|4?N4|56nF zclfQ>d{_rP%GlW7jK1R}>y-(A$hVfXyG>F`rE>a^E&TPxGQ)LPf(}%80s;h13FxUP zkl$*M7M^g^=UBrt-kRmBK==)1WZ~w!vDcL{rk(H7~?n7{ck`DiJbPCfSOyeOQ|ZF>(0j37X) z1bq&gsYHMV+epx0y9T!cf-YXj>hnm@=i#nq9wNW2O?*{=&?egj8is>tN_PPIhd$Zt zgg)82cx(xwPxcTsE55wQ60)|FfQvzeASjcBBVGtyn*%4(Mr=OazF!31N@-X#MW)9% zJO%n{Q-GL_BMA98-T@UVFE*c_6nrmYjd6b~u6KgTf$nSb??UuESu-^CNds$|FaptF zx#RVlmG2+nPyKAgPiRH1c|~By_P)y|z9Sl3ibGByzHc|ZgnK-Jp4V?|tW2(R)H{GeX-Mi>R-&M37jS+UHIClrl?CZIeF9 zwT7|*@5Ev>>qalfrq$X^XK2lV7ekXlEz$tzizbL@^j6h*8h%~6g|D}e?C*ebwk&`x z3*g5&pvqGUUpZlm!6k#r@fnQSrhU=FxIX&$Ir2>1%5+%~huF%EP7#Wn9yDlfDnw{* zYJ{WCa8(J}3o?7Ain7$C-^mi(de(o;vqtWp zam7ohXRO2SBj)WbIxyev*F6T58m@8JlGA~+fN)tu-_&J;8*axYJ*(Ng2{tR>X$vTu zhg#-kMeI*DZd~_U+gr}@tvT@9<^V;JJ*biMK_)=$WH>mT75BIM=9-AEW25MEQabh^ z>j2pn{N_i6O?cm|XKz_-(!>;yD~Bj|&Y}=l_IoV;BP_pBL~L#U6t&nI!!4Wmr#WC6 zddS=k2YsLp35>cl)Ft!9#$-yNGxMfa)d7CuuH0OmLDu1A$Fp<4vu`xg#=D==}Tfn&Wk|Nt?bFSp?scuNQ5dCi*_N z&OXn;V3^qt-?Y2!*>N9ZILkv@WPQ5aOA~d8sF&~2gY=)lFsVy~ZGpZ&2J~%>>tAwQ zi9Rm3-zZ3L*7Rzd?IXW1Dp_{&hVG8OE`2XYQuI+9kSBJQXSvg1Pz}6q5x_K_4gZg^gYQKY`~Sp+6F&g4*9EC75)|6MbgEV0+LoN?<7V8^ z4hkV&Y|%Xa3EBCZlSThF`-uYhBho0qLWb!kG_Qz5^xhp_hs{km{Lmc3{T(h{AQ-I% z{K)(Q)a+g$3gsIC=*BXZ2)#1cP|HgE2<)214;?aM7HcQrf9yv|uFgDoQeeB7ncNZa zR_C&|0x|4SD=H>oG`m7Vjiw=%`dJVup?X2v=^k!I$ zm?b2;%$D9+aj$$TsL5RWLOjDh^Qe3=k`Es!aM&$5H)B}i)s3j=KcNgAhNmJeCfh)xck6`A9)70-hbd**cylbejJ1y!2By0KDAN!jyuvo z9CDk}KVQ?$-r35{MdCXGaDXfF$Bd}3d_sEN>^7JUU)H;VrNqDP62z0!d1 z{gcLs#@adyy>vA>_7>5J95Sjq#Id8K2t>@zf~ej7Ia%)3D&}%w=J&N2Je)sUbK8;> zO&F)XM+uxca5SrjbVYk<%)4xj_XX5b&!vxbbHHg4^^K{oO01z|K*x z0uPDXw5f4<34bLS!lZ)E9@kYftmKyuKF$J5Bb|xxY}p&J#{gYrMktmH@EYmQ5}Fuo z#6n5a{xW8Upm6=lH*CY<8)(J1w*NKj;MVy3Vtj~)+5myIb6??x{36n_-Yl#K6236p zy-JOY!T8%>0P!^UetZE9n3<9b)bnS%iRJ@!*U+B<;7|$qTJEzE9LV4GKJNL}yXhd2 zjt(!3^lgxZ3H-nU#9V!vjccyP?Zi6Fn4Uy>oa-YVZhO5|)dXqDTVSQ&pnEH1CTqJ^ z<_Schb6BagkhFlWQo8IdI=x$L;=gF_L`P0Eu__w7GbO6ThWHHa{$W!4%rZ8|&?NN* z+x)B#ZT)&}VaYEB+a?MVR6;i9DUfdxF6zz89f&#*{Ky-5LB^xgAQ>iminwpl13-{-r^qy$Y`7TcvJ{joa4xj%ZJsxt<9wAZ zUGWg6TbD8^9PI3#w~!s;t068zFhMeFOX#);2^vt^%MmDU%}0CF(!*R96C zuA}`Iz^m1|U8W$fS<|Pjy6^6h(Y;~^Z<7x8Gaz|zo&=}Yg*iNyXBla60eHDyMpCma zEnWcb@{8>?Yt!9;6lB8=@{@~>Y{$_)KJ*NHHuo|9F)1RBM%666y)YK$jH>3HWyPcLO2DmfF6HAi}< zyw@B`8BJQah6e#>)ES$gV!Jgjzrh8j!&L_SGQ=;uNfli6^#ZGd{9{Mc6)ipEnB(uH zez{sz91}emIxPg@6e4b#q&K7iDEzfW%-_)%*!oSslqYaukdQS1KeAEeS|T>d=lr~H z!RVVO%Vck>5S{q@U^;fp|29OjmFK^4{75xQR=vHL8lE4xyG_jSTow!Q92Hh*%qw2m zv-N$WZVpqQ*a=hEF zt%41=E!h*p&&_TJ?nqs}cJ(=lbO3f2h4@esJpDc}9ICf0+Mgi{Yy*7xJ8lz~p?gVY zj^c>Xvw{#-0Y2@#{0#r7dxai>XDfK(KDhc$Agu~t5z&c<4_Gf@8SuwJz}N~e2Hf@T zp#3~_5ULdbkPfi5mLQV>8?$Do>*96#scFKoe|cr$c+zo1>b)h%b%h={eRmD2Np}2VFcTN zLBg~Q77eu{a6v&_@zY%IK=T(bhOOuGld<%NKFdFToCoYp`ccbQ9D&F6&{U>F(x-LU zOT2n#9@NTLJyq|k$DSf7$u>R~lf($(dEM(Uxh1?b=)efNe^{-<8Vf+e3L2Lf-6ob3 znibu#P|02nC;>P82equW4qM=W2By|w1`%yy*><)LHLBtHDEv_fC)K?Igi;#_B5u60 z&|5p#|N2^E5!1TG8p~1(ZlIgmcv7m3;rhqN?p2+U;9fd9--TOZD|xi7R3fj1DQ`P|E)M{a!5a*MCCpc@?5Z9eBmVM9WXoq}E zO(uNwBB&?pQh?Jxj&IvZ_I0CIF=HCm%=H0J{%ONi7Ak|QOhmY zO`6M!ScE*?=#Agn{zFr>i2Ra9bmbe|OT#)ut;B-&t$M7X8u!eViF&ruNu~xhAVyBsfmr_?lzpNf%u19K5?HS?VuJ8T~pJc4@5A8EjwI#J#D0`FG z9O1Mp;kG!#Mene}mc7=8Q^srHdxqEAnUZOypff5y2q@?I`7*$#pq`|jc+<{}f1FBPA9&ny+tk&#YP*%o~a zvy4)uU4V=8#_*@U?uahJLM`^eh4-6wHAn;Vcv` zT0KWyYzB?Lt+5D9qV!QV`%@sSa!7u$gom>#$UY3aO*A4U!bK%f1=6ipza~Tw+|9rB z#r}N8GDi7QRIzcq>kB6vq02aacvXGwX+@lQC%=lX=Lb!4(7B%8c@;;Lbm1j3MEB*D zoX%(GN;zeiB1vqw(KI!Xdku;q?b7R1#Ds<$z@MBw~gu05Z)oITTtFzvNqNbdj zWOop3^HnMVQ>X7_KmEdVqo}=Q&Fh5(@zq9I5%Hg8`4$NK%_=C_UOqMXgUgra6IbOvnFJG6B%N6(fvz?-6nN<60=NYH@D0H%wQ))M&vtQe$7=S>w#2~1HFoLg17np8@eT_Gll|YR} zTKRCe`xn7!FyVhPy^}A)B%537Uy^X!AWKp(`3Y|zFWW+FkOq2QaI0Vrj zx*5<$x~82G(QJ8#O<;SO z&1&A%*gsksjFO5yO#{}!r7bhzcc9o&m3d|%Yi4}vIG;Gp8Pi?5W%CtqIS2NrW{YEy zdNsx{z1@4MgL_ieVPkjk6oZKqjA?mCbofq5O9*EaP^!&w@x6Bf`Q!C>2>^#8Hf%In zvXM9iR~#U5iRDpfL753&IKy9r*;i3Zx-6kib?R{jM|#UEJ{r!COQtrgwpJ4jEq8L+ z`d-+mc{b!`gDWxqQ~9(>HmULyYwXk)=D>f(*90|lq^{)QYd__5rcoA#P6oNfmzGzj z8t!NOz?viitdVnl94k0L95*!{iWPxRM+t(1h+GXE4#bF_COS%h?9vx&^cEtv9N3en zgHX++Kd4c=3!;9kn@^_o8KKNr5DvRA`1ADh!x8ip7sWON%o2 z<6aV$WZJ@IuVvMrfs`(-VvV`ANWf9oidc3>^j@=mhKJ12Yilg)u!CYuc_gW!TGjD& zj{Bf;LOekoq<2R!MtpmHiY6>#8H!t$R}WcT?W+`jn{n^rqn6CRO1qf;FWfgCzj*1= z5Y2tQP3SmC0Qb%Qt!B~I`M=$?{H=zS&ESHuV)ObI7r=c#@l6|J}IyM^74Gx>wGA+~Y3j7%|p^ zr?~9C-L{aw+n>ikC+Fz2B{NhWG>YIua{)h$!hh6iDK56>JAU{cb z+n)-7{}(1q`3!S3?scSaY4M!nq#(UmyhRN$I+nsfqVcGF!<`(;E>R{~>?wY)d|T9= zlNu^SmY})Nf3DUk%ArC92f%%t0A$k3br`if?UP*0|?gq_U-bkQo;nRK^ zPz^h@_65}7ZoFJG!%_ZK_U9mvA#M$CqXMMSX*?ir{^mY}Q(!rmI#t&VUmfwyS1vr= zQT^WiOM;-3jnKe>^cy>TMC2|9_XLA7K;_HfAw^)uz58L7upcg7eWkZ*EUx-)?sZ&| zQviWnr*TiWb}W*ip9~1$=(&+*|kkkP%BhEWQ7rRUr~r0X{x9wx}T7Qe&UJ$Yq{K)+3;ucY$sfR#e1RJK>Yn%M{hCrar8i6XOnLlCyE6*kf^i&qq>&Q>@$J_+)(i;Kejk$0d%nrNuTAZcv` zS`KP#FmG&NI4g3#UM$$==nUZq?4C-mtRAbagVOEh>`fQAO5eMT&8fq<+l&grYr1+?m(0l!L}E=RDt)J$&oX zfGz6}X>t|Oaxi4X#Jn@wKN=y|pg`xA{cwjb-%#z)`-?-}+-WK-CP3+4`#}u;e=4o~ z`hqk0^*QI%wi6`P55>eAlCR}>y<6|T257npdPQ{o}#UCl?sFhNBZ@&<$3DZnz@Rf+;d?a&G!HU`>3^gOgO z2NK$n@Z3ov!Zub%**Foslwd*+)qp}nG(p2`JRxH^B1Emoj|x8RaSsH6hCp;#0}Hku zYl*GHLJ?SZK$5IHFI#h_x6)(d#etSNN2rbu#fv~Q3AU_5{>EQK#juRj2`r7!%1z;3HdcEXz@!xY`%J*!M#c4;#{pyRe!)ldrpS)KfF2mX zj{$M9Fnea5l}f4LSbfee;Zgc_)Yzk%1_sRQ(V)RM?<8_3djq-r+^j{$JjjYYLL7$q zPilS{q1N>)j^!sML5fxA6-Lq6Qt33s!QH$0w^_1xxTG0KB3n@_d@Lo&UT z@QS7-X}rGgxUl9ND_>h@iOt04Vt*v3%*m?qc2rjKVghR4=;h|=cFD5J;D-g$@G$JE zqkKA`{`x$#qsV&IN|{fN z3M>LgQ&ExT?>QUSVND}-Jh=0(NboE2HT_PAJXIHMp4v+yn5?WRe4Hna z0Rb1;ug2E@?+mnwv{kc-G`*9%8=R*4c=NeO03O(*3}JvDqSnQh!e$a6kz-OatK*@o z2a+x)eme8%EqJsRKXtbHt>)&|`TyMHXZM?Nb(5FQwA(9jOGA9864|QXlJHyeNv;sy zYJ4lnK4S7cRlsF8@qbLLNnIvy>2R_ zmCao}CLOCgN`YPyEV0b5M96Edg5lpuSgI6ET%RAXRc%iqe^yuL?%f^}GaM%NZdt4N z?3khy&3leJH%?sf$a>IEhZ>d^;>uG$9jR|N!ta4J=F*m_4(qpFl3xJU{bG`~)4jAeh3m)Dh8E`I0$*1VypBx4KKkLg0Zsm`hd}=)zUpuo*s4IFAjE6` z>T^9lrdup(q@hb3%(;vBnPHMXWA@-_%WT8qW~8aJv09`@@cuQoQ!wI`3arBpZEK9e zntFKVIbqGrwHCpnLUxO^w$8aZV*;`FjgIF&?h_94n(Cl0gZ7Tt2)f}z~glq8mL$84XCLpU1o z4UU;6nRl}OabqLnW|Gq7q>f7JHX(X6=04|icuOS)8bIjkE4$Fm<}6O7P7$-+#oo!9 zm{2XRvdAkUFx!$J`~ih#wC^C)z-rC>xJC6zJ-o6tnoJu33w_y7w&z`l7o5OhU46;7~el}_W zw0mMxU;u;24QWfyhds8Y5?F(6fnzsNr_TeqyYu75V4S-5G#*>?_OnijTc$7jhYyMs z#NE%!LS@yB)U1liOcFXushqe|?&S15uX08e<8_?(T{F5K;tgtG1;hRfY5Mbbmdr4R zXJ+m<^bi~=?Xdbs`pe_QlLG9)lLavjXt@WT0e4molQ@ss_WO1>Q22{b#Flmvnxuza zQuB9NAWK)GQKI3z1mZI%+tG%h*N`-drxHUd7ujD>oy#;C6+jj1_#)X3eX#THGWP1xDlL5SI{Q z98^!7n-9e@t&-qK&eve~qP|+6p%+2@*I?i}?2*Yj%+tOV^zeC(*MYaz;k8B(%M$Zs ztE76N%SYi~9j3yMKv~ddu65WpkX}u_lIo5~JBIy)NQ=Oh)kD+1!|-|92E_Ck#0>Cz z{(Mv1bK2yP&Xtt_NLOqH1#FpKmRiIxUli1%3IRv$h8r>%tYpQ1a-BPiuSU(mueXj- ztG_wtUL}{7^ZZQT^XkNlBf-QC-YZRQGe(aQvlrAL3R2SFX)Hh`|zH^dI z{>wF>p@z=>=mGui-m7MIM&o=Vs`!Jib>}_9^>@D+=CqkF(MJYYM=0PMo8eXV?H|{& zr>%v*5=OP`argNms-RnS7-;T9`G=$SN8iz?bdQhR+Qq^Yb&=AS7@bWyRV_4DYfw_x z#)A}P8@;3`??e`pBsabIF894Zt;@&ki$}C4X)s}99;=oUD)s(X5+6_IC?x<&hO*5f z`QN1%69p!YK8qYl6{p?nxdXNiPigrSx5wSrb!m@C-PH>#!DtD~@@|Ko{BR zQ+)G)@}Xe((UM{l5FH&ZQIl36y857W4^JGCj zYE;tegG%+~ieQsrv-a(C6G1U~XN8WqvnG7?)%tBG^rIFT z{-6qcWeltv2aaXg&0i$+LSTmnVp-%qG?Y*V+?c&$*yEXqx#oW0#hgy4WL>;5e&j4z z3lu5qu#hbH5{R(6z^C0o(n*a93iuievsfcquO#0pbuLmgmZ7aW^(Er=ha;5beDeuG ztZ^PUEh)jMUi?=-e(Qg~kITpg;ej5wUjTZpL95%E_nW`x&zu#MoHgnkD)!N$Y=4wR zzYeoPc$(d;x#L^FJq(6@=cA4KP))a}dxZ=*1=WEjeRIOpqRpN^vlFtjK+~&A(RWyM zm<6xh$K5-ZIB`A1g`fqW|E!Vz_jX32#*JETA<>0NrkAZ|g^7#D#55bQ!5CSQ^W)dT zBXdgEVH+DG?m_e(LW2q1+`ZHQxmezmAH2K98f=6;4*ZgHZSD9~qv;6zLH2dn%ESY( zP5=*xwg~Mfp%>CT-y9{Z9=~-Mb`f-xdH)K_o*M3@Ltn|P=%!^CeYtswY;Vcya@hbs zq0(I=ptKO9oGvS;tf&Yi`y&@q^dZE+CE%Ty@W*>fj>h{fdjt0?X*B4U0s6uzwm^Ml zO^!P0h-dJd*82fd{xyfqOq)dA1Zp_%)G>U%2BFqRy+Qr-v@2e;Drt3wkY8_i-I~vJ z1~2C3g+B|{Tp__h{T;Z;Hs6E1TJw2b%RTP9b+jIm#D?u7qtu6P*L~UrIamag0aCn! zBf}T5W^MUxNn`xJ`nhj0VgkF1^&uCMOO5@FYrZ$xeM|>+Lly0338^H^nkvH7%{#s0 zNc^5=zPRrX3%0!=gu*x(P`e*a%aMH`5YZNssQWSZ)8zHMc6v5uSg1fIhnv&#qLwTYk!r!QO412+gShaXZ+1!x zPuBg5f1ldH&o;Cu4W#?UwWPIK0x`{o9g&C8BC7a`M)WWon8S`LSk`ZLlF5hTLtFX% zam178sVc|?zG3?aapv^r|6ia1^OPO(avb{Rp<7T!w+K_w}xR>6L#9Vhs;$+o;Yd#?%kjcT3jZ@lq?)L%lv8+RL&K!F(_wD|m-FNP?{XOWu}1N1Dv5!6of)4u z5LGwPKD3@RcCcPbEOZZKk3YB4067|@+bN|`xNCOglZ9yoNhpRK4sNm83 z^&%;t*A(?PPP6}J`(~q&i07;84>bgC&_7;>1qb!l+h_$#`<#72*Pd3bKbc~0#IYxK zC#&1dGDtqOFfBHqqVx6Vgu>3YGX7~=U3%AS?5O_W`MovF!|i$YKJyjB-8jckKl6Fd zJClT&tGN+cZEb&_IoCJ2J=y4Vuf436&$8UZdqeWkHJnpIGsc`V3f&wLs^x+<{6RL8`7u_qXY4)-{V4(Cmv4@vR zc!;h>ep26-HLS;Q_4`DK05NW%x}V~RyXKF3I1%+-j6`-97lD!lG8~Y239Jj z5LhC|jeLW#%on)sTxZI{#jrqu;|U#&>aFm^9%dbI0u?M=17mO2q~Pl62Gw)NT?gWq!w6TXBkGJ#VTL`M_MRUV#R?) zOakKgnHsCy?Dr8fTBB$#WjFv}f;#~XY?ScR%~8N9`~i>*)e7t*br6P(U`*0WIt}lwzmM@{OI+XnW1a%F$gfv{8a!oHRmb z4T53~4ViMYZQhnH3HIE+dGiy~Bw=JO0dPYi8`e$pOl$jN8*kXrOk~yi22Z8vAeeNHE-KX#IZyR)9!{BVB1{Wp2J?v?c_fnJQBQuM(D zzFyXCRNSn0n!*|a@Qb%v%hWqbq?e7>hPo1wFI4q;c&Gy#sUBu`(Nd_BduS22Z!2IC zZ$#c~IF|cUI(RgFM2ma%;X$2@le2FLChonj6*2z}_}n_@_i=gtFUOH$ldy?PMD~ec zpYn&|fYYijRz(xEy@M;P1l8hCImq^$2Mwyv%@fuJ(S{cZw8>$YRR~|9IfEW60j*^2 zT1;^F48qG+=$QqUKZ0oT?$ZC|@B6d9i=xKbY1#jXM6Kpq!C5=90f<9#nC66ZJ+YRP zsHnjn8PfBq=TSB<@7xMyk41QHuUxDhib-_F9}HauNr>eT&KA*2wGN9$V?ne86Qx^T z?dU$d@euIq{`65|?_eB7EmR0XgEG(x8Q@U@8LEi+C6H+g?CyCIM!wbV>4oX-t>rQ- z=1?P~QSHCs>|0pgI`PyKgH+>Tk92^dpOm-h%(_UR<$G|@|R1#yu=5TB1(hv6jv zp`tmoanEA(1rmu#fq!1+nB{lO(^x@ox6#0!3|&Qm+;C8Wp$oc;{=B0eD*{(9hIo3= z<-*_1XH6UrOp{=b=cZ?Mw?X=I3}?q@FKC^L=Iem+Rxx@a6g6^hwr_y4K6>R#foN4Ce7f-e{J)rd@1J zNZH0><7_)SlME`GeKK8)s4y&7S8_~v4ozN8H)Tvb!5Pb1Uu(fJUZ8xkrH^^##5&A; zY1r1-dOk^7OzEH+CFj}7)LR`5J&8dqL%ZNQ_`EUpd<21ubXfc=!nb+ za)=^T3qq+U&7 zeVswkeZ;pHr6`oWNY}mTUO-ZdOI1GrUu4igFdQpl{Ne_Q)jDjie;Gi;AYq|`_iHu1 zDKN%FRo7wa3v}{X z7LC_ofv@nL&|-#N#_?N!b!m+G+QlQ>BkkM=;zo?W0spJfwr3qYyM%A~QxvQZfT+vFwatgo(sf;y2LdFo3*q zfXQRPkcuRQWIAsC#_1Z>^j!DFdiDTmE$=I&!FIG(bZq*4_Ed4H9T#4)`*`iWOg8OZ zLG0Df0%(TXawE=Yn>{i4;^zeDY5(|sOGy`IWZW$hc#8ckU;2lr9vp9bFGs6Q9wJ^N zX8^|^CeXr*t-~0=nC_NCXhbGk+zJN8vAlS?(6`?I-KT1MDu??WgGP zo_+;b=$#NNI}vzh)be$#2$;-ptTR|Vhs9Dg$6LqGBT-PHQ6I(^t5r=_c2yE4*DUQqOI^|6mZ^NuG5uBFV>@A$hxT#%KoTGp~WlGXek| z$o;1oZCgm;KSB!MJ@O)&aRtzNz;OnSb2$Ue8z}BKvhK!^MW3&c*m~BmyO}&UTSL~Vcw>9=Fk?*&3Fp`_UI zK=$3olh3^z9Ro&MbkUH0pp>6#_LU$-zN)-fBf~E_0fQ2hDPv{HHJbHr0HvP5#(^MV zOgBvQP-y(3B)v;Gyg=$#oqMynozsbNxt38{frTm^`x8HZkP{vebPxmez~*0cw3TV= zatV2ziN3$^DsO&7zjc3RiUv40dVw;%5A>ii2BAhmm@CHUui1U44MG!R#=Qc@2}1X$ zDNky^1#CasuhujB+6HbTM?P9hx~0 z6&{R*YV2gzCeX`4Q}-fTuL|W?|J!S!v=1!K@p3F*=H^(L(gXRaSp-0WJx1-1T>@1| z@7n>UNnCUndU2)wQxCd#S0j3;AR4#WO`xQBtgkWG)qr0!!ZYW!u`bGz8F5Ah`J3D- zqnHzIU}#gL%>a$?1RBEaQvo@Zf2iIh>hIzq@YMq}-wMo)j6}y=vdxlCww3N& z>ke|+n>YS(GemE~fG{kHf-oH#tCUG5Nu=LMx@HQibMb^^Q19n|@ZE1Au-|)jC?s)A zoL?^Xmw$V4o+NgasA7~ouwW+ZlIDX+WvI-9czy`sqRXG`T3p;FrXga}upEC&SLf&@ zBECJ0s$_yZ@X=M^KZ_!6FxhG#-h3y*I~(# zHF!_`j|pGZIj#?}wnr6A`{sAl+F*kJBE^G#YK<5A^m!d-h+b1JX#3k4uz%9>+!8w9 zx!_W4-5QtQt~MSROV*2ga`&=Qs<0x$+@ha>{#>Vnfn2_i zN}k)~=SE+?;LIs5UWUc8D1_wv>%DUL#`-(2y|guaG?rW)os&pV%7vbWmJJtTrTm!n zfRd=a^J~!N_dG`7nrQ8HnswzMYtXQVU(N2a?dvet=x7Q9#Itgt~xyrB~_9Np*W%a19f5t|z@43r? z;4+u3?Pq!v(i*lmU6I4ZB6Q;Ow!P7OuMrjqcqxC#L(^S?##~-a85i3!9|2fM@VWov zLce$??*9q_HcH2?P4YA9M<}pyA`?vl8i5U#Z+s!7OSTe-p1^?CT*y4R6Tr#x3laO{ z=xx3K^Rb~9>W5ZnIRMBH#XnOX8VdtY!|N!B>D2%>h6J;PCOYp1I)Jq(M1CAaYHBj9 zhq5lt0pu~fabKdIo*==Cp60^82kGp!C3c>gNHgj@@HmvHemrCA{hyEjzZ@H5^|Oum zCdW+K4Ri{lqz18=43YZuRwmLNMNY{{AU~579c??uHc)aibwKR;E{7lHH6F$5 z6Hl3O9f5*mqGMiU&}9R9_kNFHwYr8A7COKMTC*&3Q>Byp!CjNZXC_%jrms=G4bwvj z<`koalCrsiDA^NR0wYC(@(|QKe4o4MU`a+dX0 zk5T3`U5nxrW($5x4aH8cMMlhYIJK&etYp;OXp7b1Ueu*yq$%or!k#XCDn6AtQ6DfD z(Sct7MOnr|_pRR$my7rBLio-j_l~s26ffL=@!3GZhT$FGZO@`dkRBdhuTgEx6xQPe zh~Ieo0~%yty7t;vIP*hC;XnH~vQ!+OP4Z;mS|Npl)cZQB2g(N7tB{?GJy^mv6U-tY zI~0^9@^<>ehYrU9!cjm!*a7*EH??(fy>DU`ai^2U!HNPn(2!<&+6oJu?A6P#BE##% zL0j};-?3}DtXUxh3$posb`Q`vl0OAEl!hXIy;IWA0D)zQ|~G&c3uFO>fHPh3}?fFHcr z!Y_2=WLJ^)wT_%BzkOHa2X_Kma5ViC7coeKWuXy>`&?IkK6{l1p+%sxBA)!06!^8f z{=fVA?-&DEI#ZD_oFDpnUgJc+?@NoD-PcuTIJ$0YAwP;#u57ZxOfiArXW`Z6kjDLK z0R))TGL;rsISPv;kjJIG;+2N1JGQ(E0r|O{89w&L^*StT?+YGdG9=v=?8H-pEPClW zefl{Kp9Shnkii)>Nd$nv_;sz>ACUaU*}+(Eudi{^RWVe7XP)+y;q~jcZ$VDKV~378 z1nSqASpsoqbp7{KU;p>o(p&WBzjE#Jjb7o{emNo5e#Iqb;%z)Zt@b?kz%`juidFru zq*Hfks&MVyYen~Izb)^G%>Y zJ|Yr82)2eb9S&pn7LK>5uX_5hmwvO6=6#%LSBDm#@x_PT;as$AJHOT*YW7Yxeou&= z?{=sOdI_Qov-iK3r=2r49Rx|uCkcxWK!B6qHf6-5!Bq2}pLQ$N4^NC9q_-M!s! zuPlA@x#TxK-K~{(K^(#mcpYy8N5(FLKm&(vwd>QnGS%5QY|E& z7?s`^U}tXmMtQd(!KXJ3N6I(G2^SWhP2B7jGIv!LbI5~T>{3`oSVz!-3K2Xm_jxFl zq4BnvuFbS4jW^=*1naFXn&N=RrYS7UGgnMJwZtb~_j9r#Lrhi*sPxMmPfssiakC0g z-9VbLPsa!SMp|L_bnR81*x#THV?8vhqKR@7oZj?`T`Ib}(f-kx93;b5wJAEZ1CPC^ z`J}}{t3NawyzIU^f3)cjjX?wFXI=^tmw+Kqq%+h4>!we)89v&8Sb@~BXLf@ZzV6)p zw_&1^?m{dvroqP(N&aRFX49xm;O71-s}KwLoUUfJdfDjHDWFPRBv&Z^x67(+wDH&L zL!*X--S7AUUkWv4Ga5s7M$UAoDu=6KLPsR?oPLO4;|%g5E*>kiqBko)JAD7e(kEVuxIBUZQd0g zr8?C4?$N4rrBDm{T=MQ~w8p^^+0uHUIw}1reW=V2BGVH#A03{;hNx7#qPXyQ%*j>A zMK#Jfb~t_l&M-QXdpFW_VRvhVEvw$%5tj$}=*Vn?at>R`bM-LLB203v+E3fA1WnJ$ z+bi%f?(D=z_8+#&_q<})Z#jl@FtvJqQ1CL_72j>~Pw0tQMR}otBBU?FlC;8}4jlF7 za52husKF~{o|~k}WVB$a--wl>fF{_olA6d%IQxpbKva^XtL4W>2dG~~vjD!mrwjZO zg)-0fqZ8T?Wv8=`ou8e_lVRFwElEG=H^nes!ZbQitt@hJBCd7lQNaDJpR7d(pHk8d zMjIwSV>4C})D+k7<4CLhbqc`DTZ)oCeM^4dbS636rZ!;-P}`{m7S4r z5|uPig4JdAgul(;i~86amx)~el`;S)2ZJqX$f$l5G9|)A;!OS6MABTOf{j@yYhk7y z;}Ilp1(sC^C9q9;066(hy8sMe>#YwR{&ic+6D7m9U^>*yg2npr&Nv+7Cm+0%MzBs9FvQa?ZHUC|ueB=JVSRbk@oF|rQ4U=K!6pG71x`)MEuj&VjdW2E6T)7__G>pHW)ViBc^}lHBu|BT{uV{7n-o zm!EZT>!V=~R#VKSbq?vAa~xNe#D^_)$hq1XUn;e2`r1*+W`u`2G7s#K9Pi&o?7-G^ z?6VhocgXmq*|;-07^U7kzin)6u5IbWc=jV*Q-OEvwxYYKAiYHnTO&0&Imfy!CnmTi z`U?xgp2eybbQG;ZZY_*o(g-H95^yV>v537dgOq>C4zfKBW>=$n4! z8VY-3WgYlb@F-$#8}N|4HYU?2b+fc!hG>!CAz0GBE%h;qL9*UzkJybuwq3g>#3_50 z#!wSj-fJ&HzJ;eF>yE5KfYFX3a_orzCY`DpxjaZC=KD~X>&jlh8+IJR-#yQzLhHg z*(V2d_pyUEtB|{Mv-9RSLnMqr+6(q0_p{+h?qQ&PXgP~2QZ=kyb#EZcmKkiC!1JM#RUgk5HE{5}w0k^OQdRjz(;oC!Jx)6IrM4)Ftnq)QbIi2Pg3f58={gVfup66` zRqd>a{V|k<9KOcp`A7RX{;wwq#0+FOQc`SsJseL+x(F*tsn>j!i z?8*l`3KobXxQ0GtDJuDsH#yX7(B1IuTe~L%ZiK0|SnS_ZN%U*M%o9)qN?Z`G?po*TrRZi4vd1U?R@~o^GH4~dB%ne^Ed%duF02OD zNZO68F(!RPj-T%XdR9?&|5DsAQEqMoFbrA`1O4;AlOVqF+<&p(GZ5v3qEF9?pB0Tq zJib^-|5`O{1pW$GLKKTn@+E8al14aEA}xp_F#%4eLuP3rBx@@s5{EU0jy{h8=E1&g ze?{+m`E)SRmjNW6dRda=6;-+OxSyF#&#C~N4z8NLD;v!D;?jg~`(arH5IPb5X%_yfhl^CwsMhCA*LJgP5?R#%67m9fNFgMzVOWXt_$)l%~AlUQAM+otoL{ovgquF z;nRovGRFW7tM+GZ_n%a*-{_s9qU?b$(EwiE*YG)7ZS~Z3XC~8T0Ip<^2DH%YSH3oA z@ZdSJ>KK-k&rb4$eMoJv$1ZIK>5({)I8rBlF{u4OS+$z7wEWOoGyp(C{30NDFR93gCHa)qxN+t8w9{w9f z9P^bWO1;`mSdF_9a!X)XB*{^5imUHuEF@-NN!#|w*b46S`sjt%OwrMob~T08uya>E z^-&ZL5)BILb7;nkYRz1?5b4pAA(rM(9TZC<49+q?_X^*u6e(71?>MI{&072Cu;|fz zc%PnPtFzOa_ZM1BhU{of3n)<$&?*Y(zby_)xx?5IQgV>y#JQDd!CCQBep6O>tr8e8 zbI_y<024vZo8EDt961LCL_aq{Ms(Xqqd3c$o~#2Ntm{cWO)uoz@@d4%7UYZp7nzY| z{mt{HJ`1N<3yH|8#Yos2O!rkhn&gRD;sUS=kR5#j0a~pCp}(U&0Qq4;$SGYuK-=K~ z?{obC_3A2?nbepH3!I-Tv8XAzzSw#|DC8EXmrbGD?4{u-mU7>Iplea_4XAST{W)#^ zVo1C$H{dEiyo|zA0b$0OyY4KV`6Qy}LNiz}7s)h|Ul53}_2SMs*F`Y`pi`sZgf0|e zTXIO7CqBZ=k0V)p_gBx@#_?x4bdZ0gPcje{BAG8=>PxWtvg=iSI+S9Z*y|~Ai-1$s z%bmP)tcmMrAxd?tJhft*8^uS8S(i%|vLWYZjdw{q!lyiuO(0Hu2)Uq!e7k)WqRd4E zc;HW}q9xfE3M!TLgNcVw^LqgHlw~E1WzEG@Ev8OFBd|;mciBsdLo89QLbBpXyOjvO z$UYj<`&)z$rv{l6WlcKt=~9yc3EysaX$Jro`1?=0#G>`AeJIC5f!{*-)Bzus6R81L zUej0R!P60GC-;`ln&eRryB+nD^a&^p=oLCN(VK4BAU5L1X)pm6_8*^|Q8Um@2Z+HG z9O>1ARfv?!g3dJBA2GuZ{)r1k4q545A@Mf7hkw?L7Xnz3qTtl8JBIjRH;#DE#cCxN zIMmVl(zdG*YD}M0BXS%~3UnEP)h178_i!U8_s%29Km#hF4FuOego2@<35!1nxg_B1jg6yRIf@{-E7)H%(&j!_k!9scBH)}Q*!%LDBK+eAb`k^Xo z-j-<|0QpmKIs8=}{O(6+w+H}x1OTvydo_R{M!ru+Tz`<6&S_BJI#{HP5L4E2x2ozK zDKV~_)5Pvmp2r*_pd;qQp|j=tz!ws!1MW1^Zqo+7Q+cGTm<14wFiuUpHy9dtFWILr zm>(+z;ur}7UuWaS@edH0SuZ&Zstx$3%}Fw;2*Qlg%C6BH@Cug*+2!|h##Ce<^ZZxC zgz6O$Oq38B1;9FmA@GkTWgyl|7UyOO0XG@0l^zfDEEwk}gByeW&keQ^3oY0rJqAe> zWYGZD;kwgQS$|D@D0w(kd4KBJwbH}DVy)@OY2?^da!e=Ak5lQ~SMBP1A7O97{=7st zuS8f52b&Z>prczaTl&h093yWhYDPHX@)hg8swwDmcwG?OL@WacTsAHS7v~0m@sH6f zKr#3PrsFhiAhJ8VZYa)g4lDG%f5JxlzdelwR#9>iS=9`pRR;24=O}hPc@tNTUSa^z zs(0`?L2~gs`jKlald$?|rhUr#m1I@_i<^RZc50M#PF#@G3b6XPjJN`%4`Sx9cpj z0yk}P>DsAsW4Kf~Mxfmn{7~7;U-hc*ebl@&3TTqKM*xK)7s=baBlR0m_s$=$+bXwf^3}V59xtuGjzE+L}T75@ZsS zZa!+&Jt;CVz8!e9MnU*6ju4fv1;E_b-o{v+@2Z2WDVhD`!Gx^xc@CV}h!uwUCQackQFDLz zmfFB88N#s42{;J%CP?BqPQsi&H>;cm%sJDGe54INgQsNi@NJc z7=0ghUkGtBDj+15VvaBBf~~R88w1Pgn#Q;n@NWJofIZm^pV^5bQzu5^kt9!+rL9V& zW8q@1k5{Z{h@+D-D^TF+*pBuA``BSnH^%61G7blT7<0RUGRFgG9_=dg-T$?#L$39> zvnUr`(ACBAIP>PZCDOlUn~@Qr)R}8kGSpJLD}9p>cOQ&f^-ucXp9O$56@w(nh^vxH z`hi>agKO?hMGVLoU`__W7vP{6x?aGI{6XYJQML$3M%kP5b^C|aOYC2T)M%1Eg4Bum zL5CsK4&(rg%<8e=(ndo(XNbVxm;>&QV%|TA!~CDK5B_wc{AZbs-}^mhx$a?RP6HbU z2h^@1D}yM5YtsivGCPojc?7Vyffhh9aD5drfo*0C+^4K3`~GXp?jY$0U~<2#{4vc^ z56wEINep}m|B;NvrQh)iY47k1V$o@oTvQrnhx^mbkZS@djB{wUatJv=9mE%W^?5_;c<=J`06~XZukys+}BeD~CoXC3RT~m;>h5g{OLPU~| z6^I8aRw7>d*aiIBl^}`tg{z5^(0ds0$*pT6c>NO=_(iG64X#(>oQN<5W0J=W_+&3o zXZf3N@|FsgFfCiP_U9qt)op#5LTyFDRm^d@@#k%lqGZ%l&R#O*O#x%|ikvR{FM>rk z?%U|QZ{|QR(ZSWhc!4Hc@59zfUZ=3bdcBsseq*qE_`9o+)1Aw}M$gj7fsU}6{V-2k zjl3~}ncMRUuu6@S_|~5A%lOSXYZ}(~2VY%Ws7(c_E->sesS^OK)|{xB#D_UjYb|iC zz4O~DoTg35Hw9N#=PQzIpj}=6=Px%l71&~wl6^ay2XtK;FTT>aV6IlK(9L_Fc{c**WUKF8N$6@T$6pix>cmj`qUaJ(rp4QkOMx+VE^rp{Z+DB%?LMXAW=L!NyVCEpv7G4H`bdL4o|}? zxC(LfNa{0*^Xrkg^wmAlx!yW+X7R-IS%4tcOB6_M#KE#@rcg?uAXyKCs0Rv&ZfyRq zy4)`58%SQ;9onOCPuE0<9aTE44$qszE-eAik_BlWAguGv3FL$cE+a1jEIf+n-PtX> zKmvd%IDBar<}L73`S47bDr;lf2*yN!pzjkP`wrK%09;dcrv}2HQ7f3|NGz5lWd#^0 z*EIHb8^|_I(&@BX<||q-bb2qtJI~y7oIQI-+y_7feEMrhZ{zs;pt3+eZW8tF$-O-o z^H#>|L}jk62+F_T*d(Wa+pVsPrAG^GDTX^UkUymM#Hf8n9F(g)oOe}-eZXUhxjh)$ z^5QtNyPFi|#13@oh~n4)Y4C)t&2h>ZrsG#za)pfcoSc8dnq6>ZiJ3ESALFZ;2?qkg zzZB}Pa_JQkea2lhiRjD{=3p{<1Qx$lgMKHqBy(#{Tf%wQT@A6a#3+^^jT>4JMmy1 z;BRpNCMNbn@X7)}AORnHMlNz`2?)%RP7qQ=E5v0l>=wdgo$f$=b`B@P(hbYJ4jZs~pM2YJ`%N8r~<4Cx9n>A8-Qm8NubnVTB|lfC8&nTx+3#4U}!#aKKyls{?5m(?0(2TdX^PO7Qzlq zR(+?nXL?~JtUsX0exi{7$BSO*hA+7RIy2;0^9Ri}C(pP75768j22yxTWSuZyE7&(a zuixnYiTRKE*&aCfpihA^FI>-mA1@$&kw-z_|dYp6YJ6|I%*=0Wu z+?0iuAE)c(nEX}xVY@5ds5 z{1gA*)vya_7|m_9p5=yRkHdFBlP7{;yDW+(h(s)5U}3c z__Hm3jYB(?dcB6`hoYQ20@N}Z6`&ndi`|d=<$6m0QZC5f+N0cC4$u$5q#~M?EvX?H zMeEMachcTfA~Vxg{eSY#vndp@1o;}iU^bBY|DPMeEBt-R>>nyiJ2FxH&f;{VJ)odm ze8e#rP!_Pof7oUpssqf#02V2rnY zj(J|(c`#`HVPQeAf~T}emuNqy-Eu9t*!0uMk>i3!YKApqwt0EBou5BA3D<;X8oqnI zKtCozV>aXlP3QMcIB`ulujq0-8!@X|^YS6ELDD6RZK|_OCWudZG?EaRZ>;#{P zhaKk}6>e>HKgirWTqTrV_(?Q6U7JkEzxi9;8RW{005vB4x6B#HCoP&{}Z4Y;lhU`wTd0};hS1nJyFb(X1nCWu)OmJdMzUefeJ z4)DOzpTC=`Hr`JDMd5`gbEQ*8wJo!Zy{uH8HgzrO`$R(BC7Yr~K)*|VFER5M)COUZ z(^P&}UdW$Jik<_9 z-T*(IrBP8w5#kd)$jV5JPm~xa5cT)Xm|%A9<2gTgqOw?8hvQTt+vvOTr!Pq-TOvN) z{dh+Hu*Ola=I9f^z-I$+4XTrP2i2{WqngD#7;g6@Z~76MdXl^QOW9X}6@i{YCeaE< zL970b!#TFr&!TLZV-$smGD4#U?$Yf0-UpgyBxbRu-OC7|r`wd4cqmv|5q+Y8zpa>A zx$ouB4$IK}Lme2(3GuCV27%8COimup7-irs+9JIM_jvIEH-c@E6^q{kZSJh}l49(#zE35B7F1qGb~Cm+YAo#gz*9WnTJa z32|a$4J3h`!}F6BQP;rl8pu4Ru)RI7EM#wK@Q^$3?doZ`@7pC1Q$HrKxVxh*VM>n8 zw?f^=^i*o9(m zVstE6&wtup{-IWxT8@*udXs2CfL+sIu2oTja!x2u9LEX3c|y_jzyO{x(qOKW7Oqfc z*yromm9oj21|uvn@LaK~A=Vyb{J0gzXY0&q*6P65L>|FZDp4HeOwi}??^=_vzP z5b1W9j|?c{GO`cEqZ#^B_xHzfM_NSWXoN3pO$17J=MpWlB6w_<63HDi1IiZ!8oxVL z1}er_K%cGL20(gj9_bunI)0fFJPBn*ya#B~*ovrNW7q3-5NjHSzu<>2f%r?6KZ(!w z!V7W(_9c5)A>mlS+3`UewdT_HsRfjS;Q}hBJlmrKb6U8Tb>AH$d`yQH+T@Z=i>c7i;rS7z#MALp{K`h_*X02TlvQsqmdI5?N z{LVcrgeAZtlbl|aG``h&1q9-mt-o<>Q#i>LEmNb-Z4p-!yj%^1R7-8==ygZ-Ji4VN9tB_zd#FY0C%WOBWCxOAylftNby*~PCnzJ-?1f)`~{VECA zBZ6nZqN5=OvIFb)LP*&7)!%TPEGv!q-uE1606STCzbx@^Ar%pi>@$VqQ-tYUwPMwR zrsc9^YJw7Y04a*>*xQwAw~p1Vs@Vf56k@KW|POH*LhHz23g zofPZlR*uQK(lH$A-L;H6MA{reQV=SSV;6eI06JOw{x{2DqY%@-9>1dqN1ORSGtH7? z+~Kq3ia{TN#Dr9w|9}@%({=Sdam+fIyMtcLZG{^j;50s|U2>$^J2m-$uWw$!4S!+! zd7(x46X?Tr#f_R}rD~J!dEg>$1S8^-ObC%?g|>QJ)Dqg7bfvd=gDsId7;R=x)6^%x z1f%=4fz;&fMJ;WT0@+qD0GrIUZ+_5Yj>yG(jGsAMkB)p+WYO2#NzW3CU9y6g#XqmeFZzzHW6}`q?h5ljw)z zBzED~wbtTP?6=G98%xjYR7-8gU64*53GUssNtpiNB^9;%jum6@OVzqm;W?{=X8ZTB zIR)Vy3zqU`j|ACyPvS~k4E<_vYUKL!1s#Upn`hvB9+j*!(jxCP}yJ5Gp0|s2f4s`{GiT1h9Q1uS$HlDvP z#nvG3u~((WCK|$HUhSYDqpw1`ki4~{ozv)kiU`eYdt^Q=J8G|LsDN%(45;ZDdnK*a`-xnDL`kk(|mVA?bbt348oF&Bl_n>-a74X^rt%z=J&Mw;d z)R!u4Cwtz6RT{WZOjvuMo*vAU7Z?i)e#2lKW^pY3(9-i7n^j054LjOa9PabEu+{8H zh2OoW%4dE^ISrZHH&R}dU3bUX@G>yI_x%Ke|R)!vscwopmR&mNm>YaEa(IbCM za@662GN1bq*NRqsnU4XJV$&c0SomjIJfi-Z{OR@lT9fODd zCY>n~DMfu`Kx^s9cuDKI25sAG5sLHkxJ{U;NLj@c2a_kzWTHDl|~bn zs?v+d3CXZPTdL$Csvc{Oy{542i0MaZYNsN0&^)G!dO8`#+`+q~c~Iq>3YZ-*)~ZzH zTD>=4c%CrvBUaDMj$6Nax^zv?m_x2s9KXVOci%n`kDH%!2!YmnvF=PgUd7s^n)+zU zG6}bTM(bjKENvl=^OA_+l+a{nYhmP@R8i();pB38po7T$YKS+@!l|@{@M`B!GPJAz z8s)+Kq0jNR=T@jc>|?)jp7VUojDnOxQRAtdg38doyKZjiiA0RDI_zV=H|$=3s!XU% zhjPKGAS~w6^QUD0Q{blG=wYB{@8K^^kGcC|N0vOp zS=atE04jSH{>*vY3AG0~0HUGfRHm-chSF8YE=K+m0U*IGjlPO;Xli$=Pwwc*AN(ihfZl-s zet0e-{h`Ick0PZ+!Bg`LFSHjL=P@-waog$nExnH{tFIEPlxDfC-tfIU_;43VOac4c&8 z;$-=;dLxQly)n`A^A4lqRy%DD3&R-h($DwAsaza-Dx)^(^z==Sg% znZmMqgPR#?4ZQa|1#=k&y|RFX)JsDfF8?I8(A}<9x%eohV2_S0U*3R~H$^N#?HT}P zTe`yjE+<^=zT5185T>2#0j_|q4@pyeO~>uUjfQCFgrEkHc5q_y_jL~c&Vca$ay($8 zZ#KsBUz!8Guda3b^3&iWv@%BTT)eO+$cQq3{>pGWMbKmMK&W+;SK%>b6%AvrdSKMz zc^cJ?3vyrzWdA>O_KaJr6j$E*hADD zU%t@Rm9?;7sN8AzLuwn5(9}Gro-zVw&5GeCL*a}zYM1^>^7>afy>a~WgrWW@W2NHG za^aCosDi+U4&Uq7Z_BgIv-L!+_<%rH-KlE8PSr@{T-mpTvayX5y6oKw_1+fB5gvEs zE+s}%MOpgr-3`C)U)Qg@F}53HyD;$9_^ z_FLuxK+;Q=#c_}ZPzdk7K8lzfy|N1N0D0X0@t@@WtJf7MZNbMbmLV;djWmY)oL$|* zSVi-Uh1u&gH7_;CL`28+jJ*Z9zP~wE{gWGBJJRQ#eavyc&xlgSTel3U>;eJ;Qu=~K zdtUV6L*fzwQg@BrmZxapFLe!g0e}1?oGs57A#Kw+m6c<)w15G=3saCoq3(~kC$g(z z6(S%%{<4?(#<>ZCMF*ibodU}|s46XG;bh@TAKKDG-%Dj`5`CJgk#&UA?1z8JQrNI? zH|Q4ss&ill<%^l&0XZPJ$S(w|=?1FPf+U#>NWv_cVD&tLHkT%#2Ly(PL_NRp@Y6`+ zwL$R-s~?L`#NlGxP5=_3ydR5C)SE{pmeu~yc@V6)Cu<_SUn9N0bj+SFHejMT|A=q} zW4TF&Zqt|x1qwT~ef*5zmDY?*!+4$C^05)G%_&A!59qpOJ>rLBZ49oY-yBqH*4F5V zdm=T{Xc@G2Rup6eY>& z;uQS39UmTgU(oe^azF4{oNYqz#o#CCGgFIYED|Q^{C9(RIynjr4u~0AkHo<3@jR{b_$`lV4*QNiAWFnf z&tp>?MGTL!0n25}_jYD(w7-EF`cupSXQi^vCHj*9&HaJQ9;$&pjt8L&)}xpeXEJ-} zGp>8BJ{30h%F^~sAgsGCzC;yATqkd8OZFpcbbll`AIklp+GD)MD)8<;wa{yih+-N=?}%!8#!UG+5`zzh~mOq&_4V! z_494IXkH`Tw+hiA{jmoRIaDH&_CdGXX14)pYrKK;_}3An8|d5L+;?_`IRBG54RyK{ zHuedrJMU*kJBcrii7)NzJ-}|n7gf&$h4wRe=Ovk4T!okvAWvfYLz$8T`gS^1CcjG~ zbX;=RPKob`#Y*375S1AjD%Y3ed~Yo|4=sLv6LTr^t)d5xCLwS(sQBQB>tLdpqL=Pz zdxTW|P>POas&VR>YdPVL?N(<`SIG^@&JVvy&Gpx)f1FFkZT;a!Q1c;C0pQm|J4vr_ zWNyQGvu_k99Tj|FlAG}X06UOu|5nhraJ|JY`6Js{R$`0yzZ&f}CYEEygGpEef4ydj zW7ZmYGUj(HNJCpE;C=~EKt(w%;=I32A#c}mqBB!C<)ceaScuLTk=e*OEfb=N~*`j1?C6tNtX(bLBF z7~X6NjJ~BOw9=cr6mRfxj(wJLWS2FRzoQB8Mzq)1v88Fve<6+d!Mo_`7N}tcZNCOE zG}4}c3A?EUm854HZfbX9S^wstxhw6o?V8D^k#|I%-Eq1UGD{O7Sz9rYI1DTvG;2ou z8xeoWWPUHBO6%>)D>zEw(TX$h`)TH9M+O{N9qcdwz<+<>59c)aM)nx|ca63#(y=zt zPo|4!(BX{1^h`6aX+dTLOT(+r#d&3|$}RRgqU4${e(ck_s(6>VS*9ECdmQ;NNCePDDV-!Y zxg?_8EGMWPUHcP8G_?>;^d5tc4!~EosdE;^gFG_JQc{T_2n*h2e<2SP=sr0n+vXK-!K={Z{R12rsjc>J=*Fh%2P-0KSy@g9_v}Ehs)bWqJ9NyG^x~9uNDq(aMXlG1e{`RGw}}X630f zJ<>uB@6na6D`51I=y*MeOGL;$w>r;6Hqs9MDeUZjCJrSnUb8=mx#wp0S!)JakWe;| zIp4Wgclh9w0B77?+uiO>;(16h ze}U%s$egUXYp*|@ysn&4!J**CL_Zl(V^l*HqSD3J@wkOq@`D_n%tNlx0l1UWwj%Q^ zsu@Bq=1&_z-9HC%67~-GayJH_65ClBexYbw;L^KBt4HPBqtS!>RrMFz)FxD)DrFA0 zFmpDb^Jw5>V{q@@?ID%IwW4#i=4P)9^6U|NKbwYDGB$`U79;8v1{-3#H8`Ho9E?1W7b|y7KTD>Z&RFPBS0gNUI>@_WZ;DQZ zR`1Fo%2){GG>as*%U!`ny>t61&q`s&KL$8<;qlz!vofCo z8;`!`k2V{i{qViWJ|hrdMDv4P=5w*mtK~`qhUWPg%Y*(qlthlcR699vq&tthlFh}h z(6XVa#s9oZtcA2aa?11O1JZ5G5;L5{8H|?{lLy%0PGT?%NWj)-te!*ynFLB`wAs;Mhr<*2M=YOp0InUDGO-Q*nQzc2Z8C`3nHiF{P4YHsJUHW zJDn!;nc2zagSV?+A9(Pe+IlzH1l7vYD)3n;rhjayIXm#vkWx}cL&1n>RZm)DlnHRv zd7WOfcdgyW{@&+J2aDvm(v5NpeXn^-ddp0b+|6qp&_0?PV_BxuIOWVYerHpLEA^r& zYu&jk4RVJcUb^_?S-~uEVOFQ6u3d_a2mM)oUn(`xOBsjJYt=QVU@gq^zWJtozuHcU z`8R~fiU)5Dm_lVja+0+ENev;o{0O4g)7wMiW}Oz$PT@x*N<1nGFl4J_t~@*A1wX6C8y!K z-^>IeS3i-H`(Ay1A9aFP^xmaSu=Kcy1k(gCm$%;jjoyb}@=E;S{;%c1hSQYGI=;_q zJS(^(gEz;?kkH$Si)?k$s*m}|$#FCy2*UjQRg`+uv*z6Gr}_^%Sto~{gQ^Z>H!Il&MwL*zv@e{B^@nrR3-J($1CZ=#foLB44$N6KVq79v!-P%h+~B zT-It8qVE!zTO;T=Y-4pOl$~CKX|xiSH6@eM)_LK6;A5V1+67brNh}e)ol_&FYT5n9 z$Bu>JMB2xb;`}CrHvPBN!2jjv7wj^BJvip)EqXmylzH}x$}~4x1big zk#FnQ&nek|U%7~_ptNWg4Ok9>GoYonw<+_x)0o61gF>G(n*n7K8hn_e z)ilQ`jtmAh$9Vd2JU_IyosG}ytlGb)4Q%{xz2(2rAOGJUl>R_5C6;19`MPR7eW%YN zxwCw2u1^?qcr1h%w_JG#zo(4HQ5rZN_Lz>1r6-L8?}64g)lpPK7-ZF?PmG;WR}NKr z@`OekXv=-u0VvP_d>A^C(WFs#GCfUTNM0^P`GUitopvg?jIgj^`l2G>P`xPmSJUG* ze$Q`;3jX2r@4vvfZPAx`$Im3;Do?#%{WZKpT#`t=%lTlu%vjJfefgbfrzPk3$C}IV zjnWo_8a@Y4r-}^TciBpkq9odU;q547($a}Whs_HC^2dCoGwbjn$hQnPOIliFRSaJ; zn|5`*^iYm%2V`j!X+l?AeS5u+cCZD|%GiV|ZgGjd`)n7>g$q~TB(S{-D0pKyjJizK zty`D)0X8QqaU_w=qB&BHT(Tu{L+SeGl&+2b+UT!;I0tajA@odAtefbyjA(~U0Yhu- zO|Q4vT4LcEaz@#Z?4A8_3-hd`gCxW}n$Zo1Z6DSf5Oe>t#X;#`jMYeu=U z>5q(tXpat9R-?Tu({XNdh-L+YOn+OVDxUIoWv;zy>3iLw0M4t1Ou5&My@>*aDmzl2 zFwFZX#vL9KUs383Cvb9P43$f3GrJ88OuY5uNcpc-fLSXqH$MLoV0z>K8*^i04s6VU zjXAI}2mVBJAZ2mvU1EDyrUotdX2#vt=J!bTpoS=_I(V7T*{fX}cY6=&cxSyH)k5GT zk)((0YynK}@Ej}T;7l)xl!tF}b@+%fD`HxKzDAmS255o)%9Rx>z}YUdNJ5^1PmUr3 znL8Y5{&QCVGW1B`e))@KyKelRzZ|;fPc%oNxhzXt^#M@#001;7SVKEUKvBh_RY(RG zz#&9-!6HkB-ewE|u|N1TOquu*a=q@c4P5BINDg&5QXr;l*K(PN|S<5ZP1c|v8A>J?<=S+!ZO z8D0J%E83IB+O+xF*A=zvZ*ll)UPg$xf=whQpyP4*vp_$Qn$dTIc**f#gn<_nP~63f zziGT|d*mJo?@i~}8zc@#S;E3H81OzGTE1D@6UK$si+kl^w{JCY8wM+y0qd1VVaG1> zOO4tdSX+|LDx~_D=mYw9bmQ}M{Ou+lNAsFrzBx3L@wV^jGI}&`sduTDe_*c9F|fJb zuP{3G_#3JwjhxZ*G*wRGetz$!7BcwV`SpVd=d|P{S=o9gFFV3}L^X0O ziR0}bIuibe`G=r`Bw>6E!0{O5QOB%=EMNsb8P7^I_V=Es4!8mD7>%7Dg3c~h!k3uR zFk_4;0?+yPInjppri#bk*R%o_g{4)93XY@%5SoA;!2{U@=n@{RLRK+hNN;{aFrWce6=T7|5=KNycd&7VZ}kvZ+n(R6XaR;u}~ z-?6Px^S8(Y$Zn2l{@B13p9QNNtChvp#qrjF4uPF3?GBR&xTf(Gigf;Z2w*_P%w1?c zo6{b8LnU!vROVa<;FM0}`2M*Vzk9w5g|6}{nJ6&vKrW*mh+3E-d)RbvP}s}REW zj7F&=y>v7DC~9r?iu$+6DTmb{-nK zLo1T}qb*K02<=h_iW=LbD^*nsLK7kkpC4wVnJa2)umj|~>X{^~QxetJ#49>JtKC?( z3+OV2@~bw3Fy{_{cQBYi4jp?K^MLZb{*S;b+nP!?l&V6U-?ZG<4PAs~YX=`g*Da%G zZ+SwBAiD)AgI2Z?&Fe-#h#d!z#FL3c8h~Onn=71q5!}A?kUYmiHq`T9QRm%Orm-Yh zbFO77c2YoS$!#>ML>M3~$FHqIE(1YXAF3e~e5)n6%sC7&(X(IrRv@hxU^sex)LZ1z z@krT~m*8G5b*0{O*ly!Sdl0LV-Tm#oe}eN3VfOn7<0Dx~WIsL96C)>^r;1q~`h9bJV~pg)%M+cFPI-!xuW$Xta;ngfu< zb|kR(UA4$%cvc~#%@}lVC+Oo!QS zp0}4Yae|R{q(idHiD^5uKkTll`vcC>O1&uagWs)G4v2OM zzRJ1c$nLHfmZYY6`ebuj%Y>Z#rFiJ5CwKV;>C<8^Cb8T5yw%&-Zm4_Pc~bA>{ zxzRV`SpP_96(R>2yam}w)rjt%F!x6vc_z4BI~2U$b+G+D`uy3v=#J;Mn$Uu`Ns~&} zg2V&YjawM{ys|pBSFuhCLRdD7%?u8NW#8Ak9qnpE(75Z8V>)xT zh72S&`)6>~|C7j}pNUn?I{x)4a3$>&Lp?s22W*vhM!s%&KOM(N06O~aVgr0UkL2sp z3(Lj>_4p{S969fsaC9V@Xc9p@L9he{uw2hiH~m_!)gS14nAv(WAJc^Fqjv%|Sb=De z)sW@_}|_X3C|DSZp_6*;1s>DwR{; zv+{l-Is+F`n1_7rN+TKF5(7;a+3lTb4QgCKU%dTa2FCx^-(KQ@9|S6RZup89u+(Mb z5od7NPEbCy&oOHi^1>E5^bW=-``TQ#N9;Y&%J(LL@%>x%ryq~s$g|Oa3~V=?`0xWO zsSP<4o{~5nXFQcX3{p^wS?_&&@1Nm3JqhU4Jd>n+49U~{R>mr1osF#5yeI>80w7LJ z;rrhx#T3I}UAnMe{^s9nvgdzy1O5-&wk9@gj>&CFw|>O*A{g|Kb>xwU)s@g8YczkP zfEvslLhOVOz<$g?_CxJB=F02^y7lVpt7XdDrAuWCke_DIj}oHJZ}ML{z%|1>U9{- zQ3H-SSnGv?0mM|i81E_s-ilcv1p^zQ9@Hn{Errjnq^?3bf#(n3;bO55TuftnYVbF; ztUUJgqj*A5EU<9DX^7>UN8z5=%VzmpUI?9V4*&KQ?Z5pI22s+?@0q;*-Yd7Dd`k8W z88F~1a$QA>WiI%;x9vCG{j~j=;+Zop+>`pv`gnD;#sww0n zMP;Ip)67!Ju}RJy*oKU364@L^&ZEK1JKsHat6}%r-M(-4+O_MydEV=p_kFMTd7k_5 zyYKsV2Tu|j0QoZ;gLuWr2ziwcDWJO$-NP7w0$}^=N!=Ot>8-0Qj9o9h`+QO*B(KX` zi&x~iew^XI(E9w@g7oYl=@;Kr(VpwE_Jm|8=B(Je``kX=Dc+RC`M2jegv3#nj$&sR zZ+rij-dF08S5PsdR=cN;f4Z_^Zn)>g+tSK*3k}XOSYkW*EyeZSR$JLO2B2NUA|UF2N7W;6(?Gs#ohwv#jMBc*~HX0Hhh#*Usj- zY>x_084HzYUku~JZlF7y>vIhX<#>=` zmeIxiyvpVoBhCy z?NL{zB)Ga^S+$prt=uVRUDZW4X9RYxj10~oTyG^bX{sG9joN;H`9n_hQd!gM^n;4o z{;zZ;SG1L;mmX#&(6(L~55CEVyrbHq;|fUGaj_u|nLmTgOc^!QV@$7UQ4xAEyG84O zY#Rzg2TuXupuvyH+SrLMLLQo!`b>-&PwxC(fM+Ot)Uhj#=EW7c&P!_*V$&KjWEw&+eD# z9%SGFn6tEbxr`ue9{}yQ$ip~W{HYlop6rdtd%aF^431u{XAW^&5>6*wtWtD{=~`phK1KV6X{(3=X3&PTeM`PR>YB6i3`hc zYH{;&a0k>$Ue=vKuwM2b-fBc-eMQ%L;`jS~|4ZM3IQyl#<)P(D-v$&atGN5S_4SvU z72<}6i4HFI^ScIiOJBsQT-dO4_+@kxw!k|zq~gt*)DG8&6-D9g$9FI=+tfzC|{R&4)8`3zvn$eP<$RB9nZN_%{JCggJ zSE0ks=#mhxH*>7qEOQ%eE!|&lD%JA8oh55~@#|~Hm|jDnrMTqMUwZ)4^|V!1_1?=B z1C*qM_-9rti+vy8EL(Gay?WLh|7LrG%tP71|0qm9kJYq*7xV&HJ}e>f5tF}k%!L~% z-NA=kL6EsciV7yFdL9IaFHre_ygX(5)4Cc+@(O(Y(pXM^2c5ru;MCX!lMp zT1nlj?ec2>d7N!zMAMvubMnZ0unm0L{4TyH!k=Cf(R7U?qgTn@L$ z?senxOV9I@g3Z5Fmz9`eci?DQWm0K2ACsD+O55Mr>6H;4aY@K|cEBx8;|!Pj)D?d@uSBz zM~;i9RhU7z)peA*6SZ+&&WS34_BP%IbGuwvjcZ@Wy=S)>$=9K4KEXF@_yEOS16bFq z+cID6NaO`{A#5nkXkCBnYOc&u2$p~MHVcX<%AQRL8tDVgh5r&$|F1D&Hc3!Nsw z#75W9bbU9S1>AQOJ;sMSR{yVK_Q(ETEuuOPm+VNabW^^Sk{e*Y^5mC#V!5c9Q%YPo z#V4vdQHH|Qp>o%8#0FnG2{6aB1sDkePhlvCH;@TR@uC28idILV+Dl-Qe#boArFHG@ zAu8xx{yNkLDjpi3RYeh?zSED#3NW}dq$>dwqtmUpQ2V(20o>REPduD2CO(sJ=WJ1;{+*DIhGN7)B|rsVd`Y+?*9I#M}2-CTgVDwCl`9wVTG zHBOCmqIe$}I40Z8Kuu~u{z9g_8;iU%=pI-XDm#cHnWmMt$9yF3Ol@^FZ366Re8teD zUU`cgrF_l2N>O7fk_Cd;Y6I`J?nAjX|*jNHI?V*@N@89CN{**eLU?xfKe^mWfIr zHPHwMYlbL@Nuw6|59kZ|(BGw|zf)d)>RVBxHw;ca5bi0FE|T_%s6R*j^tgD?T9e<- z#?36m_iDi5y$iFoc037hqz*1fLtY?5(rJz_&li=$#A}m&Zw}7Hyeq%;t;8bp!1quJ z$rfOC&wy`kXJzcfrK1EnH}oDHqSlgBN>6-`R{8-DejD!n^g+e09$x@qH$5f;axX)? z+3d4iNJ>;@Zyd?J)MeA@d(Pj@pJU=HOiIZx8c)kGO4P6th*9m--UU#SP3wZAB6IIf zS#vQ@HA$F2b5~RyNQp|Cyo!7+Q}F(b&+}c(`BSX=we3j~P5Xq$BcwZSj2ZE78q<_Y z46xN4TheD8X?e9Zn1H-ulII8$_v_Yp)jqWqYpLkmdIa^w_pSm0Y;1QR8~or#u#+GK zrYWUHHI*Mha4UzH?QE6+(^3caMRx!y3h)TXuKKtPZO?zS5mXF4h*Yh`j*J%$(YOu{pAvyM2e^{ZF zDTADYPz}TnW2#+iDhrm<#dRY{Z8i!f<4h1}V z#<467kpeX5B@L-HLih`xgppR=S>mC7f})zV@Fx`JqkiWx&YdfEjO6Lq!d(zsu5k)f zgVneS5RI|1`tSGQL_CJ=#HWicFao5&lKf$GOMp>E7BPyI;DGc_2k4##cI*|(^S}=F zJ>N~Y!Bn$&E^4Yx{2qVFwEv_v`x(;Hrq2j6ki3%@)7i4IVQufK41C>U*{Becy9efM zUI!wZQNZX2kgz<8!OiJ=KL6nJ)>cb9yOyPDtqojD6q>+X!K0fVfgKE3*Qm+lZB%#p zI+coT#K(;86rL=Uf+M^rK-ErPMWqlwq*V;kE47dw_hVa*edqHPRo8;N9*kysw=@4E zpvm9wj4lry^8}8`8^hOeV?~d-DYK*BR!<#o9#o!rT3_jzjr8JBzn^%{1by27vIq8?Hoji&5M!6ZvnGc5ziII1Zp5;X+Rwmhobt->+$9CMZ-EC>&pF literal 0 HcmV?d00001 diff --git a/data/small_objects/images/val/sample_5.jpg b/data/small_objects/images/val/sample_5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a11ab03c2b9c44182fa71412562c8fedd7458455 GIT binary patch literal 210200 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⁢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 N418Z>fcWEw{{uwV8 float: def _update_progress(self, stage: str): progress = self._get_progress(stage) - self.update_progress_callback(int(progress)) + self.progress_and_hpo_callback(int(progress)) diff --git a/external/anomaly/adapters/anomalib/callbacks/score_report.py b/external/anomaly/adapters/anomalib/callbacks/score_report.py deleted file mode 100644 index a5151bb12ec..00000000000 --- a/external/anomaly/adapters/anomalib/callbacks/score_report.py +++ /dev/null @@ -1,44 +0,0 @@ -"""Score reporting callback.""" - -# Copyright (C) 2020 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions -# and limitations under the License. - -from typing import Optional - -from ote_sdk.entities.train_parameters import TrainParameters -from pytorch_lightning import Callback - - -class ScoreReportingCallback(Callback): - """Callback for reporting score.""" - - def __init__(self, parameters: Optional[TrainParameters] = None) -> None: - if parameters is not None: - self.score_reporting_callback = parameters.update_progress - else: - self.score_reporting_callback = None - - def on_validation_epoch_end(self, trainer, pl_module): # pylint: disable=unused-argument - """If score exists in trainer.logged_metrics, report the score.""" - if self.score_reporting_callback is not None: - score = None - metric = getattr(self.score_reporting_callback, "metric", None) - print(f"[DEBUG-HPO] logged_metrics = {trainer.logged_metrics}") - if metric in trainer.logged_metrics: - score = float(trainer.logged_metrics[metric]) - if score < 1.0: - score = score + int(trainer.global_step) - else: - score = -(score + int(trainer.global_step)) - self.score_reporting_callback(progress=0, score=score) diff --git a/external/anomaly/configs/base/__init__.py b/external/anomaly/configs/base/__init__.py index 6d3bacfd0ee..3ff6c75946b 100644 --- a/external/anomaly/configs/base/__init__.py +++ b/external/anomaly/configs/base/__init__.py @@ -14,6 +14,8 @@ # See the License for the specific language governing permissions # and limitations under the License. -from .configuration import BaseAnomalyConfig +from .draem import DraemAnomalyBaseConfig +from .padim import PadimAnomalyBaseConfig +from .stfpm import STFPMAnomalyBaseConfig -__all__ = ["BaseAnomalyConfig"] +__all__ = ["PadimAnomalyBaseConfig", "STFPMAnomalyBaseConfig", "DraemAnomalyBaseConfig"] diff --git a/external/anomaly/configs/draem/__init__.py b/external/anomaly/configs/base/draem/__init__.py similarity index 100% rename from external/anomaly/configs/draem/__init__.py rename to external/anomaly/configs/base/draem/__init__.py diff --git a/external/anomaly/configs/draem/configuration.py b/external/anomaly/configs/base/draem/configuration.py similarity index 100% rename from external/anomaly/configs/draem/configuration.py rename to external/anomaly/configs/base/draem/configuration.py diff --git a/external/anomaly/configs/padim/__init__.py b/external/anomaly/configs/base/padim/__init__.py similarity index 100% rename from external/anomaly/configs/padim/__init__.py rename to external/anomaly/configs/base/padim/__init__.py diff --git a/external/anomaly/configs/padim/configuration.py b/external/anomaly/configs/base/padim/configuration.py similarity index 88% rename from external/anomaly/configs/padim/configuration.py rename to external/anomaly/configs/base/padim/configuration.py index 724e794a7af..677fd15e6a7 100644 --- a/external/anomaly/configs/padim/configuration.py +++ b/external/anomaly/configs/base/padim/configuration.py @@ -39,10 +39,14 @@ class LearningParameters(BaseAnomalyConfig.LearningParameters): header = string_attribute("Learning Parameters") description = header + # Editable is set to false as WideResNet50 is very large for + # onnx's protobuf (2gb) limit. This ends up crashing the export. backbone = selectable( default_value=ModelBackbone.RESNET18, header="Model Backbone", description="Pre-trained backbone used for feature extraction", + editable=False, + visible_in_ui=False, ) learning_parameters = add_parameter_group(LearningParameters) diff --git a/external/anomaly/configs/stfpm/__init__.py b/external/anomaly/configs/base/stfpm/__init__.py similarity index 100% rename from external/anomaly/configs/stfpm/__init__.py rename to external/anomaly/configs/base/stfpm/__init__.py diff --git a/external/anomaly/configs/stfpm/configuration.py b/external/anomaly/configs/base/stfpm/configuration.py similarity index 100% rename from external/anomaly/configs/stfpm/configuration.py rename to external/anomaly/configs/base/stfpm/configuration.py diff --git a/external/anomaly/configs/classification/__init__.py b/external/anomaly/configs/classification/__init__.py new file mode 100644 index 00000000000..b24bd9d1806 --- /dev/null +++ b/external/anomaly/configs/classification/__init__.py @@ -0,0 +1,15 @@ +"""Configuration for classification tasks.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. diff --git a/external/anomaly/configs/classification/draem/__init__.py b/external/anomaly/configs/classification/draem/__init__.py new file mode 100644 index 00000000000..c76cd3508ff --- /dev/null +++ b/external/anomaly/configs/classification/draem/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for DRAEM Anomaly Classification Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import DraemAnomalyClassificationConfig + +__all__ = ["DraemAnomalyClassificationConfig"] diff --git a/external/anomaly/configs/draem/compression_config.json b/external/anomaly/configs/classification/draem/compression_config.json similarity index 100% rename from external/anomaly/configs/draem/compression_config.json rename to external/anomaly/configs/classification/draem/compression_config.json diff --git a/external/anomaly/configs/classification/draem/configuration.py b/external/anomaly/configs/classification/draem/configuration.py new file mode 100644 index 00000000000..0a3d8d8f150 --- /dev/null +++ b/external/anomaly/configs/classification/draem/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for DRAEM anomaly classification task.""" + +# Copyright (C) 2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import DraemAnomalyBaseConfig + + +@attrs +class DraemAnomalyClassificationConfig(DraemAnomalyBaseConfig): + """Configurable parameters for DRAEM anomaly classification task.""" diff --git a/external/anomaly/configs/draem/configuration.yaml b/external/anomaly/configs/classification/draem/configuration.yaml similarity index 99% rename from external/anomaly/configs/draem/configuration.yaml rename to external/anomaly/configs/classification/draem/configuration.yaml index b951d93c574..7982df58cb8 100644 --- a/external/anomaly/configs/draem/configuration.yaml +++ b/external/anomaly/configs/classification/draem/configuration.yaml @@ -182,7 +182,7 @@ nncf_optimization: auto_hpo_value: null default_value: false description: Whether filter pruning is supported - editable: true + editable: false header: Whether filter pruning is supported type: BOOLEAN ui_rules: @@ -190,7 +190,8 @@ nncf_optimization: operator: AND rules: [] type: UI_RULES - visible_in_ui: true + value: false + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/external/anomaly/templates/classification/draem/template_experimental.yaml b/external/anomaly/configs/classification/draem/template_experimental.yaml similarity index 91% rename from external/anomaly/templates/classification/draem/template_experimental.yaml rename to external/anomaly/configs/classification/draem/template_experimental.yaml index e84027c23f2..dc18d079d59 100644 --- a/external/anomaly/templates/classification/draem/template_experimental.yaml +++ b/external/anomaly/configs/classification/draem/template_experimental.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/draem/configuration.yaml + base_path: ./configuration.yaml # Training resources. max_nodes: 1 diff --git a/external/anomaly/configs/draem/transform_config.yaml b/external/anomaly/configs/classification/draem/transform_config.yaml similarity index 100% rename from external/anomaly/configs/draem/transform_config.yaml rename to external/anomaly/configs/classification/draem/transform_config.yaml diff --git a/external/anomaly/configs/classification/padim/__init__.py b/external/anomaly/configs/classification/padim/__init__.py new file mode 100644 index 00000000000..c0fb0ddce1d --- /dev/null +++ b/external/anomaly/configs/classification/padim/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for PADIM Anomaly Classification Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import PadimAnomalyClassificationConfig + +__all__ = ["PadimAnomalyClassificationConfig"] diff --git a/external/anomaly/configs/padim/compression_config.json b/external/anomaly/configs/classification/padim/compression_config.json similarity index 100% rename from external/anomaly/configs/padim/compression_config.json rename to external/anomaly/configs/classification/padim/compression_config.json diff --git a/external/anomaly/configs/classification/padim/configuration.py b/external/anomaly/configs/classification/padim/configuration.py new file mode 100644 index 00000000000..cd1e8735b90 --- /dev/null +++ b/external/anomaly/configs/classification/padim/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for Padim anomaly classification task.""" + +# Copyright (C) 2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import PadimAnomalyBaseConfig + + +@attrs +class PadimAnomalyClassificationConfig(PadimAnomalyBaseConfig): + """Configurable parameters for PADIM anomaly classification task.""" diff --git a/external/anomaly/configs/padim/configuration.yaml b/external/anomaly/configs/classification/padim/configuration.yaml similarity index 98% rename from external/anomaly/configs/padim/configuration.yaml rename to external/anomaly/configs/classification/padim/configuration.yaml index ff0cc759b8e..49ee9b65f9b 100644 --- a/external/anomaly/configs/padim/configuration.yaml +++ b/external/anomaly/configs/classification/padim/configuration.yaml @@ -35,7 +35,7 @@ learning_parameters: auto_hpo_value: null default_value: resnet18 description: Pre-trained backbone used for feature extraction - editable: true + editable: false enum_name: ModelBackbone header: Model Backbone options: @@ -48,7 +48,7 @@ learning_parameters: rules: [] type: UI_RULES value: resnet18 - visible_in_ui: true + visible_in_ui: false warning: null description: Learning Parameters header: Learning Parameters @@ -121,7 +121,7 @@ nncf_optimization: auto_hpo_value: null default_value: false description: Whether filter pruning is supported - editable: true + editable: false header: Whether filter pruning is supported type: BOOLEAN ui_rules: @@ -130,7 +130,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/external/anomaly/configs/padim/pot_optimization_config.json b/external/anomaly/configs/classification/padim/pot_optimization_config.json similarity index 76% rename from external/anomaly/configs/padim/pot_optimization_config.json rename to external/anomaly/configs/classification/padim/pot_optimization_config.json index 4e5b25aef51..cef8d3660a4 100644 --- a/external/anomaly/configs/padim/pot_optimization_config.json +++ b/external/anomaly/configs/classification/padim/pot_optimization_config.json @@ -3,13 +3,13 @@ { "name": "DefaultQuantization", "params": { - "preset": "performance", + "preset": "mixed", "target_device": "ANY", "range_estimator": { "preset": "quantile" }, "ignored": { - "scope": ["Sqrt_105/pow_", "Mul_97"] + "scope": ["210", "224"] }, "shuffle_data": true } diff --git a/external/anomaly/templates/classification/padim/template.yaml b/external/anomaly/configs/classification/padim/template.yaml similarity index 92% rename from external/anomaly/templates/classification/padim/template.yaml rename to external/anomaly/configs/classification/padim/template.yaml index a25bf57c3e3..b7d45a49ed2 100644 --- a/external/anomaly/templates/classification/padim/template.yaml +++ b/external/anomaly/configs/classification/padim/template.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/padim/configuration.yaml + base_path: ./configuration.yaml # Training resources. max_nodes: 1 diff --git a/external/anomaly/configs/classification/stfpm/__init__.py b/external/anomaly/configs/classification/stfpm/__init__.py new file mode 100644 index 00000000000..adb65f754a6 --- /dev/null +++ b/external/anomaly/configs/classification/stfpm/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for STFPM Anomaly Classification Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import STFPMAnomalyClassificationConfig + +__all__ = ["STFPMAnomalyClassificationConfig"] diff --git a/external/anomaly/configs/stfpm/compression_config.json b/external/anomaly/configs/classification/stfpm/compression_config.json similarity index 100% rename from external/anomaly/configs/stfpm/compression_config.json rename to external/anomaly/configs/classification/stfpm/compression_config.json diff --git a/external/anomaly/configs/classification/stfpm/configuration.py b/external/anomaly/configs/classification/stfpm/configuration.py new file mode 100644 index 00000000000..b953742b6c1 --- /dev/null +++ b/external/anomaly/configs/classification/stfpm/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for STFPM anomaly classification task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import STFPMAnomalyBaseConfig + + +@attrs +class STFPMAnomalyClassificationConfig(STFPMAnomalyBaseConfig): + """Configurable parameters for STFPM anomaly classification task.""" diff --git a/external/anomaly/configs/stfpm/configuration.yaml b/external/anomaly/configs/classification/stfpm/configuration.yaml similarity index 99% rename from external/anomaly/configs/stfpm/configuration.yaml rename to external/anomaly/configs/classification/stfpm/configuration.yaml index 904ef24e36e..59963b8e409 100644 --- a/external/anomaly/configs/stfpm/configuration.yaml +++ b/external/anomaly/configs/classification/stfpm/configuration.yaml @@ -250,7 +250,7 @@ nncf_optimization: auto_hpo_value: null default_value: false description: Whether filter pruning is supported - editable: true + editable: false header: Whether filter pruning is supported type: BOOLEAN ui_rules: @@ -259,7 +259,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/external/anomaly/configs/stfpm/hpo_config.yaml b/external/anomaly/configs/classification/stfpm/hpo_config.yaml similarity index 100% rename from external/anomaly/configs/stfpm/hpo_config.yaml rename to external/anomaly/configs/classification/stfpm/hpo_config.yaml diff --git a/external/anomaly/templates/classification/stfpm/template.yaml b/external/anomaly/configs/classification/stfpm/template.yaml similarity index 93% rename from external/anomaly/templates/classification/stfpm/template.yaml rename to external/anomaly/configs/classification/stfpm/template.yaml index 1c446639856..5886379fa7e 100644 --- a/external/anomaly/templates/classification/stfpm/template.yaml +++ b/external/anomaly/configs/classification/stfpm/template.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/stfpm/configuration.yaml + base_path: ./configuration.yaml parameter_overrides: learning_parameters: train_batch_size: diff --git a/external/anomaly/configs/detection/__init__.py b/external/anomaly/configs/detection/__init__.py new file mode 100644 index 00000000000..7740bb752e6 --- /dev/null +++ b/external/anomaly/configs/detection/__init__.py @@ -0,0 +1,15 @@ +"""Configuration for detection tasks.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. diff --git a/external/anomaly/configs/detection/draem/__init__.py b/external/anomaly/configs/detection/draem/__init__.py new file mode 100644 index 00000000000..75b203b8de6 --- /dev/null +++ b/external/anomaly/configs/detection/draem/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for DRAEM Anomaly Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import DraemAnomalyDetectionConfig + +__all__ = ["DraemAnomalyDetectionConfig"] diff --git a/external/anomaly/configs/detection/draem/compression_config.json b/external/anomaly/configs/detection/draem/compression_config.json new file mode 100644 index 00000000000..0b7922f5a23 --- /dev/null +++ b/external/anomaly/configs/detection/draem/compression_config.json @@ -0,0 +1,36 @@ +{ + "base": { + "find_unused_parameters": true, + "target_metric_name": "image_F1Score", + "nncf_config": { + "input_info": { + "sample_size": [1, 3, 256, 256] + }, + "compression": [], + "log_dir": "/tmp" + } + }, + "nncf_quantization": { + "model": { + "lr": 0.004 + }, + "nncf_config": { + "compression": [ + { + "algorithm": "quantization", + "preset": "mixed", + "initializer": { + "range": { + "num_init_samples": 250 + }, + "batchnorm_adaptation": { + "num_bn_adaptation_samples": 250 + } + }, + "ignored_scopes": [] + } + ] + } + }, + "order_of_parts": ["nncf_quantization"] +} diff --git a/external/anomaly/configs/detection/draem/configuration.py b/external/anomaly/configs/detection/draem/configuration.py new file mode 100644 index 00000000000..3e42bec0f7d --- /dev/null +++ b/external/anomaly/configs/detection/draem/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for DRAEM anomaly Detection task.""" + +# Copyright (C) 2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import DraemAnomalyBaseConfig + + +@attrs +class DraemAnomalyDetectionConfig(DraemAnomalyBaseConfig): + """Configurable parameters for DRAEM anomaly Detection task.""" diff --git a/external/anomaly/configs/detection/draem/configuration.yaml b/external/anomaly/configs/detection/draem/configuration.yaml new file mode 100644 index 00000000000..7982df58cb8 --- /dev/null +++ b/external/anomaly/configs/detection/draem/configuration.yaml @@ -0,0 +1,242 @@ +dataset: + description: Dataset Parameters + header: Dataset Parameters + num_workers: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + Increasing this value might improve training speed however it might + cause out of memory errors. If the number of workers is set to zero, data loading + will happen in the main training thread. + editable: true + header: Number of workers + max_value: 36 + min_value: 0 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +description: Configuration for Draem +header: Configuration for Draem +learning_parameters: + description: Learning Parameters + early_stopping: + description: Early Stopping Parameters + header: Early Stopping Parameters + metric: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: image_AUROC + description: The metric used to determine if the model should stop training + editable: true + enum_name: EarlyStoppingMetrics + header: Early Stopping Metric + options: + IMAGE_F1: image_F1Score + IMAGE_ROC_AUC: image_AUROC + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + patience: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 20 + description: + Number of epochs to wait for an improvement in the monitored metric. + If the metric has not improved for this many epochs, the training will stop + and the best model will be returned. + editable: true + header: Early Stopping Patience + max_value: 100 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: + Setting this value too low might lead to underfitting. Setting the + value too high will increase the training time and might lead to overfitting. + type: PARAMETER_GROUP + visible_in_ui: true + header: Learning Parameters + lr: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.0001 + description: Learning rate used for optimizing the network. + editable: true + header: Learning Rate + max_value: 1 + min_value: 0.0001 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + max_epochs: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 700 + description: Maximum number of epochs to train the model for. + editable: true + header: Max Epochs + max_value: 700 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: + Training for very few epochs might lead to poor performance. If Early + Stopping is enabled then increasing the value of max epochs might not lead to + desired result. + train_batch_size: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + The number of training samples seen in each iteration of training. + Increasing this value improves training time and may make the training more + stable. A larger batch size has higher memory requirements. + editable: true + header: Batch size + max_value: 512 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: + Increasing this value may cause the system to use more memory than available, + potentially causing out of memory errors, please update with caution. + type: PARAMETER_GROUP + visible_in_ui: true +nncf_optimization: + description: Optimization by NNCF + enable_pruning: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Enable filter pruning algorithm + editable: true + header: Enable filter pruning algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + enable_quantization: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: true + description: Enable quantization algorithm + editable: true + header: Enable quantization algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + header: Optimization by NNCF + pruning_supported: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Whether filter pruning is supported + editable: false + header: Whether filter pruning is supported + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: false + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +pot_parameters: + description: POT Parameters + header: POT Parameters + preset: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: Performance + description: Quantization preset that defines quantization scheme + editable: true + enum_name: POTQuantizationPreset + header: Preset + options: + MIXED: Mixed + PERFORMANCE: Performance + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + stat_subset_size: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 300 + description: Number of data samples used for post-training optimization + editable: true + header: Number of data samples + max_value: 9223372036854775807 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: false +type: CONFIGURABLE_PARAMETERS +visible_in_ui: true diff --git a/external/anomaly/templates/detection/draem/template_experimental.yaml b/external/anomaly/configs/detection/draem/template_experimental.yaml similarity index 91% rename from external/anomaly/templates/detection/draem/template_experimental.yaml rename to external/anomaly/configs/detection/draem/template_experimental.yaml index a7e062ca9cd..805b0bcca47 100644 --- a/external/anomaly/templates/detection/draem/template_experimental.yaml +++ b/external/anomaly/configs/detection/draem/template_experimental.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/draem/configuration.yaml + base_path: ./configuration.yaml # Training resources. max_nodes: 1 diff --git a/external/anomaly/configs/detection/draem/transform_config.yaml b/external/anomaly/configs/detection/draem/transform_config.yaml new file mode 100644 index 00000000000..5a379ef7628 --- /dev/null +++ b/external/anomaly/configs/detection/draem/transform_config.yaml @@ -0,0 +1,26 @@ +{ + "__version__": "1.1.0", + "transform": + { + "__class_fullname__": "Compose", + "p": 1.0, + "transforms": + [ + { + "__class_fullname__": "ToFloat", + "always_apply": false, + "p": 1.0, + "max_value": null, + }, + { + "__class_fullname__": "ToTensorV2", + "always_apply": true, + "p": 1.0, + "transpose_mask": false, + }, + ], + "bbox_params": null, + "keypoint_params": null, + "additional_targets": {}, + }, +} diff --git a/external/anomaly/configs/detection/padim/__init__.py b/external/anomaly/configs/detection/padim/__init__.py new file mode 100644 index 00000000000..33b34eab8bf --- /dev/null +++ b/external/anomaly/configs/detection/padim/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for PADIM Anomaly Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import PadimAnomalyDetectionConfig + +__all__ = ["PadimAnomalyDetectionConfig"] diff --git a/external/anomaly/configs/detection/padim/compression_config.json b/external/anomaly/configs/detection/padim/compression_config.json new file mode 100644 index 00000000000..789f8d131f6 --- /dev/null +++ b/external/anomaly/configs/detection/padim/compression_config.json @@ -0,0 +1,40 @@ +{ + "base": { + "find_unused_parameters": true, + "target_metric_name": "image_F1Score", + "nncf_config": { + "input_info": { + "sample_size": [1, 3, 256, 256] + }, + "compression": [], + "log_dir": "/tmp" + } + }, + "nncf_quantization": { + "nncf_config": { + "compression": [ + { + "algorithm": "quantization", + "preset": "mixed", + "initializer": { + "range": { + "num_init_samples": 250 + }, + "batchnorm_adaptation": { + "num_bn_adaptation_samples": 250 + } + }, + "ignored_scopes": [ + "PadimModel/sqrt_0", + "PadimModel/interpolate_2", + "PadimModel/__truediv___0", + "PadimModel/__truediv___1", + "PadimModel/matmul_1", + "PadimModel/conv2d_0" + ] + } + ] + } + }, + "order_of_parts": ["nncf_quantization"] +} diff --git a/external/anomaly/configs/detection/padim/configuration.py b/external/anomaly/configs/detection/padim/configuration.py new file mode 100644 index 00000000000..366334dbb2e --- /dev/null +++ b/external/anomaly/configs/detection/padim/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for Padim anomaly Detection task.""" + +# Copyright (C) 2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import PadimAnomalyBaseConfig + + +@attrs +class PadimAnomalyDetectionConfig(PadimAnomalyBaseConfig): + """Configurable parameters for PADIM anomaly Detection task.""" diff --git a/external/anomaly/configs/detection/padim/configuration.yaml b/external/anomaly/configs/detection/padim/configuration.yaml new file mode 100644 index 00000000000..49ee9b65f9b --- /dev/null +++ b/external/anomaly/configs/detection/padim/configuration.yaml @@ -0,0 +1,183 @@ +dataset: + description: Dataset Parameters + header: Dataset Parameters + num_workers: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + Increasing this value might improve training speed however it might + cause out of memory errors. If the number of workers is set to zero, data loading + will happen in the main training thread. + editable: true + header: Number of workers + max_value: 36 + min_value: 0 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 8 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +description: Configuration for Padim +header: Configuration for Padim +id: "" +learning_parameters: + backbone: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: resnet18 + description: Pre-trained backbone used for feature extraction + editable: false + enum_name: ModelBackbone + header: Model Backbone + options: + RESNET18: resnet18 + WIDE_RESNET_50: wide_resnet50_2 + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: resnet18 + visible_in_ui: false + warning: null + description: Learning Parameters + header: Learning Parameters + train_batch_size: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 32 + description: + The number of training samples seen in each iteration of training. + Increasing this value improves training time and may make the training more + stable. A larger batch size has higher memory requirements. + editable: true + header: Batch size + max_value: 512 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 32 + visible_in_ui: true + warning: + Increasing this value may cause the system to use more memory than available, + potentially causing out of memory errors, please update with caution. + type: PARAMETER_GROUP + visible_in_ui: true +nncf_optimization: + description: Optimization by NNCF + enable_pruning: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Enable filter pruning algorithm + editable: true + header: Enable filter pruning algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: true + warning: null + enable_quantization: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: true + description: Enable quantization algorithm + editable: true + header: Enable quantization algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + header: Optimization by NNCF + pruning_supported: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Whether filter pruning is supported + editable: false + header: Whether filter pruning is supported + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: false + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +pot_parameters: + description: POT Parameters + header: POT Parameters + preset: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: Performance + description: Quantization preset that defines quantization scheme + editable: true + enum_name: POTQuantizationPreset + header: Preset + options: + MIXED: Mixed + PERFORMANCE: Performance + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: Performance + visible_in_ui: true + warning: null + stat_subset_size: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 300 + description: Number of data samples used for post-training optimization + editable: true + header: Number of data samples + max_value: 9223372036854775807 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 300 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: false +type: CONFIGURABLE_PARAMETERS +visible_in_ui: true diff --git a/external/anomaly/configs/detection/padim/pot_optimization_config.json b/external/anomaly/configs/detection/padim/pot_optimization_config.json new file mode 100644 index 00000000000..cef8d3660a4 --- /dev/null +++ b/external/anomaly/configs/detection/padim/pot_optimization_config.json @@ -0,0 +1,18 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": ["210", "224"] + }, + "shuffle_data": true + } + } + ] +} diff --git a/external/anomaly/templates/detection/padim/template.yaml b/external/anomaly/configs/detection/padim/template.yaml similarity index 92% rename from external/anomaly/templates/detection/padim/template.yaml rename to external/anomaly/configs/detection/padim/template.yaml index ddce1a6999e..d708821ee01 100644 --- a/external/anomaly/templates/detection/padim/template.yaml +++ b/external/anomaly/configs/detection/padim/template.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/padim/configuration.yaml + base_path: ./configuration.yaml # Training resources. max_nodes: 1 diff --git a/external/anomaly/configs/detection/stfpm/__init__.py b/external/anomaly/configs/detection/stfpm/__init__.py new file mode 100644 index 00000000000..7eee52f0ed0 --- /dev/null +++ b/external/anomaly/configs/detection/stfpm/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for STFPM Anomaly Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import STFPMAnomalyDetectionConfig + +__all__ = ["STFPMAnomalyDetectionConfig"] diff --git a/external/anomaly/configs/detection/stfpm/compression_config.json b/external/anomaly/configs/detection/stfpm/compression_config.json new file mode 100644 index 00000000000..caee63d064b --- /dev/null +++ b/external/anomaly/configs/detection/stfpm/compression_config.json @@ -0,0 +1,36 @@ +{ + "base": { + "find_unused_parameters": true, + "target_metric_name": "image_F1Score", + "nncf_config": { + "input_info": { + "sample_size": [1, 3, 256, 256] + }, + "compression": [], + "log_dir": "/tmp" + } + }, + "nncf_quantization": { + "model": { + "lr": 0.004 + }, + "nncf_config": { + "compression": [ + { + "algorithm": "quantization", + "preset": "mixed", + "initializer": { + "range": { + "num_init_samples": 250 + }, + "batchnorm_adaptation": { + "num_bn_adaptation_samples": 250 + } + }, + "ignored_scopes": ["{re}.*__pow__.*"] + } + ] + } + }, + "order_of_parts": ["nncf_quantization"] +} diff --git a/external/anomaly/configs/detection/stfpm/configuration.py b/external/anomaly/configs/detection/stfpm/configuration.py new file mode 100644 index 00000000000..5ee4d510252 --- /dev/null +++ b/external/anomaly/configs/detection/stfpm/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for STFPM anomaly Detection task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import STFPMAnomalyBaseConfig + + +@attrs +class STFPMAnomalyDetectionConfig(STFPMAnomalyBaseConfig): + """Configurable parameters for STFPM anomaly Detection task.""" diff --git a/external/anomaly/configs/detection/stfpm/configuration.yaml b/external/anomaly/configs/detection/stfpm/configuration.yaml new file mode 100644 index 00000000000..59963b8e409 --- /dev/null +++ b/external/anomaly/configs/detection/stfpm/configuration.yaml @@ -0,0 +1,312 @@ +dataset: + description: Dataset Parameters + header: Dataset Parameters + num_workers: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + Increasing this value might improve training speed however it might + cause out of memory errors. If the number of workers is set to zero, data loading + will happen in the main training thread. + editable: true + header: Number of workers + max_value: 36 + min_value: 0 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 8 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +description: Configuration for STFPM +header: Configuration for STFPM +id: "" +learning_parameters: + backbone: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: resnet18 + description: Pre-trained backbone used for feature extraction + editable: true + enum_name: ModelBackbone + header: Model Backbone + options: + RESNET18: resnet18 + WIDE_RESNET_50: wide_resnet50_2 + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: resnet18 + visible_in_ui: true + warning: null + description: Learning Parameters + early_stopping: + description: Early Stopping Parameters + header: Early Stopping Parameters + metric: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: image_F1Score + description: The metric used to determine if the model should stop training + editable: true + enum_name: EarlyStoppingMetrics + header: Early Stopping Metric + options: + IMAGE_F1: image_F1Score + IMAGE_ROC_AUC: image_AUROC + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: image_F1Score + visible_in_ui: true + warning: null + patience: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 10 + description: + Number of epochs to wait for an improvement in the monitored metric. + If the metric has not improved for this many epochs, the training will stop + and the best model will be returned. + editable: true + header: Early Stopping Patience + max_value: 100 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 10 + visible_in_ui: true + warning: + Setting this value too low might lead to underfitting. Setting the + value too high will increase the training time and might lead to overfitting. + type: PARAMETER_GROUP + visible_in_ui: true + header: Learning Parameters + lr: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.4 + description: Learning rate used for optimizing the Student network. + editable: true + header: Learning Rate + max_value: 1 + min_value: 0.001 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.4 + visible_in_ui: true + warning: null + max_epochs: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 100 + description: Maximum number of epochs to train the model for. + editable: true + header: Max Epochs + max_value: 500 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 100 + visible_in_ui: true + warning: + Training for very few epochs might lead to poor performance. If Early + Stopping is enabled then increasing the value of max epochs might not lead to + desired result. + momentum: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.9 + description: Momentum used for SGD optimizer + editable: true + header: Momentum + max_value: 1.0 + min_value: 0.1 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.9 + visible_in_ui: true + warning: null + train_batch_size: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 32 + description: + The number of training samples seen in each iteration of training. + Increasing this value improves training time and may make the training more + stable. A larger batch size has higher memory requirements. + editable: true + header: Batch size + max_value: 512 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 32 + visible_in_ui: true + warning: + Increasing this value may cause the system to use more memory than available, + potentially causing out of memory errors, please update with caution. + type: PARAMETER_GROUP + visible_in_ui: true + weight_decay: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.0001 + description: Decay for SGD optimizer + editable: true + header: Weight Decay + max_value: 1 + min_value: 1.0e-05 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.0001 + visible_in_ui: true + warning: null +nncf_optimization: + description: Optimization by NNCF + enable_pruning: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Enable filter pruning algorithm + editable: true + header: Enable filter pruning algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: true + warning: null + enable_quantization: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: true + description: Enable quantization algorithm + editable: true + header: Enable quantization algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + header: Optimization by NNCF + pruning_supported: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Whether filter pruning is supported + editable: false + header: Whether filter pruning is supported + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: false + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +pot_parameters: + description: POT Parameters + header: POT Parameters + preset: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: Performance + description: Quantization preset that defines quantization scheme + editable: true + enum_name: POTQuantizationPreset + header: Preset + options: + MIXED: Mixed + PERFORMANCE: Performance + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: Performance + visible_in_ui: true + warning: null + stat_subset_size: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 300 + description: Number of data samples used for post-training optimization + editable: true + header: Number of data samples + max_value: 9223372036854775807 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 300 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: false +type: CONFIGURABLE_PARAMETERS +visible_in_ui: true diff --git a/external/anomaly/configs/detection/stfpm/hpo_config.yaml b/external/anomaly/configs/detection/stfpm/hpo_config.yaml new file mode 100644 index 00000000000..ad9db985679 --- /dev/null +++ b/external/anomaly/configs/detection/stfpm/hpo_config.yaml @@ -0,0 +1,18 @@ +# default model.lr: 0.4, dataset.train_batch_size: 32 +metric: image_F1Score +mode: max +search_algorithm: asha +early_stop: None +hp_space: + learning_parameters.lr: + param_type: qloguniform + range: + - 0.04 + - 0.8 + - 0.01 + learning_parameters.train_batch_size: + param_type: qloguniform + range: + - 16 + - 64 + - 2 diff --git a/external/anomaly/templates/detection/stfpm/template.yaml b/external/anomaly/configs/detection/stfpm/template.yaml similarity index 93% rename from external/anomaly/templates/detection/stfpm/template.yaml rename to external/anomaly/configs/detection/stfpm/template.yaml index 96db11eb6ac..28745446865 100644 --- a/external/anomaly/templates/detection/stfpm/template.yaml +++ b/external/anomaly/configs/detection/stfpm/template.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/stfpm/configuration.yaml + base_path: ./configuration.yaml parameter_overrides: learning_parameters: train_batch_size: diff --git a/external/anomaly/configs/segmentation/__init__.py b/external/anomaly/configs/segmentation/__init__.py new file mode 100644 index 00000000000..540ccf6ad4f --- /dev/null +++ b/external/anomaly/configs/segmentation/__init__.py @@ -0,0 +1,15 @@ +"""Configuration for segmentation tasks.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. diff --git a/external/anomaly/configs/segmentation/draem/__init__.py b/external/anomaly/configs/segmentation/draem/__init__.py new file mode 100644 index 00000000000..fba1af72c8c --- /dev/null +++ b/external/anomaly/configs/segmentation/draem/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for DRAEM Anomaly Segmentation Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import DraemAnomalySegmentationConfig + +__all__ = ["DraemAnomalySegmentationConfig"] diff --git a/external/anomaly/configs/segmentation/draem/compression_config.json b/external/anomaly/configs/segmentation/draem/compression_config.json new file mode 100644 index 00000000000..0b7922f5a23 --- /dev/null +++ b/external/anomaly/configs/segmentation/draem/compression_config.json @@ -0,0 +1,36 @@ +{ + "base": { + "find_unused_parameters": true, + "target_metric_name": "image_F1Score", + "nncf_config": { + "input_info": { + "sample_size": [1, 3, 256, 256] + }, + "compression": [], + "log_dir": "/tmp" + } + }, + "nncf_quantization": { + "model": { + "lr": 0.004 + }, + "nncf_config": { + "compression": [ + { + "algorithm": "quantization", + "preset": "mixed", + "initializer": { + "range": { + "num_init_samples": 250 + }, + "batchnorm_adaptation": { + "num_bn_adaptation_samples": 250 + } + }, + "ignored_scopes": [] + } + ] + } + }, + "order_of_parts": ["nncf_quantization"] +} diff --git a/external/anomaly/configs/segmentation/draem/configuration.py b/external/anomaly/configs/segmentation/draem/configuration.py new file mode 100644 index 00000000000..de3f6f786f4 --- /dev/null +++ b/external/anomaly/configs/segmentation/draem/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for DRAEM anomaly Segmentation task.""" + +# Copyright (C) 2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import DraemAnomalyBaseConfig + + +@attrs +class DraemAnomalySegmentationConfig(DraemAnomalyBaseConfig): + """Configurable parameters for DRAEM anomaly Segmentation task.""" diff --git a/external/anomaly/configs/segmentation/draem/configuration.yaml b/external/anomaly/configs/segmentation/draem/configuration.yaml new file mode 100644 index 00000000000..7982df58cb8 --- /dev/null +++ b/external/anomaly/configs/segmentation/draem/configuration.yaml @@ -0,0 +1,242 @@ +dataset: + description: Dataset Parameters + header: Dataset Parameters + num_workers: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + Increasing this value might improve training speed however it might + cause out of memory errors. If the number of workers is set to zero, data loading + will happen in the main training thread. + editable: true + header: Number of workers + max_value: 36 + min_value: 0 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +description: Configuration for Draem +header: Configuration for Draem +learning_parameters: + description: Learning Parameters + early_stopping: + description: Early Stopping Parameters + header: Early Stopping Parameters + metric: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: image_AUROC + description: The metric used to determine if the model should stop training + editable: true + enum_name: EarlyStoppingMetrics + header: Early Stopping Metric + options: + IMAGE_F1: image_F1Score + IMAGE_ROC_AUC: image_AUROC + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + patience: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 20 + description: + Number of epochs to wait for an improvement in the monitored metric. + If the metric has not improved for this many epochs, the training will stop + and the best model will be returned. + editable: true + header: Early Stopping Patience + max_value: 100 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: + Setting this value too low might lead to underfitting. Setting the + value too high will increase the training time and might lead to overfitting. + type: PARAMETER_GROUP + visible_in_ui: true + header: Learning Parameters + lr: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.0001 + description: Learning rate used for optimizing the network. + editable: true + header: Learning Rate + max_value: 1 + min_value: 0.0001 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + max_epochs: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 700 + description: Maximum number of epochs to train the model for. + editable: true + header: Max Epochs + max_value: 700 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: + Training for very few epochs might lead to poor performance. If Early + Stopping is enabled then increasing the value of max epochs might not lead to + desired result. + train_batch_size: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + The number of training samples seen in each iteration of training. + Increasing this value improves training time and may make the training more + stable. A larger batch size has higher memory requirements. + editable: true + header: Batch size + max_value: 512 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: + Increasing this value may cause the system to use more memory than available, + potentially causing out of memory errors, please update with caution. + type: PARAMETER_GROUP + visible_in_ui: true +nncf_optimization: + description: Optimization by NNCF + enable_pruning: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Enable filter pruning algorithm + editable: true + header: Enable filter pruning algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + enable_quantization: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: true + description: Enable quantization algorithm + editable: true + header: Enable quantization algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + header: Optimization by NNCF + pruning_supported: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Whether filter pruning is supported + editable: false + header: Whether filter pruning is supported + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: false + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +pot_parameters: + description: POT Parameters + header: POT Parameters + preset: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: Performance + description: Quantization preset that defines quantization scheme + editable: true + enum_name: POTQuantizationPreset + header: Preset + options: + MIXED: Mixed + PERFORMANCE: Performance + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + stat_subset_size: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 300 + description: Number of data samples used for post-training optimization + editable: true + header: Number of data samples + max_value: 9223372036854775807 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: false +type: CONFIGURABLE_PARAMETERS +visible_in_ui: true diff --git a/external/anomaly/templates/segmentation/draem/template_experimental.yaml b/external/anomaly/configs/segmentation/draem/template_experimental.yaml similarity index 91% rename from external/anomaly/templates/segmentation/draem/template_experimental.yaml rename to external/anomaly/configs/segmentation/draem/template_experimental.yaml index 978af8863d4..cabd48a31ad 100644 --- a/external/anomaly/templates/segmentation/draem/template_experimental.yaml +++ b/external/anomaly/configs/segmentation/draem/template_experimental.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/draem/configuration.yaml + base_path: ./configuration.yaml # Training resources. max_nodes: 1 diff --git a/external/anomaly/configs/segmentation/draem/transform_config.yaml b/external/anomaly/configs/segmentation/draem/transform_config.yaml new file mode 100644 index 00000000000..5a379ef7628 --- /dev/null +++ b/external/anomaly/configs/segmentation/draem/transform_config.yaml @@ -0,0 +1,26 @@ +{ + "__version__": "1.1.0", + "transform": + { + "__class_fullname__": "Compose", + "p": 1.0, + "transforms": + [ + { + "__class_fullname__": "ToFloat", + "always_apply": false, + "p": 1.0, + "max_value": null, + }, + { + "__class_fullname__": "ToTensorV2", + "always_apply": true, + "p": 1.0, + "transpose_mask": false, + }, + ], + "bbox_params": null, + "keypoint_params": null, + "additional_targets": {}, + }, +} diff --git a/external/anomaly/configs/segmentation/padim/__init__.py b/external/anomaly/configs/segmentation/padim/__init__.py new file mode 100644 index 00000000000..797a8187404 --- /dev/null +++ b/external/anomaly/configs/segmentation/padim/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for PADIM Anomaly Segmentation Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import PadimAnomalySegmentationConfig + +__all__ = ["PadimAnomalySegmentationConfig"] diff --git a/external/anomaly/configs/segmentation/padim/compression_config.json b/external/anomaly/configs/segmentation/padim/compression_config.json new file mode 100644 index 00000000000..789f8d131f6 --- /dev/null +++ b/external/anomaly/configs/segmentation/padim/compression_config.json @@ -0,0 +1,40 @@ +{ + "base": { + "find_unused_parameters": true, + "target_metric_name": "image_F1Score", + "nncf_config": { + "input_info": { + "sample_size": [1, 3, 256, 256] + }, + "compression": [], + "log_dir": "/tmp" + } + }, + "nncf_quantization": { + "nncf_config": { + "compression": [ + { + "algorithm": "quantization", + "preset": "mixed", + "initializer": { + "range": { + "num_init_samples": 250 + }, + "batchnorm_adaptation": { + "num_bn_adaptation_samples": 250 + } + }, + "ignored_scopes": [ + "PadimModel/sqrt_0", + "PadimModel/interpolate_2", + "PadimModel/__truediv___0", + "PadimModel/__truediv___1", + "PadimModel/matmul_1", + "PadimModel/conv2d_0" + ] + } + ] + } + }, + "order_of_parts": ["nncf_quantization"] +} diff --git a/external/anomaly/configs/segmentation/padim/configuration.py b/external/anomaly/configs/segmentation/padim/configuration.py new file mode 100644 index 00000000000..22099a1336d --- /dev/null +++ b/external/anomaly/configs/segmentation/padim/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for Padim anomaly Segmentation task.""" + +# Copyright (C) 2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import PadimAnomalyBaseConfig + + +@attrs +class PadimAnomalySegmentationConfig(PadimAnomalyBaseConfig): + """Configurable parameters for PADIM anomaly Segmentation task.""" diff --git a/external/anomaly/configs/segmentation/padim/configuration.yaml b/external/anomaly/configs/segmentation/padim/configuration.yaml new file mode 100644 index 00000000000..49ee9b65f9b --- /dev/null +++ b/external/anomaly/configs/segmentation/padim/configuration.yaml @@ -0,0 +1,183 @@ +dataset: + description: Dataset Parameters + header: Dataset Parameters + num_workers: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + Increasing this value might improve training speed however it might + cause out of memory errors. If the number of workers is set to zero, data loading + will happen in the main training thread. + editable: true + header: Number of workers + max_value: 36 + min_value: 0 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 8 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +description: Configuration for Padim +header: Configuration for Padim +id: "" +learning_parameters: + backbone: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: resnet18 + description: Pre-trained backbone used for feature extraction + editable: false + enum_name: ModelBackbone + header: Model Backbone + options: + RESNET18: resnet18 + WIDE_RESNET_50: wide_resnet50_2 + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: resnet18 + visible_in_ui: false + warning: null + description: Learning Parameters + header: Learning Parameters + train_batch_size: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 32 + description: + The number of training samples seen in each iteration of training. + Increasing this value improves training time and may make the training more + stable. A larger batch size has higher memory requirements. + editable: true + header: Batch size + max_value: 512 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 32 + visible_in_ui: true + warning: + Increasing this value may cause the system to use more memory than available, + potentially causing out of memory errors, please update with caution. + type: PARAMETER_GROUP + visible_in_ui: true +nncf_optimization: + description: Optimization by NNCF + enable_pruning: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Enable filter pruning algorithm + editable: true + header: Enable filter pruning algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: true + warning: null + enable_quantization: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: true + description: Enable quantization algorithm + editable: true + header: Enable quantization algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + header: Optimization by NNCF + pruning_supported: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Whether filter pruning is supported + editable: false + header: Whether filter pruning is supported + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: false + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +pot_parameters: + description: POT Parameters + header: POT Parameters + preset: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: Performance + description: Quantization preset that defines quantization scheme + editable: true + enum_name: POTQuantizationPreset + header: Preset + options: + MIXED: Mixed + PERFORMANCE: Performance + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: Performance + visible_in_ui: true + warning: null + stat_subset_size: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 300 + description: Number of data samples used for post-training optimization + editable: true + header: Number of data samples + max_value: 9223372036854775807 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 300 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: false +type: CONFIGURABLE_PARAMETERS +visible_in_ui: true diff --git a/external/anomaly/configs/segmentation/padim/pot_optimization_config.json b/external/anomaly/configs/segmentation/padim/pot_optimization_config.json new file mode 100644 index 00000000000..cef8d3660a4 --- /dev/null +++ b/external/anomaly/configs/segmentation/padim/pot_optimization_config.json @@ -0,0 +1,18 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": ["210", "224"] + }, + "shuffle_data": true + } + } + ] +} diff --git a/external/anomaly/templates/segmentation/padim/template.yaml b/external/anomaly/configs/segmentation/padim/template.yaml similarity index 92% rename from external/anomaly/templates/segmentation/padim/template.yaml rename to external/anomaly/configs/segmentation/padim/template.yaml index 366a5cacd6e..3feced9fa1f 100644 --- a/external/anomaly/templates/segmentation/padim/template.yaml +++ b/external/anomaly/configs/segmentation/padim/template.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/padim/configuration.yaml + base_path: ./configuration.yaml # Training resources. max_nodes: 1 diff --git a/external/anomaly/configs/segmentation/stfpm/__init__.py b/external/anomaly/configs/segmentation/stfpm/__init__.py new file mode 100644 index 00000000000..179c13a396a --- /dev/null +++ b/external/anomaly/configs/segmentation/stfpm/__init__.py @@ -0,0 +1,19 @@ +"""Initialization of Configurable Parameters for STFPM Anomaly Segmentation Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from .configuration import STFPMAnomalySegmentationConfig + +__all__ = ["STFPMAnomalySegmentationConfig"] diff --git a/external/anomaly/configs/segmentation/stfpm/compression_config.json b/external/anomaly/configs/segmentation/stfpm/compression_config.json new file mode 100644 index 00000000000..caee63d064b --- /dev/null +++ b/external/anomaly/configs/segmentation/stfpm/compression_config.json @@ -0,0 +1,36 @@ +{ + "base": { + "find_unused_parameters": true, + "target_metric_name": "image_F1Score", + "nncf_config": { + "input_info": { + "sample_size": [1, 3, 256, 256] + }, + "compression": [], + "log_dir": "/tmp" + } + }, + "nncf_quantization": { + "model": { + "lr": 0.004 + }, + "nncf_config": { + "compression": [ + { + "algorithm": "quantization", + "preset": "mixed", + "initializer": { + "range": { + "num_init_samples": 250 + }, + "batchnorm_adaptation": { + "num_bn_adaptation_samples": 250 + } + }, + "ignored_scopes": ["{re}.*__pow__.*"] + } + ] + } + }, + "order_of_parts": ["nncf_quantization"] +} diff --git a/external/anomaly/configs/segmentation/stfpm/configuration.py b/external/anomaly/configs/segmentation/stfpm/configuration.py new file mode 100644 index 00000000000..f3772ca276d --- /dev/null +++ b/external/anomaly/configs/segmentation/stfpm/configuration.py @@ -0,0 +1,23 @@ +"""Configurable parameters for STFPM anomaly Segmentation task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from attr import attrs +from configs.base import STFPMAnomalyBaseConfig + + +@attrs +class STFPMAnomalySegmentationConfig(STFPMAnomalyBaseConfig): + """Configurable parameters for STFPM anomaly Segmentation task.""" diff --git a/external/anomaly/configs/segmentation/stfpm/configuration.yaml b/external/anomaly/configs/segmentation/stfpm/configuration.yaml new file mode 100644 index 00000000000..59963b8e409 --- /dev/null +++ b/external/anomaly/configs/segmentation/stfpm/configuration.yaml @@ -0,0 +1,312 @@ +dataset: + description: Dataset Parameters + header: Dataset Parameters + num_workers: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 8 + description: + Increasing this value might improve training speed however it might + cause out of memory errors. If the number of workers is set to zero, data loading + will happen in the main training thread. + editable: true + header: Number of workers + max_value: 36 + min_value: 0 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 8 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +description: Configuration for STFPM +header: Configuration for STFPM +id: "" +learning_parameters: + backbone: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: resnet18 + description: Pre-trained backbone used for feature extraction + editable: true + enum_name: ModelBackbone + header: Model Backbone + options: + RESNET18: resnet18 + WIDE_RESNET_50: wide_resnet50_2 + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: resnet18 + visible_in_ui: true + warning: null + description: Learning Parameters + early_stopping: + description: Early Stopping Parameters + header: Early Stopping Parameters + metric: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: image_F1Score + description: The metric used to determine if the model should stop training + editable: true + enum_name: EarlyStoppingMetrics + header: Early Stopping Metric + options: + IMAGE_F1: image_F1Score + IMAGE_ROC_AUC: image_AUROC + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: image_F1Score + visible_in_ui: true + warning: null + patience: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 10 + description: + Number of epochs to wait for an improvement in the monitored metric. + If the metric has not improved for this many epochs, the training will stop + and the best model will be returned. + editable: true + header: Early Stopping Patience + max_value: 100 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 10 + visible_in_ui: true + warning: + Setting this value too low might lead to underfitting. Setting the + value too high will increase the training time and might lead to overfitting. + type: PARAMETER_GROUP + visible_in_ui: true + header: Learning Parameters + lr: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.4 + description: Learning rate used for optimizing the Student network. + editable: true + header: Learning Rate + max_value: 1 + min_value: 0.001 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.4 + visible_in_ui: true + warning: null + max_epochs: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 100 + description: Maximum number of epochs to train the model for. + editable: true + header: Max Epochs + max_value: 500 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 100 + visible_in_ui: true + warning: + Training for very few epochs might lead to poor performance. If Early + Stopping is enabled then increasing the value of max epochs might not lead to + desired result. + momentum: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.9 + description: Momentum used for SGD optimizer + editable: true + header: Momentum + max_value: 1.0 + min_value: 0.1 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.9 + visible_in_ui: true + warning: null + train_batch_size: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 32 + description: + The number of training samples seen in each iteration of training. + Increasing this value improves training time and may make the training more + stable. A larger batch size has higher memory requirements. + editable: true + header: Batch size + max_value: 512 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 32 + visible_in_ui: true + warning: + Increasing this value may cause the system to use more memory than available, + potentially causing out of memory errors, please update with caution. + type: PARAMETER_GROUP + visible_in_ui: true + weight_decay: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 0.0001 + description: Decay for SGD optimizer + editable: true + header: Weight Decay + max_value: 1 + min_value: 1.0e-05 + type: FLOAT + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.0001 + visible_in_ui: true + warning: null +nncf_optimization: + description: Optimization by NNCF + enable_pruning: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Enable filter pruning algorithm + editable: true + header: Enable filter pruning algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: true + warning: null + enable_quantization: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: true + description: Enable quantization algorithm + editable: true + header: Enable quantization algorithm + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + header: Optimization by NNCF + pruning_supported: + affects_outcome_of: TRAINING + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: false + description: Whether filter pruning is supported + editable: false + header: Whether filter pruning is supported + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: false + visible_in_ui: false + warning: null + type: PARAMETER_GROUP + visible_in_ui: true +pot_parameters: + description: POT Parameters + header: POT Parameters + preset: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: Performance + description: Quantization preset that defines quantization scheme + editable: true + enum_name: POTQuantizationPreset + header: Preset + options: + MIXED: Mixed + PERFORMANCE: Performance + type: SELECTABLE + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: Performance + visible_in_ui: true + warning: null + stat_subset_size: + affects_outcome_of: NONE + auto_hpo_state: not_possible + auto_hpo_value: null + default_value: 300 + description: Number of data samples used for post-training optimization + editable: true + header: Number of data samples + max_value: 9223372036854775807 + min_value: 1 + type: INTEGER + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 300 + visible_in_ui: true + warning: null + type: PARAMETER_GROUP + visible_in_ui: false +type: CONFIGURABLE_PARAMETERS +visible_in_ui: true diff --git a/external/anomaly/configs/segmentation/stfpm/hpo_config.yaml b/external/anomaly/configs/segmentation/stfpm/hpo_config.yaml new file mode 100644 index 00000000000..ad9db985679 --- /dev/null +++ b/external/anomaly/configs/segmentation/stfpm/hpo_config.yaml @@ -0,0 +1,18 @@ +# default model.lr: 0.4, dataset.train_batch_size: 32 +metric: image_F1Score +mode: max +search_algorithm: asha +early_stop: None +hp_space: + learning_parameters.lr: + param_type: qloguniform + range: + - 0.04 + - 0.8 + - 0.01 + learning_parameters.train_batch_size: + param_type: qloguniform + range: + - 16 + - 64 + - 2 diff --git a/external/anomaly/templates/segmentation/stfpm/template.yaml b/external/anomaly/configs/segmentation/stfpm/template.yaml similarity index 93% rename from external/anomaly/templates/segmentation/stfpm/template.yaml rename to external/anomaly/configs/segmentation/stfpm/template.yaml index 5f446ce8ef1..723a7e05696 100644 --- a/external/anomaly/templates/segmentation/stfpm/template.yaml +++ b/external/anomaly/configs/segmentation/stfpm/template.yaml @@ -18,7 +18,7 @@ entrypoints: # Hyper Parameters hyper_parameters: - base_path: ../../../configs/stfpm/configuration.yaml + base_path: ./configuration.yaml parameter_overrides: learning_parameters: train_batch_size: diff --git a/external/anomaly/tasks/inference.py b/external/anomaly/tasks/inference.py index b7dbc3c16ea..d94f3961918 100644 --- a/external/anomaly/tasks/inference.py +++ b/external/anomaly/tasks/inference.py @@ -18,7 +18,7 @@ import io import os import shutil -import subprocess # nosec +import subprocess import tempfile from glob import glob from typing import Dict, List, Optional, Union @@ -36,7 +36,7 @@ from omegaconf import DictConfig, ListConfig from ote_sdk.entities.datasets import DatasetEntity from ote_sdk.entities.inference_parameters import InferenceParameters -from ote_sdk.entities.metrics import Performance, ScoreMetric +from ote_sdk.entities.metrics import NullPerformance, Performance, ScoreMetric from ote_sdk.entities.model import ( ModelEntity, ModelFormat, @@ -120,8 +120,8 @@ def load_model(self, ote_model: Optional[ModelEntity]) -> AnomalyModule: AnomalyModule: Anomalib classification or segmentation model with/without weights. """ - model = get_model(config=self.config) if ote_model is None: + model = get_model(config=self.config) logger.info( "No trained model in project yet. Created new model with '%s'", self.model_name, @@ -130,10 +130,16 @@ def load_model(self, ote_model: Optional[ModelEntity]) -> AnomalyModule: buffer = io.BytesIO(ote_model.get_data("weights.pth")) model_data = torch.load(buffer, map_location=torch.device("cpu")) + if model_data["config"]["model"]["backbone"] != self.config["model"]["backbone"]: + logger.warning( + "Backbone of the model in the Task Environment is different from the one in the template. " + f"creating model with backbone={model_data['config']['model']['backbone']}" + ) + self.config["model"]["backbone"] = model_data["config"]["model"]["backbone"] try: + model = get_model(config=self.config) model.load_state_dict(model_data["model"]) logger.info("Loaded model weights from Task Environment") - except BaseException as exception: raise ValueError("Could not load the saved model. The model file structure is invalid.") from exception @@ -242,8 +248,8 @@ def export(self, export_type: ExportType, output_model: ModelEntity) -> None: logger.info("Exporting the OpenVINO model.") onnx_path = os.path.join(self.config.project.path, "onnx_model.onnx") self._export_to_onnx(onnx_path) - optimize_command = "mo --input_model " + onnx_path + " --output_dir " + self.config.project.path - subprocess.call(optimize_command, shell=True) + optimize_command = ["mo", "--input_model", onnx_path, "--output_dir", self.config.project.path] + subprocess.run(optimize_command, check=True) bin_file = glob(os.path.join(self.config.project.path, "*.bin"))[0] xml_file = glob(os.path.join(self.config.project.path, "*.xml"))[0] with open(bin_file, "rb") as file: @@ -257,7 +263,7 @@ def export(self, export_type: ExportType, output_model: ModelEntity) -> None: output_model.set_data("label_schema.json", label_schema_to_bytes(self.task_environment.label_schema)) self._set_metadata(output_model) - def _model_info(self) -> Dict: + def model_info(self) -> Dict: """Return model info to save the model weights. Returns: @@ -276,28 +282,29 @@ def save_model(self, output_model: ModelEntity) -> None: output_model (ModelEntity): Output model onto which the weights are saved. """ logger.info("Saving the model weights.") - model_info = self._model_info() + model_info = self.model_info() buffer = io.BytesIO() torch.save(model_info, buffer) output_model.set_data("weights.pth", buffer.getvalue()) output_model.set_data("label_schema.json", label_schema_to_bytes(self.task_environment.label_schema)) self._set_metadata(output_model) - f1_score = self.model.image_metrics.F1Score.compute().item() - output_model.performance = Performance(score=ScoreMetric(name="F1 Score", value=f1_score)) + if hasattr(self.model, "image_metrics"): + f1_score = self.model.image_metrics.F1Score.compute().item() + output_model.performance = Performance(score=ScoreMetric(name="F1 Score", value=f1_score)) + else: + output_model.performance = NullPerformance() output_model.precision = self.precision output_model.optimization_methods = self.optimization_methods def _set_metadata(self, output_model: ModelEntity): - output_model.set_data("image_threshold", self.model.image_threshold.value.cpu().numpy().tobytes()) - output_model.set_data("pixel_threshold", self.model.pixel_threshold.value.cpu().numpy().tobytes()) - if hasattr(self.model, "min_max"): - output_model.set_data("min", self.model.min_max.min.cpu().numpy().tobytes()) - output_model.set_data("max", self.model.min_max.max.cpu().numpy().tobytes()) - else: - logger.warning( - "The model was not trained before saving. This will lead to incorrect normalization of the heatmaps." - ) + if hasattr(self.model, "image_threshold"): + output_model.set_data("image_threshold", self.model.image_threshold.value.cpu().numpy().tobytes()) + if hasattr(self.model, "pixel_threshold"): + output_model.set_data("pixel_threshold", self.model.pixel_threshold.value.cpu().numpy().tobytes()) + if hasattr(self.model, "normalization_metrics"): + output_model.set_data("min", self.model.normalization_metrics.state_dict()["min"].cpu().numpy().tobytes()) + output_model.set_data("max", self.model.normalization_metrics.state_dict()["max"].cpu().numpy().tobytes()) @staticmethod def _is_docker() -> bool: diff --git a/external/anomaly/tasks/nncf.py b/external/anomaly/tasks/nncf.py index 23bfd6f7098..1706d9076c3 100644 --- a/external/anomaly/tasks/nncf.py +++ b/external/anomaly/tasks/nncf.py @@ -108,10 +108,7 @@ def load_model(self, ote_model: Optional[ModelEntity]) -> AnomalyModule: AnomalyModule: Anomalib classification or segmentation model with/without weights. """ - # replaces the templates dir with configs and removes task type - nncf_config_path = os.path.join( - self.base_dir.partition("templates")[0], "configs", self.base_dir.split("/")[-1], "compression_config.json" - ) + nncf_config_path = os.path.join(self.base_dir, "compression_config.json") with open(nncf_config_path, encoding="utf8") as nncf_config_file: common_nncf_config = json.load(nncf_config_file) @@ -135,9 +132,9 @@ def load_model(self, ote_model: Optional[ModelEntity]) -> AnomalyModule: for key in model_data["model"].keys(): if key.startswith("model."): new_key = key.replace("model.", "") - res = re.search(r"nncf_module\.(\w+)_backbone\.(.*)", new_key) + res = re.search(r"nncf_module\.(\w+)_feature_extractor\.(.*)", new_key) if res: - new_key = f"nncf_module.{res.group(1)}_model.backbone.{res.group(2)}" + new_key = f"nncf_module.{res.group(1)}_model.feature_extractor.{res.group(2)}" nncf_modules[new_key] = model_data["model"][key] else: pl_modules[key] = model_data["model"][key] @@ -204,7 +201,7 @@ def optimize( logger.info("Training completed.") - def _model_info(self) -> Dict: + def model_info(self) -> Dict: """Return model info to save the model weights. Returns: diff --git a/external/anomaly/tasks/openvino.py b/external/anomaly/tasks/openvino.py index f2ab3e589c3..0a453285135 100644 --- a/external/anomaly/tasks/openvino.py +++ b/external/anomaly/tasks/openvino.py @@ -271,6 +271,12 @@ def optimize( if optimization_type is not OptimizationType.POT: raise ValueError("POT is the only supported optimization type for OpenVINO models") + # Training subset does not contain example of anomalous images. + # Anomalous examples from all dataset used to get statistics for quantization. + dataset = DatasetEntity( + items=[item for item in dataset if item.get_shapes_labels()[0].is_anomalous], purpose=dataset.purpose + ) + logger.info("Starting POT optimization.") data_loader = OTEOpenVINOAnomalyDataloader(config=self.config, dataset=dataset, inferencer=self.inferencer) diff --git a/external/anomaly/tasks/train.py b/external/anomaly/tasks/train.py index 59351ea537f..8afdbcc9f22 100644 --- a/external/anomaly/tasks/train.py +++ b/external/anomaly/tasks/train.py @@ -14,11 +14,14 @@ # See the License for the specific language governing permissions # and limitations under the License. +import io from typing import Optional -from adapters.anomalib.callbacks import ProgressCallback, ScoreReportingCallback +import torch +from adapters.anomalib.callbacks import ProgressCallback from adapters.anomalib.data import OTEAnomalyDataModule from adapters.anomalib.logger import get_logger +from anomalib.models import AnomalyModule, get_model from anomalib.utils.callbacks import ( MetricsConfigurationCallback, MinMaxNormalizationCallback, @@ -68,7 +71,6 @@ def train( callbacks = [ ProgressCallback(parameters=train_parameters), MinMaxNormalizationCallback(), - ScoreReportingCallback(parameters=train_parameters), MetricsConfigurationCallback( adaptive_threshold=config.metrics.threshold.adaptive, default_image_threshold=config.metrics.threshold.image_default, @@ -84,3 +86,42 @@ def train( self.save_model(output_model) logger.info("Training completed.") + + def load_model(self, ote_model: Optional[ModelEntity]) -> AnomalyModule: + """Create and Load Anomalib Module from OTE Model. + + This method checks if the task environment has a saved OTE Model, + and creates one. If the OTE model already exists, it returns the + the model with the saved weights. + + Args: + ote_model (Optional[ModelEntity]): OTE Model from the + task environment. + + Returns: + AnomalyModule: Anomalib + classification or segmentation model with/without weights. + """ + model = get_model(config=self.config) + if ote_model is None: + logger.info( + "No trained model in project yet. Created new model with '%s'", + self.model_name, + ) + else: + buffer = io.BytesIO(ote_model.get_data("weights.pth")) + model_data = torch.load(buffer, map_location=torch.device("cpu")) + + try: + if model_data["config"]["model"]["backbone"] == self.config["model"]["backbone"]: + model.load_state_dict(model_data["model"]) + logger.info("Loaded model weights from Task Environment") + else: + logger.info( + "Model backbone does not match. Created new model with '%s'", + self.model_name, + ) + except BaseException as exception: + raise ValueError("Could not load the saved model. The model file structure is invalid.") from exception + + return model diff --git a/external/anomaly/tests/conftest.py b/external/anomaly/tests/conftest.py index 1f7f0347ada..57519b499a9 100644 --- a/external/anomaly/tests/conftest.py +++ b/external/anomaly/tests/conftest.py @@ -59,7 +59,7 @@ def ote_templates_root_dir_fx(): logger = logging.getLogger(__name__) root = osp.dirname(osp.dirname(osp.realpath(__file__))) - root = f"{root}/templates/" + root = f"{root}/configs/" logger.debug(f"overloaded ote_templates_root_dir_fx: return {root}") return root diff --git a/external/anomaly/tests/ote_cli/test_anomaly_classification.py b/external/anomaly/tests/ote_cli/test_anomaly_classification.py index 5660e52ac28..288a1e2af19 100644 --- a/external/anomaly/tests/ote_cli/test_anomaly_classification.py +++ b/external/anomaly/tests/ote_cli/test_anomaly_classification.py @@ -18,6 +18,7 @@ import pytest from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component +from ote_sdk.entities.model_template import parse_model_template from ote_cli.registry import Registry from ote_cli.utils.tests import ( @@ -54,8 +55,16 @@ root = "/tmp/ote_cli/" ote_dir = os.getcwd() -templates = Registry("external").filter(task_type="ANOMALY_CLASSIFICATION").templates -templates_ids = [template.model_template_id for template in templates] +TT_STABILITY_TESTS = os.environ.get("TT_STABILITY_TESTS", False) +if TT_STABILITY_TESTS: + default_template = parse_model_template( + os.path.join("external/anomaly/configs", "classification", "padim", "template.yaml") + ) + templates = [default_template] * 100 + templates_ids = [template.model_template_id + f"-{i+1}" for i, template in enumerate(templates)] +else: + templates = Registry("external").filter(task_type="ANOMALY_CLASSIFICATION").templates + templates_ids = [template.model_template_id for template in templates] class TestToolsAnomalyClassification: @@ -70,46 +79,55 @@ def test_ote_train(self, template): ote_train_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_export(self, template): ote_export_testing(template, root) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval(self, template): ote_eval_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_openvino(self, template): ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.0) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo(self, template): ote_demo_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo_openvino(self, template): ote_demo_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_deploy_openvino(self, template): ote_deploy_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_deployment(self, template): ote_eval_deployment_testing(template, root, ote_dir, args, threshold=0.0) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo_deployment(self, template): ote_demo_deployment_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_optimize(self, template): if template.entrypoints.nncf is None: @@ -118,6 +136,7 @@ def test_nncf_optimize(self, template): nncf_optimize_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_export(self, template): if template.entrypoints.nncf is None: @@ -126,6 +145,7 @@ def test_nncf_export(self, template): nncf_export_testing(template, root) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) @pytest.mark.xfail(reason="CVS-83124") def test_nncf_eval(self, template): @@ -136,6 +156,7 @@ def test_nncf_eval(self, template): nncf_eval_testing(template, root, ote_dir, args, threshold=0.3) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_eval_openvino(self, template): if template.entrypoints.nncf is None: @@ -144,11 +165,13 @@ def test_nncf_eval_openvino(self, template): nncf_eval_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_pot_optimize(self, template): pot_optimize_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_pot_eval(self, template): pot_eval_testing(template, root, ote_dir, args) diff --git a/external/anomaly/tests/ote_cli/test_anomaly_detection.py b/external/anomaly/tests/ote_cli/test_anomaly_detection.py index 76ee445539d..35b5d3bc92a 100644 --- a/external/anomaly/tests/ote_cli/test_anomaly_detection.py +++ b/external/anomaly/tests/ote_cli/test_anomaly_detection.py @@ -37,6 +37,7 @@ pot_optimize_testing, ) from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component +from ote_sdk.entities.model_template import parse_model_template from ote_cli.registry import Registry @@ -54,8 +55,16 @@ root = "/tmp/ote_cli/" ote_dir = os.getcwd() -templates = Registry("external").filter(task_type="ANOMALY_DETECTION").templates -templates_ids = [template.model_template_id for template in templates] +TT_STABILITY_TESTS = os.environ.get("TT_STABILITY_TESTS", False) +if TT_STABILITY_TESTS: + default_template = parse_model_template( + os.path.join("external/anomaly/configs", "detection", "padim", "template.yaml") + ) + templates = [default_template] * 100 + templates_ids = [template.model_template_id + f"-{i+1}" for i, template in enumerate(templates)] +else: + templates = Registry("external").filter(task_type="ANOMALY_DETECTION").templates + templates_ids = [template.model_template_id for template in templates] class TestToolsAnomalyDetection: @@ -70,46 +79,55 @@ def test_ote_train(self, template): ote_train_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_export(self, template): ote_export_testing(template, root) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval(self, template): ote_eval_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_openvino(self, template): ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.01) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo(self, template): ote_demo_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo_openvino(self, template): ote_demo_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_deploy_openvino(self, template): ote_deploy_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_deployment(self, template): ote_eval_deployment_testing(template, root, ote_dir, args, threshold=0.01) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo_deployment(self, template): ote_demo_deployment_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_optimize(self, template): if template.entrypoints.nncf is None: @@ -118,6 +136,7 @@ def test_nncf_optimize(self, template): nncf_optimize_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_export(self, template): if template.entrypoints.nncf is None: @@ -126,6 +145,7 @@ def test_nncf_export(self, template): nncf_export_testing(template, root) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) @pytest.mark.xfail(reason="CVS-83124") def test_nncf_eval(self, template): @@ -136,6 +156,7 @@ def test_nncf_eval(self, template): nncf_eval_testing(template, root, ote_dir, args, threshold=0.3) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_eval_openvino(self, template): if template.entrypoints.nncf is None: @@ -144,11 +165,13 @@ def test_nncf_eval_openvino(self, template): nncf_eval_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_pot_optimize(self, template): pot_optimize_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_pot_eval(self, template): pot_eval_testing(template, root, ote_dir, args) diff --git a/external/anomaly/tests/ote_cli/test_anomaly_segmentation.py b/external/anomaly/tests/ote_cli/test_anomaly_segmentation.py index 98eb8aea3a7..74de82e955f 100644 --- a/external/anomaly/tests/ote_cli/test_anomaly_segmentation.py +++ b/external/anomaly/tests/ote_cli/test_anomaly_segmentation.py @@ -18,6 +18,7 @@ import pytest from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component +from ote_sdk.entities.model_template import parse_model_template from ote_cli.registry import Registry from ote_cli.utils.tests import ( @@ -57,6 +58,16 @@ templates = Registry("external").filter(task_type="ANOMALY_SEGMENTATION").templates templates_ids = [template.model_template_id for template in templates] +TT_STABILITY_TESTS = os.environ.get("TT_STABILITY_TESTS", False) +if TT_STABILITY_TESTS: + default_template = parse_model_template( + os.path.join("external/anomaly/configs", "segmentation", "padim", "template.yaml") + ) + templates = [default_template] * 100 + templates_ids = [template.model_template_id + f"-{i+1}" for i, template in enumerate(templates)] +else: + templates = Registry("external").filter(task_type="ANOMALY_SEGMENTATION").templates + templates_ids = [template.model_template_id for template in templates] class TestToolsAnomalySegmentation: @@ -71,46 +82,55 @@ def test_ote_train(self, template): ote_train_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_export(self, template): ote_export_testing(template, root) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval(self, template): ote_eval_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_openvino(self, template): ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.01) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo(self, template): ote_demo_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo_openvino(self, template): ote_demo_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_deploy_openvino(self, template): ote_deploy_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_deployment(self, template): ote_eval_deployment_testing(template, root, ote_dir, args, threshold=0.01) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_demo_deployment(self, template): ote_demo_deployment_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_optimize(self, template): if template.entrypoints.nncf is None: @@ -119,6 +139,7 @@ def test_nncf_optimize(self, template): nncf_optimize_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_export(self, template): if template.entrypoints.nncf is None: @@ -127,6 +148,7 @@ def test_nncf_export(self, template): nncf_export_testing(template, root) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) @pytest.mark.xfail(reason="CVS-83124") def test_nncf_eval(self, template): @@ -137,6 +159,7 @@ def test_nncf_eval(self, template): nncf_eval_testing(template, root, ote_dir, args, threshold=0.3) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_nncf_eval_openvino(self, template): if template.entrypoints.nncf is None: @@ -145,11 +168,13 @@ def test_nncf_eval_openvino(self, template): nncf_eval_openvino_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_pot_optimize(self, template): pot_optimize_testing(template, root, ote_dir, args) @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_pot_eval(self, template): pot_eval_testing(template, root, ote_dir, args) diff --git a/external/anomaly/tools/sample.py b/external/anomaly/tools/sample.py index 88e5f825f6e..f8a28a9f158 100644 --- a/external/anomaly/tools/sample.py +++ b/external/anomaly/tools/sample.py @@ -81,7 +81,7 @@ def __init__( If MVTec dataset is placed under the above directory, then we could run, - >>> model_template_path = "./configs/anomaly_classification/padim/template.yaml" + >>> model_template_path = "./configs/classification/padim/template.yaml" >>> dataset_path = "./datasets/MVTec" >>> task = OteAnomalyTask( ... dataset_path=dataset_path, @@ -343,7 +343,7 @@ def parse_args() -> Namespace: ) parser.add_argument( "--model_template_path", - default="./templates/classification/padim/template.yaml", + default="./configs/classification/padim/template.yaml", ) parser.add_argument("--dataset_path", default="./datasets/MVTec") parser.add_argument("--category", default="bottle") diff --git a/external/deep-object-reid/torchreid_tasks/model_wrappers/classification.py b/external/deep-object-reid/torchreid_tasks/model_wrappers/classification.py index bfa7b75f08b..de5a49c6d42 100644 --- a/external/deep-object-reid/torchreid_tasks/model_wrappers/classification.py +++ b/external/deep-object-reid/torchreid_tasks/model_wrappers/classification.py @@ -30,6 +30,13 @@ class OteClassification(Classification): __model__ = 'ote_classification' + def __init__(self, model_adapter, configuration=None, preload=False): + super().__init__(model_adapter, configuration, preload) + if self.hierarchical: + logits_range_dict = self.multihead_class_info.get('head_idx_to_logits_range', False) + if logits_range_dict: # json allows only string key, revert to integer. + self.multihead_class_info['head_idx_to_logits_range'] = {int(k):v for k,v in logits_range_dict.items()} + @classmethod def parameters(cls): parameters = super().parameters() @@ -91,29 +98,21 @@ def postprocess(self, outputs: Dict[str, np.ndarray], metadata: Dict[str, Any]): @check_input_parameters_type() def postprocess_aux_outputs(self, outputs: Dict[str, np.ndarray], metadata: Dict[str, Any]): - actmap = get_actmap(outputs['saliency_map'][0], (metadata['original_shape'][1], metadata['original_shape'][0])) + saliency_map = outputs['saliency_map'][0] repr_vector = outputs['feature_vector'].reshape(-1) logits = outputs[self.out_layer_name].squeeze() if self.multilabel: probs = sigmoid_numpy(logits) + elif self.hierarchical: + probs = activate_multihead_output(logits, self.multihead_class_info) else: probs = softmax_numpy(logits) act_score = float(np.max(probs) - np.min(probs)) - return actmap, repr_vector, act_score - - -@check_input_parameters_type() -def get_actmap(features: Union[np.ndarray, Iterable, int, float], - output_res: Union[tuple, list]): - am = cv2.resize(features, output_res) - am = cv2.applyColorMap(am, cv2.COLORMAP_JET) - am = cv2.cvtColor(am, cv2.COLOR_BGR2RGB) - return am - + return probs, saliency_map, repr_vector, act_score @check_input_parameters_type() def sigmoid_numpy(x: np.ndarray): @@ -121,19 +120,35 @@ def sigmoid_numpy(x: np.ndarray): @check_input_parameters_type() -def softmax_numpy(x: np.ndarray): +def softmax_numpy(x: np.ndarray, eps: float = 1e-9): x = np.exp(x) - x /= np.sum(x) + inf_ind = np.isinf(x) + total_infs = np.sum(inf_ind) + if total_infs > 0: + x[inf_ind] = 1. / total_infs + x[~inf_ind] = 0 + else: + x /= np.sum(x) + eps return x +@check_input_parameters_type() +def activate_multihead_output(logits: np.ndarray, multihead_class_info: dict): + for i in range(multihead_class_info['num_multiclass_heads']): + logits_begin, logits_end = multihead_class_info['head_idx_to_logits_range'][i] + logits[logits_begin : logits_end] = softmax_numpy(logits[logits_begin : logits_end]) + + if multihead_class_info['num_multilabel_classes']: + logits_begin, logits_end = multihead_class_info['num_single_label_classes'], -1 + logits[logits_begin : logits_end] = softmax_numpy(logits[logits_begin : logits_end]) + + return logits + + @check_input_parameters_type() def get_hierarchical_predictions(logits: np.ndarray, multihead_class_info: dict, pos_thr: float = 0.5, activate: bool = True): predicted_labels = [] - logits_range_dict = multihead_class_info.get('head_idx_to_logits_range', False) - if logits_range_dict: # json allows only string key, revert to integer. - multihead_class_info['head_idx_to_logits_range'] = {int(k):v for k,v in logits_range_dict.items()} for i in range(multihead_class_info['num_multiclass_heads']): logits_begin, logits_end = multihead_class_info['head_idx_to_logits_range'][i] head_logits = logits[logits_begin : logits_end] diff --git a/external/deep-object-reid/torchreid_tasks/openvino_task.py b/external/deep-object-reid/torchreid_tasks/openvino_task.py index c872ca83230..fd894caa432 100644 --- a/external/deep-object-reid/torchreid_tasks/openvino_task.py +++ b/external/deep-object-reid/torchreid_tasks/openvino_task.py @@ -40,6 +40,7 @@ from ote_sdk.entities.tensor import TensorEntity from ote_sdk.entities.resultset import ResultSetEntity from ote_sdk.entities.result_media import ResultMediaEntity +from ote_sdk.entities.subset import Subset from ote_sdk.entities.task_environment import TaskEnvironment from ote_sdk.serialization.label_mapper import LabelSchemaMapper, label_schema_to_bytes from ote_sdk.usecases.exportable_code.inference import BaseInferencer @@ -70,7 +71,7 @@ import warnings warnings.warn("ModelAPI was not found.") from torchreid_tasks.parameters import OTEClassificationParameters -from torchreid_tasks.utils import get_multihead_class_info +from torchreid_tasks.utils import get_multihead_class_info, get_actmap from zipfile import ZipFile @@ -126,13 +127,13 @@ def post_process(self, prediction: Dict[str, np.ndarray], metadata: Dict[str, An return self.converter.convert_to_annotation(prediction, metadata) @check_input_parameters_type() - def predict(self, image: np.ndarray) -> Tuple[AnnotationSceneEntity, np.ndarray, np.ndarray]: + def predict(self, image: np.ndarray) -> Tuple[AnnotationSceneEntity, np.ndarray, np.ndarray, np.ndarray]: image, metadata = self.pre_process(image) raw_predictions = self.forward(image) predictions = self.post_process(raw_predictions, metadata) - actmap, repr_vectors, act_score = self.model.postprocess_aux_outputs(raw_predictions, metadata) + probs, actmap, repr_vectors, act_score = self.model.postprocess_aux_outputs(raw_predictions, metadata) - return predictions, actmap, repr_vectors, act_score + return predictions, probs, actmap, repr_vectors, act_score @check_input_parameters_type() def forward(self, inputs: Dict[str, np.ndarray]) -> Dict[str, np.ndarray]: @@ -183,19 +184,49 @@ def infer(self, dataset: DatasetEntity, dump_features = not inference_parameters.is_evaluation dataset_size = len(dataset) for i, dataset_item in enumerate(dataset, 1): - predicted_scene, actmap, repr_vector, act_score = self.inferencer.predict(dataset_item.numpy) + predicted_scene, probs, saliency_map, repr_vector, act_score = self.inferencer.predict(dataset_item.numpy) dataset_item.append_labels(predicted_scene.annotations[0].get_labels()) active_score_media = FloatMetadata(name="active_score", value=act_score, float_type=FloatType.ACTIVE_SCORE) dataset_item.append_metadata_item(active_score_media, model=self.model) + + probs_meta = TensorEntity(name="probabilities", numpy=probs.reshape(-1)) + dataset_item.append_metadata_item(probs_meta, model=self.model) + feature_vec_media = TensorEntity(name="representation_vector", numpy=repr_vector.reshape(-1)) dataset_item.append_metadata_item(feature_vec_media, model=self.model) if dump_features: - saliency_media = ResultMediaEntity(name="Saliency Map", type="saliency_map", - annotation_scene=dataset_item.annotation_scene, - numpy=actmap, roi=dataset_item.roi, - label=predicted_scene.annotations[0].get_labels()[0].label) - dataset_item.append_metadata_item(saliency_media, model=self.model) + if saliency_map.ndim == 2: + # Single saliency map per image, support e.g. EigenCAM use case + actmap = get_actmap(saliency_map, (dataset_item.width, dataset_item.height)) + saliency_media = ResultMediaEntity(name="Saliency Map", + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=actmap, + roi=dataset_item.roi) + dataset_item.append_metadata_item(saliency_media, model=self.model) + elif saliency_map.ndim == 3: + # Multiple saliency maps per image (class-wise saliency map), support e.g. Recipro-CAM use case + predicted_labels = set() + for scored_label in predicted_scene.annotations[0].get_labels(): + predicted_labels.add(scored_label.label) + + for class_id, class_wise_saliency_map in enumerate(saliency_map): + label = self.task_environment.get_labels()[class_id] + if label in predicted_labels: + # TODO (negvet): Support more advanced use case, + # when all/configurable set of saliency maps is returned + actmap = get_actmap(class_wise_saliency_map, (dataset_item.width, dataset_item.height)) + saliency_media = ResultMediaEntity(name=label.name, + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=actmap, + roi=dataset_item.roi, + label=label) + dataset_item.append_metadata_item(saliency_media, model=self.model) + else: + raise RuntimeError(f'Single saliency map has to be 2 or 3-dimensional, ' + f'but got {saliency_map.ndim} dims') update_progress_callback(int(i / dataset_size * 100)) return dataset @@ -252,6 +283,7 @@ def optimize(self, if optimization_type is not OptimizationType.POT: raise ValueError("POT is the only supported optimization type for OpenVino models") + dataset = dataset.get_subset(Subset.TRAINING) data_loader = OTEOpenVinoDataLoader(dataset, self.inferencer) with tempfile.TemporaryDirectory() as tempdir: diff --git a/external/deep-object-reid/torchreid_tasks/utils.py b/external/deep-object-reid/torchreid_tasks/utils.py index aed9ad4794e..fff452fae00 100644 --- a/external/deep-object-reid/torchreid_tasks/utils.py +++ b/external/deep-object-reid/torchreid_tasks/utils.py @@ -626,3 +626,12 @@ def after_train_epoch(self, runner: BaseRunner): runner._iter -= 1 super().after_train_epoch(runner) runner._iter += 1 + + +@check_input_parameters_type() +def get_actmap(features: Union[np.ndarray, Iterable, int, float], + output_res: Union[tuple, list]): + am = cv.resize(features, output_res) + am = cv.applyColorMap(am, cv.COLORMAP_JET) + am = cv.cvtColor(am, cv.COLOR_BGR2RGB) + return am diff --git a/external/mmdetection/detection_tasks/apis/detection/configuration.py b/external/mmdetection/detection_tasks/apis/detection/configuration.py index e30109120be..5cdec948d82 100644 --- a/external/mmdetection/detection_tasks/apis/detection/configuration.py +++ b/external/mmdetection/detection_tasks/apis/detection/configuration.py @@ -175,7 +175,56 @@ class __POTParameter(ParameterGroup): description="Quantization preset that defines quantization scheme", editable=True, visible_in_ui=True) + @attrs + class __TilingParameters(ParameterGroup): + header = string_attribute('Tiling Parameters') + description = header + + enable_tiling = configurable_boolean( + default_value=False, + header="Enable tiling", + description="Set to True to allow tiny objects to be better detected.", + warning="Tiling trades off speed for accuracy as it increases the number of images to be processed.", + affects_outcome_of=ModelLifecycle.NONE + ) + + enable_adaptive_params = configurable_boolean( + default_value=True, + header="Enable adaptive tiling parameters", + description="Config tile size and tile overlap adaptively based on annotated dataset statistic", + warning="", + affects_outcome_of=ModelLifecycle.NONE + ) + + tile_size = configurable_integer( + header="Tile Image Size", + description="Tile Image Size", + default_value=400, + min_value=100, + max_value=1024, + affects_outcome_of=ModelLifecycle.NONE + ) + + tile_overlap = configurable_float( + header="Tile Overlap", + description="Overlap between each two neighboring tiles.", + default_value=0.2, + min_value=0.0, + max_value=1.0, + affects_outcome_of=ModelLifecycle.NONE + ) + + tile_max_number = configurable_integer( + header="Max object per image", + description="Max object per image", + default_value=1500, + min_value=1, + max_value=10000, + affects_outcome_of=ModelLifecycle.NONE + ) + learning_parameters = add_parameter_group(__LearningParameters) postprocessing = add_parameter_group(__Postprocessing) nncf_optimization = add_parameter_group(__NNCFOptimization) pot_parameters = add_parameter_group(__POTParameter) + tiling_parameters = add_parameter_group(__TilingParameters) diff --git a/external/mmdetection/detection_tasks/apis/detection/inference_task.py b/external/mmdetection/detection_tasks/apis/detection/inference_task.py index 358b09a9750..2b02ac9d3be 100644 --- a/external/mmdetection/detection_tasks/apis/detection/inference_task.py +++ b/external/mmdetection/detection_tasks/apis/detection/inference_task.py @@ -28,6 +28,7 @@ from mmcv.parallel import MMDataParallel from mmcv.runner import load_checkpoint, load_state_dict from mmcv.utils import Config +from ote_sdk.configuration.helper.utils import config_to_bytes from ote_sdk.entities.annotation import Annotation from ote_sdk.entities.datasets import DatasetEntity from ote_sdk.entities.id import ID @@ -449,6 +450,7 @@ def export(self, with open(os.path.join(tempdir, xml_file), "rb") as f: output_model.set_data('openvino.xml', f.read()) output_model.set_data('confidence_threshold', np.array([self.confidence_threshold], dtype=np.float32).tobytes()) + output_model.set_data("config.json", config_to_bytes(self._hyperparams)) output_model.precision = self._precision output_model.optimization_methods = self._optimization_methods except Exception as ex: diff --git a/external/mmdetection/detection_tasks/apis/detection/model_wrappers/openvino_models.py b/external/mmdetection/detection_tasks/apis/detection/model_wrappers/openvino_models.py index 81d88002189..a830d055fe6 100644 --- a/external/mmdetection/detection_tasks/apis/detection/model_wrappers/openvino_models.py +++ b/external/mmdetection/detection_tasks/apis/detection/model_wrappers/openvino_models.py @@ -42,11 +42,13 @@ def _get_outputs(self): return output_match_dict def postprocess(self, outputs, meta): + resize_mask = meta.get('resize_mask', True) + boxes = outputs[self.output_blob_name['boxes']] if self.is_segmentoly else \ outputs[self.output_blob_name['boxes']][:, :4] scores = outputs[self.output_blob_name['scores']] if self.is_segmentoly else \ outputs[self.output_blob_name['boxes']][:, 4] - masks= outputs[self.output_blob_name['masks']] + masks = outputs[self.output_blob_name['masks']] if self.is_segmentoly: classes = outputs[self.output_blob_name['labels']].astype(np.uint32) else: @@ -63,14 +65,21 @@ def postprocess(self, outputs, meta): scale_y = meta['resized_shape'][0] / meta['original_shape'][0] boxes[:, 0::2] /= scale_x boxes[:, 1::2] /= scale_y - + resized_masks = [] for box, cls, raw_mask in zip(boxes, classes, masks): raw_cls_mask = raw_mask[cls, ...] if self.is_segmentoly else raw_mask - resized_masks.append(self._segm_postprocess(box, raw_cls_mask, *meta['original_shape'][:-1])) - + if resize_mask: + resized_masks.append(self._segm_postprocess(box, raw_cls_mask, *meta['original_shape'][:-1])) + else: + resized_masks.append(raw_cls_mask) + return scores, classes, boxes, resized_masks + def segm_postprocess(self, *args, **kwargs): + return self._segm_postprocess(*args, **kwargs) + + class OTESSDModel(SSD): """OpenVINO model wrapper for OTE SSD model""" diff --git a/external/mmdetection/detection_tasks/apis/detection/openvino_task.py b/external/mmdetection/detection_tasks/apis/detection/openvino_task.py index a96ae67ee01..2e28a00c8cb 100644 --- a/external/mmdetection/detection_tasks/apis/detection/openvino_task.py +++ b/external/mmdetection/detection_tasks/apis/detection/openvino_task.py @@ -32,7 +32,10 @@ from openvino.model_zoo.model_api.models import Model from ote_sdk.entities.annotation import AnnotationSceneEntity from ote_sdk.entities.datasets import DatasetEntity -from ote_sdk.entities.inference_parameters import InferenceParameters, default_progress_callback +from ote_sdk.entities.inference_parameters import ( + InferenceParameters, + default_progress_callback, +) from ote_sdk.entities.label_schema import LabelSchemaEntity from ote_sdk.entities.model import ( ModelEntity, @@ -41,17 +44,20 @@ ModelPrecision, OptimizationMethod, ) +from ote_sdk.configuration.helper.utils import config_to_bytes from ote_sdk.entities.model_template import TaskType from ote_sdk.entities.optimization_parameters import OptimizationParameters from ote_sdk.entities.result_media import ResultMediaEntity from ote_sdk.entities.resultset import ResultSetEntity +from ote_sdk.entities.subset import Subset from ote_sdk.entities.task_environment import TaskEnvironment from ote_sdk.entities.tensor import TensorEntity +from ote_sdk.entities.label import Domain, LabelEntity from ote_sdk.serialization.label_mapper import LabelSchemaMapper, label_schema_to_bytes from ote_sdk.usecases.evaluation.metrics_helper import MetricsHelper from ote_sdk.usecases.exportable_code.inference import BaseInferencer from ote_sdk.usecases.exportable_code.prediction_to_annotation_converter import ( - DetectionBoxToAnnotationConverter, + DetectionToAnnotationConverter, IPredictionToAnnotationConverter, MaskToAnnotationConverter, RotatedRectToAnnotationConverter, @@ -59,14 +65,18 @@ from ote_sdk.usecases.tasks.interfaces.deployment_interface import IDeploymentTask from ote_sdk.usecases.tasks.interfaces.evaluate_interface import IEvaluationTask from ote_sdk.usecases.tasks.interfaces.inference_interface import IInferenceTask -from ote_sdk.usecases.tasks.interfaces.optimization_interface import IOptimizationTask, OptimizationType +from ote_sdk.usecases.tasks.interfaces.optimization_interface import ( + IOptimizationTask, + OptimizationType, +) from ote_sdk.utils.argument_checks import ( DatasetParamTypeCheck, check_input_parameters_type, ) +from ote_sdk.utils import Tiler +from ote_sdk.utils.detection_utils import detection2array from ote_sdk.utils.vis_utils import get_actmap -from shutil import copyfile, copytree -from typing import Any, Dict, List, Optional, Tuple, Union +from typing import Any, Dict, Optional, Tuple, Union from zipfile import ZipFile from mmdet.utils.logger import get_root_logger @@ -77,36 +87,50 @@ class BaseInferencerWithConverter(BaseInferencer): - @check_input_parameters_type() - def __init__(self, configuration: dict, model: Model, converter: IPredictionToAnnotationConverter) -> None: + def __init__( + self, + configuration: dict, + model: Model, + converter: IPredictionToAnnotationConverter, + ) -> None: self.configuration = configuration self.model = model self.converter = converter @check_input_parameters_type() - def pre_process(self, image: np.ndarray) -> Tuple[Dict[str, np.ndarray], Dict[str, Any]]: + def pre_process( + self, image: np.ndarray + ) -> Tuple[Dict[str, np.ndarray], Dict[str, Any]]: return self.model.preprocess(image) @check_input_parameters_type() - def post_process(self, prediction: Dict[str, np.ndarray], metadata: Dict[str, Any]) -> AnnotationSceneEntity: + def post_process( + self, prediction: Dict[str, np.ndarray], metadata: Dict[str, Any] + ) -> AnnotationSceneEntity: detections = self.model.postprocess(prediction, metadata) - return self.converter.convert_to_annotation(detections, metadata) - + @check_input_parameters_type() - def predict(self, image: np.ndarray) -> Tuple[AnnotationSceneEntity, np.ndarray, np.ndarray]: + def predict( + self, image: np.ndarray + ) -> Tuple[AnnotationSceneEntity, np.ndarray, np.ndarray]: image, metadata = self.pre_process(image) raw_predictions = self.forward(image) predictions = self.post_process(raw_predictions, metadata) - if 'feature_vector' not in raw_predictions or 'saliency_map' not in raw_predictions: - warnings.warn('Could not find Feature Vector and Saliency Map in OpenVINO output. ' - 'Please rerun OpenVINO export or retrain the model.') + if ( + "feature_vector" not in raw_predictions + or "saliency_map" not in raw_predictions + ): + warnings.warn( + "Could not find Feature Vector and Saliency Map in OpenVINO output. " + "Please rerun OpenVINO export or retrain the model." + ) features = [None, None] else: features = [ - raw_predictions['feature_vector'].reshape(-1), - raw_predictions['saliency_map'] + raw_predictions["feature_vector"].reshape(-1), + raw_predictions["saliency_map"][0], ] return predictions, features @@ -114,6 +138,28 @@ def predict(self, image: np.ndarray) -> Tuple[AnnotationSceneEntity, np.ndarray, def forward(self, inputs: Dict[str, np.ndarray]) -> Dict[str, np.ndarray]: return self.model.infer_sync(inputs) + @check_input_parameters_type() + def predict_tile( + self, image: np.ndarray, tile_size: int, overlap: float, max_number: int + ) -> Tuple[AnnotationSceneEntity, np.ndarray, np.ndarray]: + """ Run prediction by tiling image to small patches + + Args: + image (np.ndarray): input image + tile_size (int): tile crop size + overlap (float): overlap ratio between tiles + max_number (int): max number of predicted objects allowed + + Returns: + detections: AnnotationSceneEntity + features: list including saliency map and feature vector + """ + segm = isinstance(self.converter, (MaskToAnnotationConverter, RotatedRectToAnnotationConverter)) + tiler = Tiler(tile_size=tile_size, overlap=overlap, max_number=max_number, model=self.model, segm=segm) + detections, features = tiler.predict(image) + detections = self.converter.convert_to_annotation(detections, metadata={"original_shape": image.shape}) + return detections, features + class OpenVINODetectionInferencer(BaseInferencerWithConverter): @check_input_parameters_type() @@ -138,14 +184,35 @@ def __init__( """ - model_adapter = OpenvinoAdapter(create_core(), model_file, weight_file, device=device, max_num_requests=num_requests) - configuration = {**attr.asdict(hparams.postprocessing, - filter=lambda attr, value: attr.name not in ['header', 'description', 'type', 'visible_in_ui'])} - model = Model.create_model('OTE_SSD', model_adapter, configuration, preload=True) - converter = DetectionBoxToAnnotationConverter(label_schema) + model_adapter = OpenvinoAdapter( + create_core(), + model_file, + weight_file, + device=device, + max_num_requests=num_requests, + ) + configuration = { + **attr.asdict( + hparams.postprocessing, + filter=lambda attr, value: attr.name + not in ["header", "description", "type", "visible_in_ui"], + ) + } + model = Model.create_model( + "OTE_SSD", model_adapter, configuration, preload=True + ) + converter = DetectionToAnnotationConverter(label_schema) super().__init__(configuration, model, converter) + @check_input_parameters_type() + def post_process( + self, prediction: Dict[str, np.ndarray], metadata: Dict[str, Any] + ) -> AnnotationSceneEntity: + detections = self.model.postprocess(prediction, metadata) + detections = detection2array(detections) + return self.converter.convert_to_annotation(detections, metadata) + class OpenVINOMaskInferencer(BaseInferencerWithConverter): @check_input_parameters_type() @@ -159,23 +226,24 @@ def __init__( num_requests: int = 1, ): model_adapter = OpenvinoAdapter( - create_core(), - model_file, - weight_file, - device=device, - max_num_requests=num_requests) + create_core(), + model_file, + weight_file, + device=device, + max_num_requests=num_requests, + ) configuration = { - **attr.asdict( - hparams.postprocessing, - filter=lambda attr, value: attr.name not in [ - 'header', 'description', 'type', 'visible_in_ui'])} + **attr.asdict( + hparams.postprocessing, + filter=lambda attr, value: attr.name + not in ["header", "description", "type", "visible_in_ui"], + ) + } model = Model.create_model( - 'ote_maskrcnn', - model_adapter, - configuration, - preload=True) + "ote_maskrcnn", model_adapter, configuration, preload=True + ) converter = MaskToAnnotationConverter(label_schema) @@ -194,23 +262,24 @@ def __init__( num_requests: int = 1, ): model_adapter = OpenvinoAdapter( - create_core(), - model_file, - weight_file, - device=device, - max_num_requests=num_requests) + create_core(), + model_file, + weight_file, + device=device, + max_num_requests=num_requests, + ) configuration = { - **attr.asdict( - hparams.postprocessing, - filter=lambda attr, value: attr.name not in [ - 'header', 'description', 'type', 'visible_in_ui'])} + **attr.asdict( + hparams.postprocessing, + filter=lambda attr, value: attr.name + not in ["header", "description", "type", "visible_in_ui"], + ) + } model = Model.create_model( - 'ote_maskrcnn', - model_adapter, - configuration, - preload=True) + "ote_maskrcnn", model_adapter, configuration, preload=True + ) converter = RotatedRectToAnnotationConverter(label_schema) @@ -235,25 +304,47 @@ def __len__(self): return len(self.dataset) -class OpenVINODetectionTask(IDeploymentTask, IInferenceTask, IEvaluationTask, IOptimizationTask): +class OpenVINODetectionTask( + IDeploymentTask, IInferenceTask, IEvaluationTask, IOptimizationTask +): @check_input_parameters_type() def __init__(self, task_environment: TaskEnvironment): - logger.info('Loading OpenVINO OTEDetectionTask') + logger.info("Loading OpenVINO OTEDetectionTask") self.task_environment = task_environment self.model = self.task_environment.model self.task_type = self.task_environment.model_template.task_type self.confidence_threshold: float = 0.0 + self.config = self.load_config() self.inferencer = self.load_inferencer() - logger.info('OpenVINO task initialization completed') + logger.info("OpenVINO task initialization completed") @property def hparams(self): return self.task_environment.get_hyper_parameters(OTEDetectionConfig) - def load_inferencer(self) -> Union[OpenVINODetectionInferencer, OpenVINOMaskInferencer] : + def load_config(self) -> Dict: + """ Load configurable parameters from model adapter + + Returns: + Dict: config dictionary + """ + if self.model.get_data("config.json"): + return json.loads(self.model.get_data("config.json")) + return dict() + + def load_inferencer( + self, + ) -> Union[OpenVINODetectionInferencer, OpenVINOMaskInferencer]: _hparams = copy.deepcopy(self.hparams) - self.confidence_threshold = float(np.frombuffer(self.model.get_data("confidence_threshold"), dtype=np.float32)[0]) + self.confidence_threshold = float( + np.frombuffer( + self.model.get_data("confidence_threshold"), dtype=np.float32 + )[0] + ) _hparams.postprocessing.confidence_threshold = self.confidence_threshold + _hparams.tiling_parameters.enable_tiling = self.config["tiling_parameters"][ + "enable_tiling" + ]["value"] args = [ _hparams, self.task_environment.label_schema, @@ -269,87 +360,185 @@ def load_inferencer(self) -> Union[OpenVINODetectionInferencer, OpenVINOMaskInfe raise RuntimeError(f"Unknown OpenVINO Inferencer TaskType: {self.task_type}") @check_input_parameters_type({"dataset": DatasetParamTypeCheck}) - def infer(self, dataset: DatasetEntity, inference_parameters: Optional[InferenceParameters] = None) -> DatasetEntity: - logger.info('Start OpenVINO inference') + def infer( + self, + dataset: DatasetEntity, + inference_parameters: Optional[InferenceParameters] = None, + ) -> DatasetEntity: + logger.info("Start OpenVINO inference") update_progress_callback = default_progress_callback add_saliency_map = True if inference_parameters is not None: update_progress_callback = inference_parameters.update_progress add_saliency_map = not inference_parameters.is_evaluation + + if self.config and self.config["tiling_parameters"]["enable_tiling"]["value"]: + tile_size = self.config["tiling_parameters"]["tile_size"]["value"] + tile_overlap = self.config["tiling_parameters"]["tile_overlap"]["value"] + max_number = self.config["tiling_parameters"]["tile_max_number"]["value"] + logger.info("Run inference with tiling") + dataset_size = len(dataset) for i, dataset_item in enumerate(dataset, 1): - predicted_scene, features = self.inferencer.predict(dataset_item.numpy) + if self.config["tiling_parameters"]["enable_tiling"]["value"]: + predicted_scene, features = self.inferencer.predict_tile( + dataset_item.numpy, + tile_size=tile_size, + overlap=tile_overlap, + max_number=max_number, + ) + else: + predicted_scene, features = self.inferencer.predict(dataset_item.numpy) + dataset_item.append_annotations(predicted_scene.annotations) update_progress_callback(int(i / dataset_size * 100)) feature_vector, saliency_map = features if feature_vector is not None: - representation_vector = TensorEntity(name="representation_vector", numpy=feature_vector.reshape(-1)) - dataset_item.append_metadata_item(representation_vector, model=self.model) + representation_vector = TensorEntity( + name="representation_vector", numpy=feature_vector.reshape(-1) + ) + dataset_item.append_metadata_item( + representation_vector, model=self.model + ) if add_saliency_map and saliency_map is not None: - saliency_map = get_actmap(saliency_map, (dataset_item.width, dataset_item.height)) - saliency_map_media = ResultMediaEntity(name="Saliency Map", type="saliency_map", - annotation_scene=dataset_item.annotation_scene, - numpy=saliency_map, roi=dataset_item.roi) - dataset_item.append_metadata_item(saliency_map_media, model=self.model) - logger.info('OpenVINO inference completed') + if saliency_map.ndim == 2: + # Single saliency map per image, support e.g. EigenCAM use case + actmap = get_actmap( + saliency_map, (dataset_item.width, dataset_item.height) + ) + saliency_media = ResultMediaEntity( + name="Saliency Map", + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=actmap, + roi=dataset_item.roi + ) + dataset_item.append_metadata_item(saliency_media, model=self.model) + elif saliency_map.ndim == 3: + # Multiple saliency maps per image (class-wise saliency map) + predicted_labels = set() + for bbox in predicted_scene.annotations: + scored_label = bbox.get_labels()[0] + predicted_labels.add(scored_label.label) + + labels = self.task_environment.get_labels() + num_saliency_maps = saliency_map.shape[0] + if num_saliency_maps == len(labels) + 1: + # Include the background as the last category + labels.append(LabelEntity('background', Domain.DETECTION)) + + for class_id, class_wise_saliency_map in enumerate(saliency_map): + label = labels[class_id] + if label in predicted_labels: + # TODO (negvet): Support more advanced use case, + # when all/configurable set of saliency maps is returned + actmap = get_actmap( + class_wise_saliency_map, (dataset_item.width, dataset_item.height) + ) + saliency_media = ResultMediaEntity( + name=label.name, + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=actmap, + roi=dataset_item.roi, + label=label + ) + dataset_item.append_metadata_item(saliency_media, model=self.model) + else: + raise RuntimeError(f'Single saliency map has to be 2 or 3-dimensional, ' + f'but got {saliency_map.ndim} dims') + logger.info("OpenVINO inference completed") return dataset @check_input_parameters_type() - def evaluate(self, - output_result_set: ResultSetEntity, - evaluation_metric: Optional[str] = None): - logger.info('Start OpenVINO metric evaluation') + def evaluate( + self, + output_result_set: ResultSetEntity, + evaluation_metric: Optional[str] = None, + ): + logger.info("Start OpenVINO metric evaluation") if evaluation_metric is not None: - logger.warning(f'Requested to use {evaluation_metric} metric, but parameter is ignored. Use F-measure instead.') - output_result_set.performance = MetricsHelper.compute_f_measure(output_result_set).get_performance() - logger.info('OpenVINO metric evaluation completed') + logger.warning( + f"Requested to use {evaluation_metric} metric, but parameter is ignored. Use F-measure instead." + ) + output_result_set.performance = MetricsHelper.compute_f_measure( + output_result_set + ).get_performance() + logger.info("OpenVINO metric evaluation completed") @check_input_parameters_type() - def deploy(self, - output_model: ModelEntity) -> None: - logger.info('Deploying the model') + def deploy(self, output_model: ModelEntity) -> None: + logger.info("Deploying the model") work_dir = os.path.dirname(demo.__file__) parameters = {} - parameters['type_of_model'] = self.inferencer.model.__model__ - parameters['converter_type'] = str(self.task_type) - parameters['model_parameters'] = self.inferencer.configuration - parameters['model_parameters']['labels'] = LabelSchemaMapper.forward(self.task_environment.label_schema) + parameters["type_of_model"] = self.inferencer.model.__model__ + parameters["converter_type"] = str(self.task_type) + parameters["model_parameters"] = self.inferencer.configuration + parameters["model_parameters"]["labels"] = LabelSchemaMapper.forward( + self.task_environment.label_schema + ) + parameters["tiling_parameters"] = self.config["tiling_parameters"] zip_buffer = io.BytesIO() - with ZipFile(zip_buffer, 'w') as arch: + with ZipFile(zip_buffer, "w") as arch: # model files - arch.writestr(os.path.join("model", "model.xml"), self.model.get_data("openvino.xml")) - arch.writestr(os.path.join("model", "model.bin"), self.model.get_data("openvino.bin")) arch.writestr( - os.path.join("model", "config.json"), json.dumps(parameters, ensure_ascii=False, indent=4) + os.path.join("model", "model.xml"), self.model.get_data("openvino.xml") + ) + arch.writestr( + os.path.join("model", "model.bin"), self.model.get_data("openvino.bin") + ) + arch.writestr( + os.path.join("model", "config.json"), + json.dumps(parameters, ensure_ascii=False, indent=4), ) # model_wrappers files for root, dirs, files in os.walk(os.path.dirname(model_wrappers.__file__)): for file in files: file_path = os.path.join(root, file) - arch.write(file_path, - os.path.join("python", "model_wrappers", file_path.split("model_wrappers/")[1])) + arch.write( + file_path, + os.path.join( + "python", + "model_wrappers", + file_path.split("model_wrappers/")[1], + ), + ) # python files - arch.write(os.path.join(work_dir, "requirements.txt"), os.path.join("python", "requirements.txt")) - arch.write(os.path.join(work_dir, "LICENSE"), os.path.join("python", "LICENSE")) - arch.write(os.path.join(work_dir, "README.md"), os.path.join("python", "README.md")) - arch.write(os.path.join(work_dir, "demo.py"), os.path.join("python", "demo.py")) + arch.write( + os.path.join(work_dir, "requirements.txt"), + os.path.join("python", "requirements.txt"), + ) + arch.write( + os.path.join(work_dir, "LICENSE"), os.path.join("python", "LICENSE") + ) + arch.write( + os.path.join(work_dir, "README.md"), os.path.join("python", "README.md") + ) + arch.write( + os.path.join(work_dir, "demo.py"), os.path.join("python", "demo.py") + ) output_model.exportable_code = zip_buffer.getvalue() - logger.info('Deploying completed') + logger.info("Deploying completed") @check_input_parameters_type({"dataset": DatasetParamTypeCheck}) - def optimize(self, - optimization_type: OptimizationType, - dataset: DatasetEntity, - output_model: ModelEntity, - optimization_parameters: Optional[OptimizationParameters] = None): - logger.info('Start POT optimization') + def optimize( + self, + optimization_type: OptimizationType, + dataset: DatasetEntity, + output_model: ModelEntity, + optimization_parameters: Optional[OptimizationParameters] = None, + ): + logger.info("Start POT optimization") if optimization_type is not OptimizationType.POT: - raise ValueError('POT is the only supported optimization type for OpenVino models') + raise ValueError( + "POT is the only supported optimization type for OpenVino models" + ) + dataset = dataset.get_subset(Subset.TRAINING) data_loader = OTEOpenVinoDataLoader(dataset, self.inferencer) with tempfile.TemporaryDirectory() as tempdir: @@ -360,37 +549,40 @@ def optimize(self, with open(bin_path, "wb") as f: f.write(self.model.get_data("openvino.bin")) - model_config = ADDict({ - 'model_name': 'openvino_model', - 'model': xml_path, - 'weights': bin_path - }) + model_config = ADDict( + {"model_name": "openvino_model", "model": xml_path, "weights": bin_path} + ) model = load_model(model_config) - if get_nodes_by_type(model, ['FakeQuantize']): + if get_nodes_by_type(model, ["FakeQuantize"]): raise RuntimeError("Model is already optimized by POT") if optimization_parameters is not None: optimization_parameters.update_progress(10) - engine_config = ADDict({ - 'device': 'CPU', - 'stat_requests_number': min(self.hparams.pot_parameters.stat_requests_number, multiprocessing.cpu_count()), - }) + engine_config = ADDict( + { + "device": "CPU", + "stat_requests_number": min( + self.hparams.pot_parameters.stat_requests_number, + multiprocessing.cpu_count(), + ), + } + ) stat_subset_size = self.hparams.pot_parameters.stat_subset_size preset = self.hparams.pot_parameters.preset.name.lower() algorithms = [ { - 'name': 'DefaultQuantization', - 'params': { - 'target_device': 'ANY', - 'preset': preset, - 'stat_subset_size': min(stat_subset_size, len(data_loader)), - 'shuffle_data': True - } + "name": "DefaultQuantization", + "params": { + "target_device": "ANY", + "preset": preset, + "stat_subset_size": min(stat_subset_size, len(data_loader)), + "shuffle_data": True, + }, } ] @@ -411,9 +603,16 @@ def optimize(self, output_model.set_data("openvino.xml", f.read()) with open(os.path.join(tempdir, "model.bin"), "rb") as f: output_model.set_data("openvino.bin", f.read()) - output_model.set_data("confidence_threshold", np.array([self.confidence_threshold], dtype=np.float32).tobytes()) + output_model.set_data( + "confidence_threshold", + np.array([self.confidence_threshold], dtype=np.float32).tobytes(), + ) - output_model.set_data("label_schema.json", label_schema_to_bytes(self.task_environment.label_schema)) + output_model.set_data( + "label_schema.json", + label_schema_to_bytes(self.task_environment.label_schema), + ) + output_model.set_data("config.json", config_to_bytes(self.hparams)) # set model attributes for quantized model output_model.model_format = ModelFormat.OPENVINO @@ -423,7 +622,7 @@ def optimize(self, self.model = output_model self.inferencer = self.load_inferencer() - logger.info('POT optimization completed') + logger.info("POT optimization completed") if optimization_parameters is not None: optimization_parameters.update_progress(100) diff --git a/external/mmdetection/detection_tasks/apis/detection/train_task.py b/external/mmdetection/detection_tasks/apis/detection/train_task.py index a7a3b359453..959ae9edf1d 100644 --- a/external/mmdetection/detection_tasks/apis/detection/train_task.py +++ b/external/mmdetection/detection_tasks/apis/detection/train_task.py @@ -183,7 +183,7 @@ def train(self, dataset: DatasetEntity, output_model: ModelEntity, train_paramet metric = MetricsHelper.compute_f_measure(resultset, vary_confidence_threshold=False) # Compose performance statistics. - # TODO[EUGENE]: ADD MAE CURVE FOR TaskType.COUNTING + # TODO[EUGENE]: HOW TO ADD A MAE CURVE FOR TaskType.COUNTING? performance = metric.get_performance() performance.dashboard_metrics.extend(self._generate_training_metrics(learning_curves, val_map)) logger.info(f'Final model performance: {str(performance)}') diff --git a/external/mmdetection/detection_tasks/extension/datasets/__init__.py b/external/mmdetection/detection_tasks/extension/datasets/__init__.py index e9bc5ab37d1..ae15db72655 100644 --- a/external/mmdetection/detection_tasks/extension/datasets/__init__.py +++ b/external/mmdetection/detection_tasks/extension/datasets/__init__.py @@ -12,7 +12,10 @@ # See the License for the specific language governing permissions # and limitations under the License. -from .data_utils import get_anchor_boxes, get_sizes_from_dataset_entity, format_list_to_str +from .data_utils import get_anchor_boxes, get_sizes_from_dataset_entity, format_list_to_str, adaptive_tile_params from .mmdataset import OTEDataset, get_annotation_mmdet_format -__all__ = [OTEDataset, get_annotation_mmdet_format, get_anchor_boxes, get_sizes_from_dataset_entity, format_list_to_str] +__all__ = [ + OTEDataset, get_annotation_mmdet_format, get_anchor_boxes, get_sizes_from_dataset_entity, format_list_to_str, + adaptive_tile_params +] diff --git a/external/mmdetection/detection_tasks/extension/datasets/data_utils.py b/external/mmdetection/detection_tasks/extension/datasets/data_utils.py index be1ee03b8e9..7795c2dc6d0 100644 --- a/external/mmdetection/detection_tasks/extension/datasets/data_utils.py +++ b/external/mmdetection/detection_tasks/extension/datasets/data_utils.py @@ -2,6 +2,7 @@ # SPDX-License-Identifier: Apache-2.0 # import json +import math import os.path as osp from typing import Any, Dict, List, Optional, Sequence @@ -25,8 +26,8 @@ ) from ote_sdk.utils.shape_factory import ShapeFactory from pycocotools.coco import COCO +from .mmdataset import get_annotation_mmdet_format -from mmdet.core import BitmapMasks, PolygonMasks @check_input_parameters_type({"path": JsonFilePathCheck}) def get_classes_from_annotation(path): @@ -413,3 +414,47 @@ def format_list_to_str(value_lists: list): for value_list in value_lists: str_value += '[' + ', '.join(f'{value:.2f}' for value in value_list) + '], ' return f'[{str_value[:-2]}]' + + +def adaptive_tile_params(dataset: DatasetEntity, object_tile_ratio=0.01, rule="avg") -> Dict: + """ Config tile parameters (i.e. tile size, tile overlap, ratio and max objects per sample) + adaptively based on annotation statistics. + + Args: + dataset (DatasetEntity): training dataset + object_tile_ratio (float, optional): The desired ratio of object area and tile area. Defaults to 0.01. + rule (str, optional): min or avg. In `min` mode, tile size is computed based on the smallest object, and in + `avg` mode tile size is computed by averaging all the object areas. Defaults to "avg". + + Returns: + Dict: adaptive tile parameters + """ + assert rule in ["min", "avg"], f"Unknown rule: {rule}" + + tile_cfg = dict(tile_size=None, tile_overlap=None, tile_max_number=None) + bboxes = np.zeros((0, 4), dtype=np.float32) + labels = dataset.get_labels(include_empty=False) + domain = labels[0].domain + max_object = 0 + for dataset_item in dataset: + result = get_annotation_mmdet_format(dataset_item, labels, domain) + if len(result['bboxes']): + bboxes = np.concatenate((bboxes, result['bboxes']), 0) + if len(result['bboxes']) > max_object: + max_object = len(result['bboxes']) + + areas = (bboxes[:, 2] - bboxes[:, 0]) * (bboxes[:, 3] - bboxes[:, 1]) + + if rule == "min": + object_area = np.min(areas) + elif rule == "avg": + object_area = np.mean(areas) + max_area = np.max(areas) + + tile_size = int(math.sqrt(object_area/object_tile_ratio)) + overlap_ratio = max_area/(tile_size**2) if max_area/(tile_size**2) < 1.0 else None + + tile_cfg.update(dict(tile_size=tile_size, tile_max_number=max_object)) + if overlap_ratio: + tile_cfg.update(dict(tile_overlap=overlap_ratio)) + return tile_cfg diff --git a/external/mmdetection/detection_tasks/extension/datasets/mmdataset.py b/external/mmdetection/detection_tasks/extension/datasets/mmdataset.py index ccc280c8440..8a73da659ba 100644 --- a/external/mmdetection/detection_tasks/extension/datasets/mmdataset.py +++ b/external/mmdetection/detection_tasks/extension/datasets/mmdataset.py @@ -139,12 +139,13 @@ def __getitem__(self, index): @check_input_parameters_type({"ote_dataset": DatasetParamTypeCheck}) def __init__( - self, - ote_dataset: DatasetEntity, - labels: List[LabelEntity], - pipeline: Sequence[dict], - domain: Domain, - test_mode: bool = False, + self, + ote_dataset: DatasetEntity, + labels: List[LabelEntity], + pipeline: Sequence[dict], + domain: Domain, + test_mode: bool = False, + **kwargs, ): self.ote_dataset = ote_dataset self.labels = labels diff --git a/external/mmsegmentation/segmentation_tasks/apis/segmentation/inference_task.py b/external/mmsegmentation/segmentation_tasks/apis/segmentation/inference_task.py index 02431bdfc74..91bb435810d 100644 --- a/external/mmsegmentation/segmentation_tasks/apis/segmentation/inference_task.py +++ b/external/mmsegmentation/segmentation_tasks/apis/segmentation/inference_task.py @@ -229,7 +229,7 @@ def _add_predictions_to_dataset(self, prediction_results, dataset, dump_soft_pre current_label_soft_prediction = soft_prediction[:, :, label_index] class_act_map = get_activation_map(current_label_soft_prediction) - result_media = ResultMediaEntity(name='Soft Prediction', + result_media = ResultMediaEntity(name=label.name, type='soft_prediction', label=label, annotation_scene=dataset_item.annotation_scene, diff --git a/external/mmsegmentation/segmentation_tasks/apis/segmentation/openvino_task.py b/external/mmsegmentation/segmentation_tasks/apis/segmentation/openvino_task.py index b2695cb2f10..65cc59032b1 100644 --- a/external/mmsegmentation/segmentation_tasks/apis/segmentation/openvino_task.py +++ b/external/mmsegmentation/segmentation_tasks/apis/segmentation/openvino_task.py @@ -39,6 +39,7 @@ from ote_sdk.entities.tensor import TensorEntity from ote_sdk.entities.resultset import ResultSetEntity from ote_sdk.entities.result_media import ResultMediaEntity +from ote_sdk.entities.subset import Subset from ote_sdk.entities.task_environment import TaskEnvironment from ote_sdk.usecases.evaluation.metrics_helper import MetricsHelper from ote_sdk.usecases.exportable_code.inference import BaseInferencer @@ -184,7 +185,7 @@ def infer(self, continue current_label_soft_prediction = soft_prediction[:, :, label_index] class_act_map = get_activation_map(current_label_soft_prediction) - result_media = ResultMediaEntity(name='Soft Prediction', + result_media = ResultMediaEntity(name=label.name, type='soft_prediction', label=label, annotation_scene=dataset_item.annotation_scene, @@ -252,6 +253,7 @@ def optimize(self, if optimization_type is not OptimizationType.POT: raise ValueError("POT is the only supported optimization type for OpenVino models") + dataset = dataset.get_subset(Subset.TRAINING) data_loader = OTEOpenVinoDataLoader(dataset, self.inferencer) with tempfile.TemporaryDirectory() as tempdir: diff --git a/external/mmsegmentation/segmentation_tasks/extension/datasets/mmdataset.py b/external/mmsegmentation/segmentation_tasks/extension/datasets/mmdataset.py index aa5eb645bf9..5592ce260e2 100644 --- a/external/mmsegmentation/segmentation_tasks/extension/datasets/mmdataset.py +++ b/external/mmsegmentation/segmentation_tasks/extension/datasets/mmdataset.py @@ -82,7 +82,12 @@ class _DataInfoProxy: forwards data access operations to ote_dataset and converts the dataset items to the view convenient for mmsegmentation. """ - def __init__(self, ote_dataset, labels=None): + def __init__( + self, + ote_dataset, + labels=None, + **kwargs, + ): self.ote_dataset = ote_dataset self.labels = labels self.label_idx = {label.id: i for i, label in enumerate(labels)} diff --git a/external/model-preparation-algorithm/configs/classification/configuration.yaml b/external/model-preparation-algorithm/configs/classification/configuration.yaml index 0ef6d2df2bd..6bf9c33a822 100644 --- a/external/model-preparation-algorithm/configs/classification/configuration.yaml +++ b/external/model-preparation-algorithm/configs/classification/configuration.yaml @@ -83,7 +83,7 @@ learning_parameters: warning: null num_workers: affects_outcome_of: NONE - default_value: 0 + default_value: 2 description: Increasing this value might improve training speed however it might cause out of memory errors. If the number of workers is set to zero, data loading diff --git a/external/model-preparation-algorithm/configs/classification/efficientnet_b0_cls_incr/template.yaml b/external/model-preparation-algorithm/configs/classification/efficientnet_b0_cls_incr/template.yaml index f4facd27467..cb781e955b5 100644 --- a/external/model-preparation-algorithm/configs/classification/efficientnet_b0_cls_incr/template.yaml +++ b/external/model-preparation-algorithm/configs/classification/efficientnet_b0_cls_incr/template.yaml @@ -29,8 +29,6 @@ hyper_parameters: batch_size: default_value: 64 auto_hpo_state: POSSIBLE - num_workers: - default_value: 0 learning_rate: default_value: 0.0049 auto_hpo_state: POSSIBLE diff --git a/external/model-preparation-algorithm/configs/classification/efficientnet_v2_s_cls_incr/template.yaml b/external/model-preparation-algorithm/configs/classification/efficientnet_v2_s_cls_incr/template.yaml index ea8254c8567..999c3d5782b 100644 --- a/external/model-preparation-algorithm/configs/classification/efficientnet_v2_s_cls_incr/template.yaml +++ b/external/model-preparation-algorithm/configs/classification/efficientnet_v2_s_cls_incr/template.yaml @@ -29,8 +29,6 @@ hyper_parameters: batch_size: default_value: 64 auto_hpo_state: POSSIBLE - num_workers: - default_value: 0 learning_rate: default_value: 0.0071 auto_hpo_state: POSSIBLE diff --git a/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_075_cls_incr/template_experiment.yaml b/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_075_cls_incr/template_experiment.yaml index 701911531d8..2380b8ab84a 100644 --- a/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_075_cls_incr/template_experiment.yaml +++ b/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_075_cls_incr/template_experiment.yaml @@ -29,8 +29,6 @@ hyper_parameters: batch_size: default_value: 32 auto_hpo_state: POSSIBLE - num_workers: - default_value: 4 learning_rate: default_value: 0.016 auto_hpo_state: POSSIBLE diff --git a/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_1_cls_incr/template.yaml b/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_1_cls_incr/template.yaml index 4e3ef04a706..1e265dc3896 100644 --- a/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_1_cls_incr/template.yaml +++ b/external/model-preparation-algorithm/configs/classification/mobilenet_v3_large_1_cls_incr/template.yaml @@ -29,8 +29,6 @@ hyper_parameters: batch_size: default_value: 64 auto_hpo_state: POSSIBLE - num_workers: - default_value: 0 learning_rate: default_value: 0.0058 auto_hpo_state: POSSIBLE diff --git a/external/model-preparation-algorithm/configs/classification/mobilenet_v3_small_cls_incr/template_experiment.yaml b/external/model-preparation-algorithm/configs/classification/mobilenet_v3_small_cls_incr/template_experiment.yaml index b78dbc779a4..f906c9982c1 100644 --- a/external/model-preparation-algorithm/configs/classification/mobilenet_v3_small_cls_incr/template_experiment.yaml +++ b/external/model-preparation-algorithm/configs/classification/mobilenet_v3_small_cls_incr/template_experiment.yaml @@ -29,8 +29,6 @@ hyper_parameters: batch_size: default_value: 32 auto_hpo_state: POSSIBLE - num_workers: - default_value: 4 learning_rate: default_value: 0.016 auto_hpo_state: POSSIBLE diff --git a/external/model-preparation-algorithm/configs/detection/configuration.yaml b/external/model-preparation-algorithm/configs/detection/configuration.yaml index 52fede995b6..5cea58ea905 100644 --- a/external/model-preparation-algorithm/configs/detection/configuration.yaml +++ b/external/model-preparation-algorithm/configs/detection/configuration.yaml @@ -101,7 +101,7 @@ learning_parameters: warning: null num_workers: affects_outcome_of: NONE - default_value: 0 + default_value: 2 description: Increasing this value might improve training speed however it might cause out of memory errors. If the number of workers is set to zero, data loading @@ -390,3 +390,96 @@ nncf_optimization: warning: null type: PARAMETER_GROUP visible_in_ui: True + +tiling_parameters: + header: Tiling + description: Crop dataset to tiles + + enable_tiling: + header: Enable tiling + description: Set to True to allow tiny objects to be better detected. + default_value: false + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: Tiling trades off speed for accuracy as it increases the number of images to be processed. + + enable_adaptive_params: + header: Enable adaptive tiling parameters + description: Config tile size and tile overlap adaptively based on annotated dataset statistic + default_value: true + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + + tile_size: + header: Tile Image Size + description: Tile Image Size + affects_outcome_of: TRAINING + default_value: 400 + min_value: 100 + max_value: 1024 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 400 + visible_in_ui: true + warning: null + + tile_overlap: + header: Tile Overlap + description: Overlap between each two neighboring tiles. + affects_outcome_of: TRAINING + default_value: 0.2 + min_value: 0.0 + max_value: 1.0 + type: FLOAT + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.2 + visible_in_ui: true + warning: null + + tile_max_number: + header: Max object per image + description: Max object per image + affects_outcome_of: TRAINING + default_value: 1500 + min_value: 1 + max_value: 10000 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 1500 + visible_in_ui: true + warning: null + + type: PARAMETER_GROUP + visible_in_ui: true diff --git a/external/model-preparation-algorithm/configs/detection/cspdarknet_yolox_cls_incr/tile_pipeline.py b/external/model-preparation-algorithm/configs/detection/cspdarknet_yolox_cls_incr/tile_pipeline.py new file mode 100644 index 00000000000..8a9c971ef1e --- /dev/null +++ b/external/model-preparation-algorithm/configs/detection/cspdarknet_yolox_cls_incr/tile_pipeline.py @@ -0,0 +1,95 @@ +# TODO[EUGENE]: SKIP MOSAIC AND MultiImageMixDataset in tiling + +dataset_type = "CocoDataset" + +img_scale = (640, 640) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="RandomAffine", scaling_ratio_range=(0.5, 1.5), border=(-img_scale[0] // 2, -img_scale[1] // 2)), + dict( + type="PhotoMetricDistortion", + brightness_delta=32, + contrast_range=(0.5, 1.5), + saturation_range=(0.5, 1.5), + hue_delta=18, + ), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Resize", img_scale=img_scale, keep_ratio=False), + dict(type="Pad", pad_to_square=True, pad_val=114.0), + dict(type="Normalize", **img_norm_cfg), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=(416, 416), + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Pad", size=(416, 416), pad_val=114.0), + dict(type="Normalize", **img_norm_cfg), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 2 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile", to_float32=True), + dict(type="LoadAnnotations", with_bbox=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=4, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/detection/mobilenetv2_atss_cls_incr/tile_pipeline.py b/external/model-preparation-algorithm/configs/detection/mobilenetv2_atss_cls_incr/tile_pipeline.py new file mode 100644 index 00000000000..2f002c36721 --- /dev/null +++ b/external/model-preparation-algorithm/configs/detection/mobilenetv2_atss_cls_incr/tile_pipeline.py @@ -0,0 +1,89 @@ +dataset_type = "CocoDataset" + +img_size = (992, 736) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[0, 0, 0], std=[255, 255, 255], to_rgb=True) + +train_pipeline = [ + dict(type="MinIoURandomCrop", min_ious=(0.1, 0.3, 0.5, 0.7, 0.9), min_crop_size=0.3), + dict( + type="Resize", + img_scale=[(992, 736), (896, 736), (1088, 736), (992, 672), (992, 800)], + multiscale_mode="value", + keep_ratio=False, + ), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 2 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/data_pipeline.py b/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/data_pipeline.py index aa767264acc..1fa62278803 100644 --- a/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/data_pipeline.py +++ b/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/data_pipeline.py @@ -37,15 +37,10 @@ samples_per_gpu=10, workers_per_gpu=4, train=dict( - type="RepeatDataset", - times=1, - adaptive_repeat_times=True, - dataset=dict( - type=dataset_type, - ann_file="data/coco/annotations/instances_train2017.json", - img_prefix="data/coco/train2017", - pipeline=train_pipeline, - ), + type=dataset_type, + ann_file="data/coco/annotations/instances_train2017.json", + img_prefix="data/coco/train2017", + pipeline=train_pipeline, ), val=dict( type=dataset_type, diff --git a/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/tile_pipeline.py b/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/tile_pipeline.py new file mode 100644 index 00000000000..63d719a3562 --- /dev/null +++ b/external/model-preparation-algorithm/configs/detection/mobilenetv2_ssd_cls_incr/tile_pipeline.py @@ -0,0 +1,87 @@ +dataset_type = "CocoDataset" + +img_size = (864, 864) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[0, 0, 0], std=[255, 255, 255], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="Normalize", **img_norm_cfg), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="Normalize", **img_norm_cfg), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 10 +__workers_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, + workers_per_gpu=__workers_per_gpu, + train=train_dataset, + val=val_dataset, + test=test_dataset, +) diff --git a/external/model-preparation-algorithm/configs/detection/resnet50_vfnet_cls_incr/tile_pipeline.py b/external/model-preparation-algorithm/configs/detection/resnet50_vfnet_cls_incr/tile_pipeline.py new file mode 100644 index 00000000000..6da01fe0015 --- /dev/null +++ b/external/model-preparation-algorithm/configs/detection/resnet50_vfnet_cls_incr/tile_pipeline.py @@ -0,0 +1,85 @@ +dataset_type = "CocoDataset" + +img_size = (1024, 1024) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/configuration.yaml b/external/model-preparation-algorithm/configs/instance-segmentation/configuration.yaml index ca015e3ad85..d6be511476a 100644 --- a/external/model-preparation-algorithm/configs/instance-segmentation/configuration.yaml +++ b/external/model-preparation-algorithm/configs/instance-segmentation/configuration.yaml @@ -390,3 +390,96 @@ nncf_optimization: warning: null type: PARAMETER_GROUP visible_in_ui: True + +tiling_parameters: + header: Tiling + description: Crop dataset to tiles + + enable_tiling: + header: Enable tiling + description: Set to True to allow tiny objects to be better detected. + default_value: false + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: Tiling trades off speed for accuracy as it increases the number of images to be processed. + + enable_adaptive_params: + header: Enable adaptive tiling parameters + description: Config tile size and tile overlap adaptively based on annotated dataset statistic + default_value: True + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + + tile_size: + header: Tile Image Size + description: Tile Image Size + affects_outcome_of: TRAINING + default_value: 400 + min_value: 100 + max_value: 1024 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 400 + visible_in_ui: true + warning: null + + tile_overlap: + header: Tile Overlap + description: Overlap between each two neighboring tiles. + affects_outcome_of: TRAINING + default_value: 0.2 + min_value: 0.0 + max_value: 1.0 + type: FLOAT + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.2 + visible_in_ui: true + warning: null + + tile_max_number: + header: Max object per image + description: Max object per image + affects_outcome_of: TRAINING + default_value: 1500 + min_value: 1 + max_value: 10000 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 1500 + visible_in_ui: true + warning: null + + type: PARAMETER_GROUP + visible_in_ui: true diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/data_pipeline.py b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/data_pipeline.py index 5d9a93307a5..6fb5a3644e3 100644 --- a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/data_pipeline.py +++ b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/data_pipeline.py @@ -1,7 +1,7 @@ dataset_type = "CocoDataset" img_size = (1024, 1024) -img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=False) +img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=True) train_pipeline = [ dict(type="LoadImageFromFile"), diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/model.py b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/model.py index 4bece262367..270fe124423 100644 --- a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/model.py +++ b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/model.py @@ -2,4 +2,5 @@ "../../../submodule/samples/cfgs/models/backbones/efficientnet_b2b.yaml", "../../../submodule/recipes/stages/_base_/models/detectors/efficientnetb2b_maskrcnn.custom.py", ] +evaluation = dict(interval=1, metric="mAP", save_best="mAP", iou_thr=[0.5]) fp16 = dict(loss_scale=512.0) diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/template.yaml b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/template.yaml index 38d4076a20b..8fb44131540 100644 --- a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/template.yaml +++ b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/template.yaml @@ -14,7 +14,6 @@ framework: OTEDetection v2.9.1 entrypoints: base: mpa_tasks.apis.detection.DetectionTrainTask openvino: detection_tasks.apis.detection.OpenVINODetectionTask - nncf: mpa_tasks.apis.detection.DetectionNNCFTask base_model_path: ../../../../mmdetection/configs/custom-counting-instance-seg/efficientnetb2b_maskrcnn/template_experimental.yaml # Capabilities. @@ -41,7 +40,7 @@ hyper_parameters: default_value: 2 nncf_optimization: enable_quantization: - default_value: true + default_value: false enable_pruning: default_value: false pruning_supported: diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py new file mode 100644 index 00000000000..0166cdf6c94 --- /dev/null +++ b/external/model-preparation-algorithm/configs/instance-segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py @@ -0,0 +1,85 @@ +dataset_type = "CocoDataset" + +img_size = (1024, 1024) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/model.py b/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/model.py index 0838604070b..d9484673c0c 100644 --- a/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/model.py +++ b/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/model.py @@ -2,3 +2,4 @@ "../../../submodule/samples/cfgs/models/backbones/resnet50.yaml", "../../../submodule/recipes/stages/_base_/models/detectors/resnet50_maskrcnn.custom.py", ] +evaluation = dict(interval=1, metric="mAP", save_best="mAP", iou_thr=[0.5]) diff --git a/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/tile_pipeline.py b/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/tile_pipeline.py new file mode 100644 index 00000000000..899e30ced16 --- /dev/null +++ b/external/model-preparation-algorithm/configs/instance-segmentation/resnet50_maskrcnn/tile_pipeline.py @@ -0,0 +1,85 @@ +dataset_type = "CocoDataset" + +img_size = (1344, 800) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/rotated-detection/configuration.yaml b/external/model-preparation-algorithm/configs/rotated-detection/configuration.yaml index 1085d2eed84..4b63de1715d 100644 --- a/external/model-preparation-algorithm/configs/rotated-detection/configuration.yaml +++ b/external/model-preparation-algorithm/configs/rotated-detection/configuration.yaml @@ -376,3 +376,95 @@ nncf_optimization: warning: null type: PARAMETER_GROUP visible_in_ui: True +tiling_parameters: + header: Tiling + description: Crop dataset to tiles + + enable_tiling: + header: Enable tiling + description: Set to True to allow tiny objects to be better detected. + default_value: false + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: Tiling trades off speed for accuracy as it increases the number of images to be processed. + + enable_adaptive_params: + header: Enable adaptive tiling parameters + description: Config tile size and tile overlap adaptively based on annotated dataset statistic + default_value: True + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + + tile_size: + header: Tile Image Size + description: Tile Image Size + affects_outcome_of: TRAINING + default_value: 400 + min_value: 100 + max_value: 1024 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 400 + visible_in_ui: true + warning: null + + tile_overlap: + header: Tile Overlap + description: Overlap between each two neighboring tiles. + affects_outcome_of: TRAINING + default_value: 0.2 + min_value: 0.0 + max_value: 1.0 + type: FLOAT + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.2 + visible_in_ui: true + warning: null + + tile_max_number: + header: Max object per image + description: Max object per image + affects_outcome_of: TRAINING + default_value: 1500 + min_value: 1 + max_value: 10000 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 1500 + visible_in_ui: true + warning: null + + type: PARAMETER_GROUP + visible_in_ui: true diff --git a/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/data_pipeline.py b/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/data_pipeline.py index 5d9a93307a5..6fb5a3644e3 100644 --- a/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/data_pipeline.py +++ b/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/data_pipeline.py @@ -1,7 +1,7 @@ dataset_type = "CocoDataset" img_size = (1024, 1024) -img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=False) +img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=True) train_pipeline = [ dict(type="LoadImageFromFile"), diff --git a/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/model.py b/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/model.py index 1c214ce03c0..270fe124423 100644 --- a/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/model.py +++ b/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/model.py @@ -2,3 +2,5 @@ "../../../submodule/samples/cfgs/models/backbones/efficientnet_b2b.yaml", "../../../submodule/recipes/stages/_base_/models/detectors/efficientnetb2b_maskrcnn.custom.py", ] +evaluation = dict(interval=1, metric="mAP", save_best="mAP", iou_thr=[0.5]) +fp16 = dict(loss_scale=512.0) diff --git a/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/tile_pipeline.py b/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/tile_pipeline.py new file mode 100644 index 00000000000..0166cdf6c94 --- /dev/null +++ b/external/model-preparation-algorithm/configs/rotated-detection/efficientnetb2b_maskrcnn/tile_pipeline.py @@ -0,0 +1,85 @@ +dataset_type = "CocoDataset" + +img_size = (1024, 1024) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/model.py b/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/model.py index 0838604070b..d9484673c0c 100644 --- a/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/model.py +++ b/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/model.py @@ -2,3 +2,4 @@ "../../../submodule/samples/cfgs/models/backbones/resnet50.yaml", "../../../submodule/recipes/stages/_base_/models/detectors/resnet50_maskrcnn.custom.py", ] +evaluation = dict(interval=1, metric="mAP", save_best="mAP", iou_thr=[0.5]) diff --git a/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/tile_pipeline.py b/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/tile_pipeline.py new file mode 100644 index 00000000000..899e30ced16 --- /dev/null +++ b/external/model-preparation-algorithm/configs/rotated-detection/resnet50_maskrcnn/tile_pipeline.py @@ -0,0 +1,85 @@ +dataset_type = "CocoDataset" + +img_size = (1344, 800) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18-mod2/pot_optimization_config.json b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18-mod2/pot_optimization_config.json new file mode 100644 index 00000000000..3cefbe0f680 --- /dev/null +++ b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18-mod2/pot_optimization_config.json @@ -0,0 +1,97 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "use_fast_bias": false, + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "1555", + "1575", + "1715", + "1735", + "1840", + "1910", + "1930", + "2070", + "2090", + "2195", + "2286", + "2306", + "2326", + "2523", + "2543", + "2709", + "2563", + "2731", + "2764", + "2865", + "2885", + "2905", + "3102", + "3122", + "3288", + "3142", + "3310", + "3343", + "3444", + "3464", + "3484", + "3681", + "3701", + "3867", + "3721", + "3889", + "3922", + "4023", + "4043", + "4063", + "4260", + "4280", + "4446", + "4300", + "4468", + "4501", + "4623", + "4643", + "4663", + "4683", + "4937", + "4957", + "5184", + "4977", + "5206", + "4997", + "5228", + "5261", + "5283", + "5331", + "5468", + "5488", + "5508", + "5528", + "5782", + "5802", + "6029", + "5822", + "6051", + "5842", + "6073", + "6106", + "6128", + "6176", + "6248", + "6273", + "6298", + "6007" + ] + } + } + } + ] +} diff --git a/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18/pot_optimization_config.json b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18/pot_optimization_config.json new file mode 100644 index 00000000000..5572b3c2779 --- /dev/null +++ b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-18/pot_optimization_config.json @@ -0,0 +1,95 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "1555", + "1575", + "1715", + "1735", + "1840", + "1910", + "1930", + "2070", + "2090", + "2195", + "2286", + "2306", + "2326", + "2523", + "2543", + "2709", + "2563", + "2731", + "2764", + "2865", + "2885", + "2905", + "3102", + "3122", + "3288", + "3142", + "3310", + "3343", + "3444", + "3464", + "3484", + "3681", + "3701", + "3867", + "3721", + "3889", + "3922", + "4023", + "4043", + "4063", + "4260", + "4280", + "4446", + "4300", + "4468", + "4501", + "4623", + "4643", + "4663", + "4683", + "4937", + "4957", + "5184", + "4977", + "5206", + "4997", + "5228", + "5261", + "5283", + "5331", + "5468", + "5488", + "5508", + "5528", + "5782", + "5802", + "6029", + "5822", + "6051", + "5842", + "6073", + "6106", + "6128", + "6176", + "6248", + "6273", + "6298" + ] + } + } + } + ] +} diff --git a/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-s-mod2/pot_optimization_config.json b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-s-mod2/pot_optimization_config.json new file mode 100644 index 00000000000..593ba391295 --- /dev/null +++ b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-s-mod2/pot_optimization_config.json @@ -0,0 +1,76 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "1184", + "1204", + "1344", + "1364", + "1469", + "1539", + "1559", + "1699", + "1719", + "1824", + "1894", + "1914", + "2054", + "2074", + "2179", + "2249", + "2269", + "2409", + "2429", + "2534", + "2625", + "2645", + "2665", + "2862", + "2882", + "3048", + "2902", + "3070", + "3103", + "3204", + "3224", + "3244", + "3441", + "3461", + "3627", + "3481", + "3649", + "3682", + "3783", + "3803", + "3823", + "4020", + "4040", + "4206", + "4060", + "4228", + "4261", + "4362", + "4382", + "4402", + "4599", + "4619", + "4785", + "4639", + "4807", + "4840", + "4892", + "4917" + ] + } + } + } + ] +} diff --git a/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/pot_optimization_config.json b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/pot_optimization_config.json new file mode 100644 index 00000000000..c998b05df52 --- /dev/null +++ b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/pot_optimization_config.json @@ -0,0 +1,178 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "performance", + "target_device": "ANY", + "use_fast_bias": true, + "shuffle_data": true, + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "2953", + "2973", + "3113", + "3133", + "3238", + "3308", + "3328", + "3468", + "3488", + "3593", + "3684", + "3704", + "3724", + "3921", + "3941", + "4107", + "3961", + "4129", + "4162", + "4263", + "4283", + "4303", + "4500", + "4520", + "4686", + "4540", + "4708", + "4741", + "4842", + "4862", + "4882", + "5079", + "5099", + "5265", + "5119", + "5287", + "5320", + "5421", + "5441", + "5461", + "5658", + "5678", + "5844", + "5698", + "5866", + "5899", + "6021", + "6041", + "6061", + "6081", + "6335", + "6355", + "6582", + "6375", + "6604", + "6395", + "6626", + "6659", + "6681", + "6729", + "6866", + "6886", + "6906", + "6926", + "7180", + "7200", + "7427", + "7220", + "7449", + "7240", + "7471", + "7504", + "7526", + "7574", + "7711", + "7731", + "7751", + "7771", + "8025", + "8045", + "8272", + "8065", + "8294", + "8085", + "8316", + "8349", + "8371", + "8419", + "8556", + "8576", + "8596", + "8616", + "8870", + "8890", + "9117", + "8910", + "9139", + "8930", + "9161", + "9194", + "9216", + "9264", + "9422", + "9442", + "9462", + "9482", + "9502", + "9813", + "9833", + "10121", + "9853", + "10143", + "9873", + "10165", + "9893", + "10187", + "10220", + "10242", + "10264", + "10312", + "10334", + "10402", + "10580", + "10600", + "10620", + "10640", + "10660", + "10971", + "10991", + "11279", + "11011", + "11301", + "11031", + "11323", + "11051", + "11345", + "11378", + "11400", + "11422", + "11470", + "11492", + "11560", + "11657", + "11682", + "11707", + "11735", + "3216", + "3571", + "4085", + "4664", + "5243", + "5822", + "6560", + "7405", + "8250", + "9095", + "10099", + "11257" + ] + } + } + } + ] +} diff --git a/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/template.yaml b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/template.yaml index 7c1b6971a96..443e57ae558 100644 --- a/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/template.yaml +++ b/external/model-preparation-algorithm/configs/segmentation/ocr-lite-hrnet-x-mod3/template.yaml @@ -14,7 +14,6 @@ framework: OTESegmentation v0.14.0 entrypoints: base: mpa_tasks.apis.segmentation.SegmentationTrainTask openvino: segmentation_tasks.apis.segmentation.OpenVINOSegmentationTask - nncf: mpa_tasks.apis.segmentation.SegmentationNNCFTask base_model_path: ../../../../mmsegmentation/configs/custom-sematic-segmentation/ocr-lite-hrnet-x-mod3/template_experimental.yaml # Capabilities. @@ -40,7 +39,7 @@ hyper_parameters: default_value: 300 nncf_optimization: enable_quantization: - default_value: true + default_value: false enable_pruning: default_value: false pruning_supported: diff --git a/external/model-preparation-algorithm/mpa_tasks/apis/classification/task.py b/external/model-preparation-algorithm/mpa_tasks/apis/classification/task.py index 9c77c3ef7d7..be75116fbf9 100644 --- a/external/model-preparation-algorithm/mpa_tasks/apis/classification/task.py +++ b/external/model-preparation-algorithm/mpa_tasks/apis/classification/task.py @@ -12,7 +12,6 @@ import torch from mmcv.utils import ConfigDict from mpa import MPAConstants -from mpa.stage import Stage from mpa.utils.config_utils import MPAConfig from mpa.utils.logger import get_logger from mpa_tasks.apis import BaseTask, TrainType @@ -25,6 +24,7 @@ default_progress_callback, ) from ote_sdk.entities.label import Domain +from ote_sdk.entities.metadata import FloatMetadata, FloatType from ote_sdk.entities.metrics import ( CurveMetric, LineChartInfo, @@ -119,11 +119,16 @@ def __init__(self, task_environment: TaskEnvironment): ) == len( task_environment.get_labels(include_empty=False) ) # noqa:E127 + if self._multilabel: + logger.info("Classiification mode: multilabel") self._hierarchical_info = None if not self._multilabel and len(task_environment.label_schema.get_groups(False)) > 1: + logger.info("Classiification mode: hierarchical") self._hierarchical = True self._hierarchical_info = get_hierarchical_info(task_environment.label_schema) + else: + logger.info("Classiification mode: multiclass") def infer( self, @@ -259,54 +264,56 @@ def _add_predictions_to_dataset(self, prediction_results, dataset, update_progre dataset_item.append_labels(item_labels) + probs = TensorEntity(name="probabilities", numpy=prediction_item.reshape(-1)) + dataset_item.append_metadata_item(probs, model=self._task_environment.model) + + top_idxs = np.argpartition(prediction_item, -2)[-2:] + top_probs = prediction_item[top_idxs] + active_score = top_probs[1] - top_probs[0] + active_score_media = FloatMetadata( + name="active_score", value=active_score, float_type=FloatType.ACTIVE_SCORE + ) + dataset_item.append_metadata_item(active_score_media, model=self._task_environment.model) + if feature_vector is not None: active_score = TensorEntity(name="representation_vector", numpy=feature_vector.reshape(-1)) dataset_item.append_metadata_item(active_score, model=self._task_environment.model) if saliency_map is not None: - saliency_map = get_actmap(saliency_map, (dataset_item.width, dataset_item.height)) - saliency_map_media = ResultMediaEntity( - name="Saliency Map", - type="saliency_map", - annotation_scene=dataset_item.annotation_scene, - numpy=saliency_map, - roi=dataset_item.roi, - label=item_labels[0].label, - ) - dataset_item.append_metadata_item(saliency_map_media, model=self._task_environment.model) + if saliency_map.ndim == 2: + # Single saliency map per image, support e.g. EigenCAM use case + saliency_map = get_actmap(saliency_map, (dataset_item.width, dataset_item.height)) + saliency_map_media = ResultMediaEntity( + name="Saliency Map", + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=saliency_map, + roi=dataset_item.roi, + ) + dataset_item.append_metadata_item(saliency_map_media, model=self._task_environment.model) + elif saliency_map.ndim == 3: + # Multiple saliency maps per image (class-wise saliency map), support e.g. Recipro-CAM use case + for class_id, class_wise_saliency_map in enumerate(saliency_map): + class_wise_saliency_map = get_actmap( + class_wise_saliency_map, (dataset_item.width, dataset_item.height) + ) + label = self._labels[class_id] + saliency_map_media = ResultMediaEntity( + name=label.name, + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=class_wise_saliency_map, + roi=dataset_item.roi, + label=label, + ) + dataset_item.append_metadata_item(saliency_map_media, model=self._task_environment.model) + else: + raise RuntimeError( + f"Single saliency map has to be 2 or 3-dimensional, " f"but got {saliency_map.ndim} dims" + ) update_progress_callback(int(i / dataset_size * 100)) - def _init_recipe_hparam(self) -> dict: - warmup_iters = int(self._hyperparams.learning_parameters.learning_rate_warmup_iters) - if self._multilabel: - # hack to use 1cycle policy - lr_config = ConfigDict(max_lr=self._hyperparams.learning_parameters.learning_rate, warmup=None) - else: - lr_config = ( - ConfigDict(warmup_iters=warmup_iters) if warmup_iters > 0 else ConfigDict(warmup_iters=0, warmup=None) - ) - - if self._hyperparams.learning_parameters.enable_early_stopping: - early_stop = ConfigDict( - start=int(self._hyperparams.learning_parameters.early_stop_start), - patience=int(self._hyperparams.learning_parameters.early_stop_patience), - iteration_patience=int(self._hyperparams.learning_parameters.early_stop_iteration_patience), - ) - else: - early_stop = False - - return ConfigDict( - optimizer=ConfigDict(lr=self._hyperparams.learning_parameters.learning_rate), - lr_config=lr_config, - early_stop=early_stop, - data=ConfigDict( - samples_per_gpu=int(self._hyperparams.learning_parameters.batch_size), - workers_per_gpu=int(self._hyperparams.learning_parameters.num_workers), - ), - runner=ConfigDict(max_epochs=int(self._hyperparams.learning_parameters.num_iters)), - ) - def _init_recipe(self): logger.info("called _init_recipe()") @@ -362,6 +369,16 @@ def _init_test_data_cfg(self, dataset: DatasetEntity): ) return data_cfg + def _overwrite_parameters(self): + super()._overwrite_parameters() + if self._multilabel: + # hack to use 1cycle policy + self._recipe_cfg.merge_from_dict( + ConfigDict( + lr_config=ConfigDict(max_lr=self._hyperparams.learning_parameters.learning_rate, warmup=None) + ) + ) + def _patch_datasets(self, config: MPAConfig, domain=Domain.CLASSIFICATION): def patch_color_conversion(pipeline): # Default data format for OTE is RGB, while mmdet uses BGR, so negate the color conversion flag. @@ -388,17 +405,9 @@ def patch_color_conversion(pipeline): elif self._hierarchical: cfg.type = "MPAHierarchicalClsDataset" cfg.hierarchical_info = self._hierarchical_info - if subset == "train": - cfg.drop_last = True # For stable hierarchical information indexing else: cfg.type = "MPAClsDataset" - # In train dataset, when sample size is smaller than batch size - if subset == "train" and self._data_cfg: - train_data_cfg = Stage.get_train_data_cfg(self._data_cfg) - if len(train_data_cfg.get("ote_dataset", [])) < self._recipe_cfg.data.get("samples_per_gpu", 2): - cfg.drop_last = False - cfg.domain = domain cfg.ote_dataset = None cfg.labels = None @@ -555,7 +564,7 @@ def _generate_training_metrics_group(self, learning_curves) -> Optional[List[Met return output for key, curve in learning_curves.items(): - metric_curve = CurveMetric(xs=curve.x, ys=curve.y, name=key) + metric_curve = CurveMetric(xs=np.nan_to_num(curve.x).tolist(), ys=np.nan_to_num(curve.y).tolist(), name=key) if key == metric_key: best_acc = max(curve.y) visualization_info = LineChartInfo(name=key, x_axis_label="Timestamp", y_axis_label=key) diff --git a/external/model-preparation-algorithm/mpa_tasks/apis/config.py b/external/model-preparation-algorithm/mpa_tasks/apis/config.py index 70c8d437eb4..db465fa938b 100644 --- a/external/model-preparation-algorithm/mpa_tasks/apis/config.py +++ b/external/model-preparation-algorithm/mpa_tasks/apis/config.py @@ -220,3 +220,49 @@ class BaseAlgoBackendParameters(ParameterGroup): editable=False, visible_in_ui=True, ) + + @attrs + class BaseTilingParameters(ParameterGroup): + + enable_tiling = configurable_boolean( + default_value=False, + header="Enable tiling", + description="Set to True to allow tiny objects to be better detected.", + warning="Tiling trades off speed for accuracy as it increases the number of images to be processed.", + affects_outcome_of=ModelLifecycle.NONE, + ) + + enable_adaptive_params = configurable_boolean( + default_value=True, + header="Enable adaptive tiling parameters", + description="Config tile size and tile overlap adaptively based on annotated dataset statistic", + warning="", + affects_outcome_of=ModelLifecycle.NONE, + ) + + tile_size = configurable_integer( + header="Tile Image Size", + description="Tile Image Size", + default_value=400, + min_value=100, + max_value=1024, + affects_outcome_of=ModelLifecycle.NONE, + ) + + tile_overlap = configurable_float( + header="Tile Overlap", + description="Overlap between each two neighboring tiles.", + default_value=0.2, + min_value=0.0, + max_value=1.0, + affects_outcome_of=ModelLifecycle.NONE, + ) + + tile_max_number = configurable_integer( + header="Max object per image", + description="Max object per image", + default_value=1500, + min_value=1, + max_value=10000, + affects_outcome_of=ModelLifecycle.NONE, + ) diff --git a/external/model-preparation-algorithm/mpa_tasks/apis/detection/config.py b/external/model-preparation-algorithm/mpa_tasks/apis/detection/config.py index 3af4c90ce6d..6604de646a4 100644 --- a/external/model-preparation-algorithm/mpa_tasks/apis/detection/config.py +++ b/external/model-preparation-algorithm/mpa_tasks/apis/detection/config.py @@ -54,6 +54,12 @@ class __AlgoBackend(BaseConfig.BaseAlgoBackendParameters): header = string_attribute("Parameters for the MPA algo-backend") description = header + @attrs + class __TilingParameters(BaseConfig.BaseTilingParameters): + header = string_attribute("Tiling Parameters") + description = header + + tiling_parameters = add_parameter_group(__TilingParameters) learning_parameters = add_parameter_group(__LearningParameters) postprocessing = add_parameter_group(__Postprocessing) nncf_optimization = add_parameter_group(__NNCFOptimization) diff --git a/external/model-preparation-algorithm/mpa_tasks/apis/detection/task.py b/external/model-preparation-algorithm/mpa_tasks/apis/detection/task.py index c77de594ddf..e28f0d46a62 100644 --- a/external/model-preparation-algorithm/mpa_tasks/apis/detection/task.py +++ b/external/model-preparation-algorithm/mpa_tasks/apis/detection/task.py @@ -9,6 +9,7 @@ import cv2 import numpy as np +import pycocotools.mask as mask_util import torch from detection_tasks.apis.detection import OTEDetectionNNCFTask from detection_tasks.apis.detection.config_utils import remove_from_config @@ -16,6 +17,7 @@ InferenceProgressCallback, TrainingProgressCallback, ) +from detection_tasks.extension.datasets import adaptive_tile_params from detection_tasks.extension.utils.hooks import OTELoggerHook from mmcv.utils import ConfigDict from mpa import MPAConstants @@ -24,12 +26,12 @@ from mpa_tasks.apis import BaseTask, TrainType from mpa_tasks.apis.detection import DetectionConfig from ote_sdk.configuration import cfg_helper -from ote_sdk.configuration.helper.utils import ids_to_strings +from ote_sdk.configuration.helper.utils import config_to_bytes, ids_to_strings from ote_sdk.entities.annotation import Annotation from ote_sdk.entities.datasets import DatasetEntity from ote_sdk.entities.id import ID from ote_sdk.entities.inference_parameters import InferenceParameters -from ote_sdk.entities.label import Domain +from ote_sdk.entities.label import Domain, LabelEntity from ote_sdk.entities.metrics import ( BarChartInfo, BarMetricsGroup, @@ -193,40 +195,39 @@ def export(self, export_type: ExportType, output_model: ModelEntity): ) output_model.precision = [ModelPrecision.FP32] output_model.optimization_methods = self._optimization_methods - output_model.set_data( - "label_schema.json", - label_schema_to_bytes(self._task_environment.label_schema), - ) + output_model.set_data("label_schema.json", label_schema_to_bytes(self._task_environment.label_schema)) + output_model.set_data("config.json", config_to_bytes(self._hyperparams)) logger.info("Exporting completed") - def _init_recipe_hparam(self) -> dict: - warmup_iters = int(self._hyperparams.learning_parameters.learning_rate_warmup_iters) - lr_config = ( - ConfigDict(warmup_iters=warmup_iters) - if warmup_iters > 0 - else ConfigDict(warmup_iters=warmup_iters, warmup=None) - ) - - if self._hyperparams.learning_parameters.enable_early_stopping: - early_stop = ConfigDict( - start=int(self._hyperparams.learning_parameters.early_stop_start), - patience=int(self._hyperparams.learning_parameters.early_stop_patience), - iteration_patience=int(self._hyperparams.learning_parameters.early_stop_iteration_patience), + def _overwrite_parameters(self): + """Overwrite config parameters with TaskEnvironment hyper-parameters and config tiling parameters.""" + super()._overwrite_parameters() + if bool(self._hyperparams.tiling_parameters.enable_tiling): + logger.info("Tiling Enabled") + tile_params = ConfigDict( + data=ConfigDict( + train=ConfigDict( + tile_size=int(self._hyperparams.tiling_parameters.tile_size), + overlap_ratio=float(self._hyperparams.tiling_parameters.tile_overlap), + max_per_img=int(self._hyperparams.tiling_parameters.tile_max_number), + ), + val=ConfigDict( + tile_size=int(self._hyperparams.tiling_parameters.tile_size), + overlap_ratio=float(self._hyperparams.tiling_parameters.tile_overlap), + max_per_img=int(self._hyperparams.tiling_parameters.tile_max_number), + ), + test=ConfigDict( + tile_size=int(self._hyperparams.tiling_parameters.tile_size), + overlap_ratio=float(self._hyperparams.tiling_parameters.tile_overlap), + max_per_img=int(self._hyperparams.tiling_parameters.tile_max_number), + ), + ) ) - else: - early_stop = False - - return ConfigDict( - optimizer=ConfigDict(lr=self._hyperparams.learning_parameters.learning_rate), - lr_config=lr_config, - early_stop=early_stop, - use_adaptive_interval=self._hyperparams.learning_parameters.use_adaptive_interval, - data=ConfigDict( - samples_per_gpu=int(self._hyperparams.learning_parameters.batch_size), - workers_per_gpu=int(self._hyperparams.learning_parameters.num_workers), - ), - runner=ConfigDict(max_epochs=int(self._hyperparams.learning_parameters.num_iters)), - ) + self._recipe_cfg.merge_from_dict( + dict(use_adaptive_interval=self._hyperparams.learning_parameters.use_adaptive_interval) + ) + self._recipe_cfg.merge_from_dict(dict(evaluation=dict(iou_thr=[0.5]))) + self._recipe_cfg.merge_from_dict(tile_params) def _init_recipe(self): logger.info("called _init_recipe()") @@ -306,19 +307,47 @@ def _add_predictions_to_dataset(self, prediction_results, dataset, confidence_th dataset_item.append_metadata_item(active_score, model=self._task_environment.model) if saliency_map is not None: - saliency_map = get_actmap(saliency_map, (dataset_item.width, dataset_item.height)) - saliency_map_media = ResultMediaEntity( - name="Saliency Map", - type="saliency_map", - annotation_scene=dataset_item.annotation_scene, - numpy=saliency_map, - roi=dataset_item.roi, - ) - dataset_item.append_metadata_item(saliency_map_media, model=self._task_environment.model) + if saliency_map.ndim == 2: + # Single saliency map per image, support e.g. EigenCAM use case + actmap = get_actmap(saliency_map, (dataset_item.width, dataset_item.height)) + saliency_media = ResultMediaEntity( + name="Saliency Map", + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=actmap, + roi=dataset_item.roi, + ) + dataset_item.append_metadata_item(saliency_media, model=self._task_environment.model) + elif saliency_map.ndim == 3: + # Multiple saliency maps per image (class-wise saliency map) + labels = self._labels + num_saliency_maps = saliency_map.shape[0] + if num_saliency_maps == len(labels) + 1: + # Include the background as the last category + labels.append(LabelEntity("background", Domain.DETECTION)) + for class_id, class_wise_saliency_map in enumerate(saliency_map): + actmap = get_actmap(class_wise_saliency_map, (dataset_item.width, dataset_item.height)) + label = labels[class_id] + saliency_media = ResultMediaEntity( + name=label.name, + type="saliency_map", + annotation_scene=dataset_item.annotation_scene, + numpy=actmap, + roi=dataset_item.roi, + label=label, + ) + dataset_item.append_metadata_item(saliency_media, model=self._task_environment.model) + else: + raise RuntimeError( + f"Single saliency map has to be 2 or 3-dimensional, but got {saliency_map.ndim} dims" + ) def _patch_data_pipeline(self): base_dir = os.path.abspath(os.path.dirname(self.template_file_path)) - data_pipeline_path = os.path.join(base_dir, "data_pipeline.py") + if bool(self._hyperparams.tiling_parameters.enable_tiling): + data_pipeline_path = os.path.join(base_dir, "tile_pipeline.py") + else: + data_pipeline_path = os.path.join(base_dir, "data_pipeline.py") if os.path.exists(data_pipeline_path): data_pipeline_cfg = MPAConfig.fromfile(data_pipeline_path) self._recipe_cfg.merge_from_dict(data_pipeline_cfg) @@ -340,13 +369,36 @@ def patch_color_conversion(pipeline): elif pipeline_step.type == "MultiScaleFlipAug": patch_color_conversion(pipeline_step.transforms) + def patch_data_pipeline(cfg): + pipeline = cfg.get("pipeline", None) + if pipeline is not None: + for pipeline_step in pipeline: + if pipeline_step.type == "LoadImageFromFile": + pipeline_step.type = "LoadImageFromOTEDataset" + if pipeline_step.type == "LoadAnnotations": + pipeline_step.type = "LoadAnnotationFromOTEDataset" + pipeline_step.domain = domain + pipeline_step.min_size = cfg.pop("min_size", -1) + if subset == "train" and pipeline_step.type == "Collect" and cfg.type not in ["ImageTilingDataset"]: + pipeline_step = BaseTask._get_meta_keys(pipeline_step) + patch_color_conversion(cfg.pipeline) + + # FIXME This code assume that max of wrapped data depth is 2 + # remove redundant parameters introduced in self._recipe_cfg.merge_from_dict + remove_from_config(config, "ann_file") + remove_from_config(config, "img_prefix") assert "data" in config for subset in ("train", "val", "test", "unlabeled"): cfg = config.data.get(subset, None) if not cfg: continue - if cfg.type == "RepeatDataset" or cfg.type == "MultiImageMixDataset": + # remove redundant parameters introduced in self._recipe_cfg.merge_from_dict + remove_from_config(cfg, "ann_file") + remove_from_config(cfg, "img_prefix") + patch_data_pipeline(cfg) + if cfg.type in ["RepeatDataset", "MultiImageMixDataset", "ImageTilingDataset"]: cfg = cfg.dataset + patch_data_pipeline(cfg) cfg.type = "MPADetDataset" cfg.domain = domain cfg.ote_dataset = None @@ -354,16 +406,6 @@ def patch_color_conversion(pipeline): remove_from_config(cfg, "ann_file") remove_from_config(cfg, "img_prefix") remove_from_config(cfg, "classes") # Get from DatasetEntity - for pipeline_step in cfg.pipeline: - if pipeline_step.type == "LoadImageFromFile": - pipeline_step.type = "LoadImageFromOTEDataset" - if pipeline_step.type == "LoadAnnotations": - pipeline_step.type = "LoadAnnotationFromOTEDataset" - pipeline_step.domain = domain - pipeline_step.min_size = cfg.pop("min_size", -1) - if subset == "train" and pipeline_step.type == "Collect": - pipeline_step = BaseTask._get_meta_keys(pipeline_step) - patch_color_conversion(cfg.pipeline) @staticmethod def _patch_evaluation(config: MPAConfig): @@ -381,16 +423,13 @@ def _det_add_predictions_to_dataset(self, all_results, width, height, confidence for i in range(detections.shape[0]): probability = float(detections[i, 4]) coords = detections[i, :4].astype(float).copy() - coords /= np.array([width, height, width, height], dtype=float) - coords = np.clip(coords, 0, 1) - if probability < confidence_threshold: + if probability < confidence_threshold or (coords[2] - coords[0]) * (coords[3] - coords[1]) < 1.0: continue + coords /= np.array([width, height, width, height], dtype=float) + coords = np.clip(coords, 0, 1) assigned_label = [ScoredLabel(self._labels[label_idx], probability=probability)] - if coords[3] - coords[1] <= 0 or coords[2] - coords[0] <= 0: - continue - shapes.append( Annotation( Rectangle(x1=coords[0], y1=coords[1], x2=coords[2], y2=coords[3]), @@ -403,6 +442,8 @@ def _ins_seg_add_predictions_to_dataset(self, all_results, width, height, confid shapes = [] for label_idx, (boxes, masks) in enumerate(zip(*all_results)): for mask, probability in zip(masks, boxes[:, 4]): + if isinstance(mask, dict): + mask = mask_util.decode(mask) mask = mask.astype(np.uint8) probability = float(probability) contours, hierarchies = cv2.findContours(mask, cv2.RETR_CCOMP, cv2.CHAIN_APPROX_SIMPLE) @@ -411,7 +452,7 @@ def _ins_seg_add_predictions_to_dataset(self, all_results, width, height, confid for contour, hierarchy in zip(contours, hierarchies[0]): if hierarchy[3] != -1: continue - if len(contour) <= 2 or probability < confidence_threshold: + if len(contour) <= 2 or probability < confidence_threshold or cv2.contourArea(contour) < 1.0: continue if self._task_type == TaskType.INSTANCE_SEGMENTATION: points = [Point(x=point[0][0] / width, y=point[0][1] / height) for point in contour] @@ -420,8 +461,7 @@ def _ins_seg_add_predictions_to_dataset(self, all_results, width, height, confid points = [Point(x=point[0] / width, y=point[1] / height) for point in box_points] labels = [ScoredLabel(self._labels[label_idx], probability=probability)] polygon = Polygon(points=points) - if cv2.contourArea(contour) > 0 and polygon.get_area() > 1e-12: - shapes.append(Annotation(polygon, labels=labels, id=ID(f"{label_idx:08}"))) + shapes.append(Annotation(polygon, labels=labels, id=ID(f"{label_idx:08}"))) return shapes @staticmethod @@ -505,6 +545,7 @@ def train( stage_module = "DetectionTrainer" self._data_cfg = self._init_train_data_cfg(dataset) self._is_training = True + self._adapt_tiling_parameters(dataset) results = self._run_task(stage_module, mode="train", dataset=dataset, parameters=train_parameters) # Check for stop signal when training has stopped. If should_stop is true, training was cancelled and no new @@ -625,6 +666,24 @@ def _generate_training_metrics(self, learning_curves, map) -> Optional[List[Metr return output + def _adapt_tiling_parameters(self, dataset): + """Adapt tile size, overlap and max number of output based on training annotation statistics + + Args: + dataset (ObjectDetectionDataset): OTX customized object detection dataset + """ + tiling_parameters = self._hyperparams.tiling_parameters + if bool(tiling_parameters.enable_tiling) and bool(tiling_parameters.enable_adaptive_params): + # min_value and max_value are only accessible from model template + tplt_tile_params = self._task_environment.model_template.hyper_parameters.data.get("tiling_parameters") + tile_cfg = adaptive_tile_params(dataset) + for key in ("tile_size", "tile_overlap", "tile_max_number"): + if tile_cfg.get(key): + min_value, max_value = tplt_tile_params[key]["min_value"], tplt_tile_params[key]["max_value"] + value = min(tile_cfg.get(key), max_value) + value = max(value, min_value) + tiling_parameters.__setattr__(key, value) + class DetectionNNCFTask(OTEDetectionNNCFTask): @check_input_parameters_type() diff --git a/external/model-preparation-algorithm/mpa_tasks/apis/segmentation/task.py b/external/model-preparation-algorithm/mpa_tasks/apis/segmentation/task.py index fb801bde36b..e3338bae03f 100644 --- a/external/model-preparation-algorithm/mpa_tasks/apis/segmentation/task.py +++ b/external/model-preparation-algorithm/mpa_tasks/apis/segmentation/task.py @@ -151,34 +151,6 @@ def export(self, export_type: ExportType, output_model: ModelEntity): output_model.set_data("label_schema.json", label_schema_to_bytes(self._task_environment.label_schema)) logger.info("Exporting completed") - def _init_recipe_hparam(self) -> dict: - warmup_iters = int(self._hyperparams.learning_parameters.learning_rate_warmup_iters) - lr_config = ( - ConfigDict(warmup_iters=warmup_iters) - if warmup_iters > 0 - else ConfigDict(warmup_iters=warmup_iters, warmup=None) - ) - - if self._hyperparams.learning_parameters.enable_early_stopping: - early_stop = ConfigDict( - start=int(self._hyperparams.learning_parameters.early_stop_start), - patience=int(self._hyperparams.learning_parameters.early_stop_patience), - iteration_patience=int(self._hyperparams.learning_parameters.early_stop_iteration_patience), - ) - else: - early_stop = False - - return ConfigDict( - optimizer=ConfigDict(lr=self._hyperparams.learning_parameters.learning_rate), - lr_config=lr_config, - early_stop=early_stop, - data=ConfigDict( - samples_per_gpu=int(self._hyperparams.learning_parameters.batch_size), - workers_per_gpu=int(self._hyperparams.learning_parameters.num_workers), - ), - runner=ConfigDict(max_epochs=int(self._hyperparams.learning_parameters.num_iters)), - ) - def _init_recipe(self): logger.info("called _init_recipe()") diff --git a/external/model-preparation-algorithm/mpa_tasks/apis/task.py b/external/model-preparation-algorithm/mpa_tasks/apis/task.py index 62a3b28e3be..1ffeb18088f 100644 --- a/external/model-preparation-algorithm/mpa_tasks/apis/task.py +++ b/external/model-preparation-algorithm/mpa_tasks/apis/task.py @@ -89,7 +89,7 @@ def _run_task(self, stage_module, mode=None, dataset=None, parameters=None, **kw model_classes = [label.name for label in self._model_label_schema] self._model_cfg["model_classes"] = model_classes if dataset is not None: - train_data_cfg = Stage.get_train_data_cfg(self._data_cfg) + train_data_cfg = Stage.get_data_cfg(self._data_cfg, "train") train_data_cfg["data_classes"] = data_classes new_classes = np.setdiff1d(data_classes, model_classes).tolist() train_data_cfg["new_classes"] = new_classes @@ -121,7 +121,7 @@ def _run_task(self, stage_module, mode=None, dataset=None, parameters=None, **kw return output def finalize(self): - if self._recipe_cfg is not None: + if hasattr(self, "_recipe_cfg") and self._recipe_cfg is not None: if self._recipe_cfg.get("cleanup_outputs", False): if os.path.exists(self._output_path): shutil.rmtree(self._output_path, ignore_errors=False) @@ -162,10 +162,7 @@ def _initialize(self, dataset=None, output_model=None, export=False): self._init_recipe() if not export: - recipe_hparams = self._init_recipe_hparam() - if len(recipe_hparams) > 0: - self._recipe_cfg.merge_from_dict(recipe_hparams) - + self._overwrite_parameters() if "custom_hooks" in self.override_configs: override_custom_hooks = self.override_configs.pop("custom_hooks") for override_custom_hook in override_custom_hooks: @@ -262,11 +259,46 @@ def _init_test_data_cfg(self, dataset: DatasetEntity) -> Union[Config, None]: """ return None - def _init_recipe_hparam(self) -> dict: - """ - initialize recipe hyperparamter as dict. + def _overwrite_parameters(self): + """Overwrite mmX config parameters with TaskEnvironment hyperparameters. + + Hyper Parameters defined in TaskEnvironment will overwrite the below mmX config parameters. + + * lr_config.warmup_iters <- learning_parameters.learning_rate_warmup_iters + * optimizer.lr <- learning_parameters.learning_rate + * data.samples_per_gpu <- learning_parameters.batch_size + * data.workers_per_gpu <- learning_parameters.num_workers + * runner.max_epochs <- learning_parameters.num_iters """ - return dict() + + warmup_iters = int(self._hyperparams.learning_parameters.learning_rate_warmup_iters) + lr_config = ( + ConfigDict(warmup_iters=warmup_iters) + if warmup_iters > 0 + else ConfigDict(warmup_iters=warmup_iters, warmup=None) + ) + + if self._hyperparams.learning_parameters.enable_early_stopping: + early_stop = ConfigDict( + start=int(self._hyperparams.learning_parameters.early_stop_start), + patience=int(self._hyperparams.learning_parameters.early_stop_patience), + iteration_patience=int(self._hyperparams.learning_parameters.early_stop_iteration_patience), + ) + else: + early_stop = False + + new_params = ConfigDict( + optimizer=ConfigDict(lr=self._hyperparams.learning_parameters.learning_rate), + lr_config=lr_config, + early_stop=early_stop, + data=ConfigDict( + samples_per_gpu=int(self._hyperparams.learning_parameters.batch_size), + workers_per_gpu=int(self._hyperparams.learning_parameters.num_workers), + ), + runner=ConfigDict(max_epochs=int(self._hyperparams.learning_parameters.num_iters)), + ) + + self._recipe_cfg.merge_from_dict(new_params) def _load_model_state_dict(self, model: ModelEntity): if "weights.pth" in model.model_adapters: @@ -279,6 +311,16 @@ def _load_model_state_dict(self, model: ModelEntity): if model_data.get("anchors"): self._anchors = model_data["anchors"] + saved_config = model_data.get("config") + if saved_config: + tiling_parameters = saved_config.get("tiling_parameters") + if tiling_parameters and tiling_parameters["enable_tiling"]["value"]: + logger.info("Load tiling parameters") + self._hyperparams.tiling_parameters.enable_tiling = tiling_parameters["enable_tiling"]["value"] + self._hyperparams.tiling_parameters.tile_size = tiling_parameters["tile_size"]["value"] + self._hyperparams.tiling_parameters.tile_overlap = tiling_parameters["tile_overlap"]["value"] + self._hyperparams.tiling_parameters.tile_max_number = tiling_parameters["tile_max_number"]["value"] + return model_data.get("model", model_data.get("state_dict", None)) else: return None diff --git a/external/model-preparation-algorithm/mpa_tasks/extensions/datasets/mpa_cls_dataset.py b/external/model-preparation-algorithm/mpa_tasks/extensions/datasets/mpa_cls_dataset.py index 6cb11e17058..fd7863ddca5 100644 --- a/external/model-preparation-algorithm/mpa_tasks/extensions/datasets/mpa_cls_dataset.py +++ b/external/model-preparation-algorithm/mpa_tasks/extensions/datasets/mpa_cls_dataset.py @@ -129,7 +129,11 @@ def evaluate(self, results, metric="accuracy", metric_options=None, logger=None) metrics.remove("class_accuracy") self.class_acc = True + # compute top-k metrics from mmcls and align them in [0,1] range eval_results = super().evaluate(results, metrics, metric_options, logger) + for k in metric_options["topk"]: + eval_results[f"accuracy_top-{k}"] /= 100 + assert 0 <= eval_results[f"accuracy_top-{k}"] <= 1 # Add Evaluation Accuracy score per Class - it can be used only for multi-class dataset. if self.class_acc: diff --git a/external/model-preparation-algorithm/mpa_tasks/utils/runner.py b/external/model-preparation-algorithm/mpa_tasks/utils/runner.py index 3d528820dec..1b27c8dce79 100644 --- a/external/model-preparation-algorithm/mpa_tasks/utils/runner.py +++ b/external/model-preparation-algorithm/mpa_tasks/utils/runner.py @@ -58,7 +58,6 @@ def train(self, data_loader: DataLoader, **kwargs): if self.stop(): break self._iter += 1 - self.save_ema_model = False # revert ema status before new iter self.call_hook("after_train_epoch") self.stop() self._epoch += 1 diff --git a/external/model-preparation-algorithm/tests/api_tests/test_ote_classification_api.py b/external/model-preparation-algorithm/tests/api_tests/test_ote_classification_api.py index dff083f2c8b..103b5053b55 100644 --- a/external/model-preparation-algorithm/tests/api_tests/test_ote_classification_api.py +++ b/external/model-preparation-algorithm/tests/api_tests/test_ote_classification_api.py @@ -183,7 +183,7 @@ def init_environment(self, params, model_template, multilabel, hierarchical, num ids=["multiclass", "multilabel", "hierarchical"], ) def test_training_progress_tracking(self, multilabel, hierarchical): - hyper_parameters, model_template = self.setup_configurable_parameters(DEFAULT_CLS_TEMPLATE_DIR, num_iters=5) + hyper_parameters, model_template = self.setup_configurable_parameters(DEFAULT_CLS_TEMPLATE_DIR, num_iters=10) task_environment, dataset = self.init_environment( hyper_parameters, model_template, multilabel, hierarchical, 20 ) diff --git a/external/model-preparation-algorithm/tests/ote_cli/test_classification.py b/external/model-preparation-algorithm/tests/ote_cli/test_classification.py index 1558157faf0..af3fd3321cc 100644 --- a/external/model-preparation-algorithm/tests/ote_cli/test_classification.py +++ b/external/model-preparation-algorithm/tests/ote_cli/test_classification.py @@ -118,7 +118,7 @@ def test_ote_eval(self, template): @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") @pytest.mark.parametrize("template", templates, ids=templates_ids) def test_ote_eval_openvino(self, template): - ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.0) + ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.2) @e2e_pytest_component @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") diff --git a/external/model-preparation-algorithm/tests/ote_cli/test_segmentation.py b/external/model-preparation-algorithm/tests/ote_cli/test_segmentation.py index cdbf6be858c..5959ce70ed8 100644 --- a/external/model-preparation-algorithm/tests/ote_cli/test_segmentation.py +++ b/external/model-preparation-algorithm/tests/ote_cli/test_segmentation.py @@ -33,7 +33,6 @@ nncf_eval_openvino_testing, ) - args = { "--train-ann-file": "data/segmentation/custom/annotations/training", "--train-data-roots": "data/segmentation/custom/images/training", @@ -149,6 +148,8 @@ def test_ote_hpo(self, template): def test_nncf_optimize(self, template): if template.entrypoints.nncf is None: pytest.skip("nncf entrypoint is none") + if template.model_template_id == "Custom_Semantic_Segmentation_Lite-HRNet-18_OCR": + pytest.skip("[CVS-91469] This is a deprecated model template.") nncf_optimize_testing(template, root, ote_dir, args) @@ -158,6 +159,8 @@ def test_nncf_optimize(self, template): def test_nncf_export(self, template): if template.entrypoints.nncf is None: pytest.skip("nncf entrypoint is none") + if template.model_template_id == "Custom_Semantic_Segmentation_Lite-HRNet-18_OCR": + pytest.skip("[CVS-91469] This is a deprecated model template.") nncf_export_testing(template, root) @@ -167,6 +170,8 @@ def test_nncf_export(self, template): def test_nncf_eval(self, template): if template.entrypoints.nncf is None: pytest.skip("nncf entrypoint is none") + if template.model_template_id == "Custom_Semantic_Segmentation_Lite-HRNet-18_OCR": + pytest.skip("[CVS-91469] This is a deprecated model template.") nncf_eval_testing(template, root, ote_dir, args, threshold=0.001) @@ -176,6 +181,8 @@ def test_nncf_eval(self, template): def test_nncf_eval_openvino(self, template): if template.entrypoints.nncf is None: pytest.skip("nncf entrypoint is none") + if template.model_template_id == "Custom_Semantic_Segmentation_Lite-HRNet-18_OCR": + pytest.skip("[CVS-91469] This is a deprecated model template.") nncf_eval_openvino_testing(template, root, ote_dir, args) diff --git a/external/model-preparation-algorithm/tests/ote_cli/test_tiling_detection.py b/external/model-preparation-algorithm/tests/ote_cli/test_tiling_detection.py new file mode 100644 index 00000000000..e07eb015b2f --- /dev/null +++ b/external/model-preparation-algorithm/tests/ote_cli/test_tiling_detection.py @@ -0,0 +1,153 @@ +"""Tests for MPA Class-Incremental Learning for instance segmentation with OTE CLI""" +# Copyright (C) 2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import os +import pytest + +from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component + +from ote_cli.registry import Registry +from ote_cli.utils.tests import ( + create_venv, + get_some_vars, + ote_demo_deployment_testing, + ote_demo_testing, + ote_demo_openvino_testing, + ote_deploy_openvino_testing, + ote_eval_deployment_testing, + ote_eval_openvino_testing, + ote_eval_testing, + ote_train_testing, + ote_export_testing, + nncf_optimize_testing, + nncf_export_testing, + nncf_eval_testing, + nncf_eval_openvino_testing, + pot_optimize_testing, + pot_eval_testing, +) + +args = { + "--train-ann-file": "data/small_objects/annotations/instances_train.json", + "--train-data-roots": "data/small_objects/images/train", + "--val-ann-file": "data/small_objects/annotations/instances_val.json", + "--val-data-roots": "data/small_objects/images/val", + "--test-ann-files": "data/small_objects/annotations/instances_test.json", + "--test-data-roots": "data/small_objects/images/test", + "--input": "data/small_objects/images/train", + "train_params": [ + "params", + "--learning_parameters.num_iters", + "2", + "--learning_parameters.batch_size", + "4", + "--tiling_parameters.enable_tiling", + "1", + "--tiling_parameters.enable_adaptive_params", + "1", + ], +} + +root = "/tmp/ote_cli/" +ote_dir = os.getcwd() + +templates = Registry("external/model-preparation-algorithm").filter(task_type="DETECTION").templates +templates_ids = [template.model_template_id for template in templates] + + +class TestToolsSmallDetection: + @e2e_pytest_component + def test_create_venv(self): + work_dir, _, algo_backend_dir = get_some_vars(templates[0], root) + create_venv(algo_backend_dir, work_dir) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_train(self, template): + ote_train_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_export(self, template): + ote_export_testing(template, root) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval(self, template): + ote_eval_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval_openvino(self, template): + ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.2) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo(self, template): + ote_demo_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo_openvino(self, template): + ote_demo_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_deploy_openvino(self, template): + ote_deploy_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval_deployment(self, template): + ote_eval_deployment_testing(template, root, ote_dir, args, threshold=0.0) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo_deployment(self, template): + ote_demo_deployment_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_nncf_optimize(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_optimize_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_nncf_export(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_export_testing(template, root) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.xfail(reason="CVS-98026") + def test_nncf_eval(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_testing(template, root, ote_dir, args, threshold=0.001) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.xfail(reason="CVS-98026") + def test_nncf_eval_openvino(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_optimize(self, template): + pot_optimize_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_eval(self, template): + pot_eval_testing(template, root, ote_dir, args) diff --git a/external/model-preparation-algorithm/tests/ote_cli/test_tiling_instseg.py b/external/model-preparation-algorithm/tests/ote_cli/test_tiling_instseg.py new file mode 100644 index 00000000000..6cf46ade6be --- /dev/null +++ b/external/model-preparation-algorithm/tests/ote_cli/test_tiling_instseg.py @@ -0,0 +1,168 @@ +"""Tests for MPA Class-Incremental Learning for instance segmentation with OTE CLI""" +# Copyright (C) 2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import os +import pytest + +from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component +from ote_sdk.entities.model_template import parse_model_template + +from ote_cli.registry import Registry +from ote_cli.utils.tests import ( + create_venv, + get_some_vars, + ote_demo_deployment_testing, + ote_demo_testing, + ote_demo_openvino_testing, + ote_deploy_openvino_testing, + ote_eval_deployment_testing, + ote_eval_openvino_testing, + ote_eval_testing, + ote_train_testing, + ote_export_testing, + nncf_optimize_testing, + nncf_export_testing, + nncf_eval_testing, + nncf_eval_openvino_testing, + pot_optimize_testing, + pot_eval_testing, +) + +args = { + "--train-ann-file": "data/small_objects/annotations/instances_train.json", + "--train-data-roots": "data/small_objects/images/train", + "--val-ann-file": "data/small_objects/annotations/instances_val.json", + "--val-data-roots": "data/small_objects/images/val", + "--test-ann-files": "data/small_objects/annotations/instances_test.json", + "--test-data-roots": "data/small_objects/images/test", + "--input": "data/small_objects/images/train", + "train_params": [ + "params", + "--learning_parameters.num_iters", + "2", + "--learning_parameters.batch_size", + "4", + "--tiling_parameters.enable_tiling", + "1", + "--tiling_parameters.enable_adaptive_params", + "1", + ], +} + +root = "/tmp/ote_cli/" +ote_dir = os.getcwd() + +templates = Registry("external/model-preparation-algorithm").filter(task_type="INSTANCE_SEGMENTATION").templates +templates_ids = [template.model_template_id for template in templates] + + +class TestToolsSmallInstanceSeg: + @e2e_pytest_component + def test_create_venv(self): + work_dir, _, algo_backend_dir = get_some_vars(templates[0], root) + create_venv(algo_backend_dir, work_dir) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_train(self, template): + ote_train_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_export(self, template): + ote_export_testing(template, root) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval(self, template): + ote_eval_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval_openvino(self, template): + ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.2) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo(self, template): + ote_demo_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo_openvino(self, template): + ote_demo_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_deploy_openvino(self, template): + ote_deploy_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval_deployment(self, template): + ote_eval_deployment_testing(template, root, ote_dir, args, threshold=0.0) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo_deployment(self, template): + ote_demo_deployment_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_nncf_optimize(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_optimize_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_nncf_export(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_export_testing(template, root) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.xfail(reason="CVS-98026") + def test_nncf_eval(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_testing(template, root, ote_dir, args, threshold=0.001) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.xfail(reason="CVS-98026") + def test_nncf_eval_openvino(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_optimize(self, template): + pot_optimize_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_eval(self, template): + pot_eval_testing(template, root, ote_dir, args) diff --git a/external/model-preparation-algorithm/tests/ote_cli/test_tiling_rotated_det.py b/external/model-preparation-algorithm/tests/ote_cli/test_tiling_rotated_det.py new file mode 100644 index 00000000000..c36cb38cd3c --- /dev/null +++ b/external/model-preparation-algorithm/tests/ote_cli/test_tiling_rotated_det.py @@ -0,0 +1,153 @@ +"""Tests for MPA Class-Incremental Learning for instance segmentation with OTE CLI""" +# Copyright (C) 2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import os +import pytest + +from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component + +from ote_cli.registry import Registry +from ote_cli.utils.tests import ( + create_venv, + get_some_vars, + ote_demo_deployment_testing, + ote_demo_testing, + ote_demo_openvino_testing, + ote_deploy_openvino_testing, + ote_eval_deployment_testing, + ote_eval_openvino_testing, + ote_eval_testing, + ote_train_testing, + ote_export_testing, + nncf_optimize_testing, + nncf_export_testing, + nncf_eval_testing, + nncf_eval_openvino_testing, + pot_optimize_testing, + pot_eval_testing, +) + +args = { + "--train-ann-file": "data/small_objects/annotations/instances_train.json", + "--train-data-roots": "data/small_objects/images/train", + "--val-ann-file": "data/small_objects/annotations/instances_val.json", + "--val-data-roots": "data/small_objects/images/val", + "--test-ann-files": "data/small_objects/annotations/instances_test.json", + "--test-data-roots": "data/small_objects/images/test", + "--input": "data/small_objects/images/train", + "train_params": [ + "params", + "--learning_parameters.num_iters", + "2", + "--learning_parameters.batch_size", + "4", + "--tiling_parameters.enable_tiling", + "1", + "--tiling_parameters.enable_adaptive_params", + "1", + ], +} + +root = "/tmp/ote_cli/" +ote_dir = os.getcwd() + +templates = Registry("external/model-preparation-algorithm").filter(task_type="ROTATED_DETECTION").templates +templates_ids = [template.model_template_id for template in templates] + + +class TestToolsSmallRotatedDetection: + @e2e_pytest_component + def test_create_venv(self): + work_dir, _, algo_backend_dir = get_some_vars(templates[0], root) + create_venv(algo_backend_dir, work_dir) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_train(self, template): + ote_train_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_export(self, template): + ote_export_testing(template, root) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval(self, template): + ote_eval_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval_openvino(self, template): + ote_eval_openvino_testing(template, root, ote_dir, args, threshold=0.2) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo(self, template): + ote_demo_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo_openvino(self, template): + ote_demo_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_deploy_openvino(self, template): + ote_deploy_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_eval_deployment(self, template): + ote_eval_deployment_testing(template, root, ote_dir, args, threshold=0.0) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_ote_demo_deployment(self, template): + ote_demo_deployment_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_nncf_optimize(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_optimize_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_nncf_export(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_export_testing(template, root) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.xfail(reason="CVS-98026") + def test_nncf_eval(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_testing(template, root, ote_dir, args, threshold=0.001) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.xfail(reason="CVS-98026") + def test_nncf_eval_openvino(self, template): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_openvino_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_optimize(self, template): + pot_optimize_testing(template, root, ote_dir, args) + + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_eval(self, template): + pot_eval_testing(template, root, ote_dir, args) diff --git a/external/model-preparation-algorithm/tests/test_xai.py b/external/model-preparation-algorithm/tests/test_xai.py new file mode 100644 index 00000000000..36fa84b23af --- /dev/null +++ b/external/model-preparation-algorithm/tests/test_xai.py @@ -0,0 +1,147 @@ +# Copyright (C) 2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import numpy as np +import torch + +from mmcls.models import build_classifier +from mmdet.models import build_detector + +from mpa.det.stage import DetectionStage # noqa +from mpa.modules.hooks.auxiliary_hooks import ReciproCAMHook, DetSaliencyMapHook + + +torch.manual_seed(0) + + +class TestExplainMethods: + @staticmethod + def get_classification_model(): + model_cfg = dict( + type="ImageClassifier", + backbone=dict(type="ResNet", depth=18, num_stages=4, out_indices=(3,), style="pytorch"), + neck=dict(type="GlobalAveragePooling"), + head=dict( + type="LinearClsHead", + num_classes=2, + in_channels=512, + loss=dict(type="CrossEntropyLoss", loss_weight=1.0), + topk=(1, 5), + ), + ) + + model = build_classifier(model_cfg) + return model.eval() + + @staticmethod + def get_detection_model(): + model_cfg = dict( + type="CustomSingleStageDetector", + backbone=dict( + type="mobilenetv2_w1", out_indices=(4, 5), frozen_stages=-1, norm_eval=False, pretrained=True + ), + bbox_head=dict( + type="CustomSSDHead", + in_channels=(96, 320), + num_classes=20, + anchor_generator=dict( + type="SSDAnchorGeneratorClustered", + reclustering_anchors=True, + strides=[16, 32], + widths=[ + np.array([70.93408016, 132.06659281, 189.56180207, 349.90057837]), + np.array([272.31733885, 448.52200666, 740.63350023, 530.78990182, 790.99297377]), + ], + heights=[ + np.array([93.83759764, 235.21261441, 432.6029996, 250.08979657]), + np.array([672.8829653, 474.84783528, 420.18291446, 741.02592293, 766.45636125]), + ], + ), + bbox_coder=dict( + type="DeltaXYWHBBoxCoder", target_means=[0.0, 0.0, 0.0, 0.0], target_stds=[0.1, 0.1, 0.2, 0.2] + ), + ), + ) + model = build_detector(model_cfg) + return model.eval() + + def test_recipro_cam(self): + model = self.get_classification_model() + img = torch.rand(2, 3, 224, 224) - 0.5 + data = {"img_metas": {}, "img": img} + + with ReciproCAMHook(model) as rcam_hook: + _ = model(return_loss=False, **data) + saliency_maps = rcam_hook.records + + assert len(saliency_maps) == 2 + assert saliency_maps[0].ndim == 3 + assert saliency_maps[0].shape == (2, 7, 7) + + sal_class0_reference = np.array( + [ + [27, 112, 105, 92, 114, 84, 73], + [0, 88, 144, 91, 58, 103, 96], + [54, 155, 121, 105, 1, 111, 146], + [34, 199, 122, 159, 126, 164, 83], + [59, 70, 237, 149, 127, 164, 148], + [14, 213, 150, 135, 124, 215, 43], + [36, 98, 114, 61, 99, 255, 30], + ], + dtype=np.uint8, + ) + sal_class1_reference = np.array( + [ + [227, 142, 149, 162, 140, 170, 181], + [255, 166, 110, 163, 196, 151, 158], + [200, 99, 133, 149, 253, 142, 108], + [220, 55, 132, 95, 128, 90, 171], + [195, 184, 17, 105, 127, 90, 106], + [240, 41, 104, 119, 130, 39, 211], + [218, 156, 140, 193, 155, 0, 224], + ], + dtype=np.uint8, + ) + assert (saliency_maps[0][0] == sal_class0_reference).all() + assert (saliency_maps[0][1] == sal_class1_reference).all() + + def test_saliency_map_detection(self): + model = self.get_detection_model() + img = torch.rand(2, 3, 224, 224) - 0.5 + data = {"img_metas": [{}], "img": [img]} + + with DetSaliencyMapHook(model) as det_hook: + _ = model(return_loss=False, rescale=True, **data) + saliency_maps = det_hook.records + + assert len(saliency_maps) == 2 + assert saliency_maps[0].ndim == 3 + assert saliency_maps[0].shape == (21, 7, 7) + + sal_class0_reference = np.array( + [ + [189, 224, 89, 115, 133, 135, 176], + [54, 134, 148, 82, 135, 177, 154], + [0, 103, 39, 66, 156, 206, 73], + [82, 126, 142, 123, 210, 147, 167], + [115, 129, 108, 128, 174, 185, 121], + [90, 131, 118, 113, 89, 150, 105], + [106, 189, 148, 180, 206, 255, 145], + ], + dtype=np.uint8, + ) + sal_class1_reference = np.array( + [ + [230, 138, 133, 92, 127, 101, 77], + [100, 129, 141, 156, 0, 87, 136], + [99, 51, 147, 218, 123, 50, 75], + [111, 98, 70, 142, 172, 110, 73], + [124, 69, 34, 97, 157, 78, 171], + [214, 153, 56, 93, 128, 139, 148], + [189, 255, 208, 224, 169, 167, 202], + ], + dtype=np.uint8, + ) + assert (saliency_maps[0][0] == sal_class0_reference).all() + assert (saliency_maps[0][1] == sal_class1_reference).all() diff --git a/ote_cli/ote_cli/tools/demo.py b/ote_cli/ote_cli/tools/demo.py index b17430ea27d..0110c8da0b3 100644 --- a/ote_cli/ote_cli/tools/demo.py +++ b/ote_cli/ote_cli/tools/demo.py @@ -43,32 +43,23 @@ ESC_BUTTON = 27 -def parse_args(): +def init_arguments(parser, parse_template_only=False): """ - Parses command line arguments. + initialize arguments to parser. if 'parse_template_only' set as 'True', + 'required' attribute to all arguments will be set as 'False' to simply get + the template argument. """ - - pre_parser = argparse.ArgumentParser(add_help=False) - pre_parser.add_argument("template") - parsed, _ = pre_parser.parse_known_args() - # Load template.yaml file. - template = find_and_parse_model_template(parsed.template) - # Get hyper parameters schema. - hyper_parameters = template.hyper_parameters.data - assert hyper_parameters - - parser = argparse.ArgumentParser() parser.add_argument("template") parser.add_argument( "-i", "--input", - required=True, + required=not parse_template_only, help="Source of input data: images folder, image, webcam and video.", ) parser.add_argument( "--load-weights", - required=True, - help="Load only weights from previously saved checkpoint", + required=not parse_template_only, + help="Load weights to run the evaluation. It could be a trained/optimized model (POT only) or exported model.", ) parser.add_argument( "--fit-to-size", @@ -91,6 +82,28 @@ def parse_args(): "These metrics take into account not only model inference time, but also " "frame reading, pre-processing and post-processing.", ) + return parser + + +def parse_args(): + """ + Parses command line arguments. + """ + + pre_parser = argparse.ArgumentParser(add_help=False) + # WA: added all available args to correctly parsing "template" positional arg + # to get the available hyper-parameters + pre_parser = init_arguments(pre_parser, parse_template_only=True) + + parsed, _ = pre_parser.parse_known_args() + # Load template.yaml file. + template = find_and_parse_model_template(parsed.template) + # Get hyper parameters schema. + hyper_parameters = template.hyper_parameters.data + assert hyper_parameters + + parser = argparse.ArgumentParser() + parser = init_arguments(parser) add_hyper_parameters_sub_parser(parser, hyper_parameters, modes=("INFERENCE",)) diff --git a/ote_cli/ote_cli/tools/deploy.py b/ote_cli/ote_cli/tools/deploy.py index 70fd2c8b685..2224f88e8ca 100644 --- a/ote_cli/ote_cli/tools/deploy.py +++ b/ote_cli/ote_cli/tools/deploy.py @@ -37,7 +37,7 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint.", + help="Load model's weights from.", ) parser.add_argument( "--save-model-to", diff --git a/ote_cli/ote_cli/tools/eval.py b/ote_cli/ote_cli/tools/eval.py index 658be72e1db..0bb68a081d8 100644 --- a/ote_cli/ote_cli/tools/eval.py +++ b/ote_cli/ote_cli/tools/eval.py @@ -37,41 +37,54 @@ ) -def parse_args(): +def init_arguments(parser, parse_template_only=False): """ - Parses command line arguments. + initialize arguments to parser. if 'parse_template_only' set as 'True', + 'required' attribute to all arguments will be set as 'False' to simply get + the template argument. """ - - pre_parser = argparse.ArgumentParser(add_help=False) - pre_parser.add_argument("template") - parsed, _ = pre_parser.parse_known_args() - # Load template.yaml file. - template = find_and_parse_model_template(parsed.template) - # Get hyper parameters schema. - hyper_parameters = template.hyper_parameters.data - assert hyper_parameters - - parser = argparse.ArgumentParser() parser.add_argument("template") parser.add_argument( "--test-ann-files", - required=True, + required=not parse_template_only, help="Comma-separated paths to test annotation files.", ) parser.add_argument( "--test-data-roots", - required=True, + required=not parse_template_only, help="Comma-separated paths to test data folders.", ) parser.add_argument( "--load-weights", - required=True, - help="Load only weights from previously saved checkpoint", + required=not parse_template_only, + help="Load weights to run the evaluation. It could be a trained/optimized model or exported model.", ) parser.add_argument( "--save-performance", help="Path to a json file where computed performance will be stored.", ) + return parser + + +def parse_args(): + """ + Parses command line arguments. + """ + + pre_parser = argparse.ArgumentParser(add_help=False) + # WA: added all available args to correctly parsing "template" positional arg + # to get the available hyper-parameters + pre_parser = init_arguments(pre_parser, parse_template_only=True) + + parsed, _ = pre_parser.parse_known_args() + # Load template.yaml file. + template = find_and_parse_model_template(parsed.template) + # Get hyper parameters schema. + hyper_parameters = template.hyper_parameters.data + assert hyper_parameters + + parser = argparse.ArgumentParser() + parser = init_arguments(parser) add_hyper_parameters_sub_parser(parser, hyper_parameters, modes=("INFERENCE",)) diff --git a/ote_cli/ote_cli/tools/export.py b/ote_cli/ote_cli/tools/export.py index 8a235802ee9..fb4b8a665be 100644 --- a/ote_cli/ote_cli/tools/export.py +++ b/ote_cli/ote_cli/tools/export.py @@ -41,7 +41,7 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint", + help="Load weights from saved checkpoint for exporting", ) parser.add_argument( "--save-model-to", diff --git a/ote_cli/ote_cli/tools/find.py b/ote_cli/ote_cli/tools/find.py index 57ad6fa60fc..0e60eb9221a 100644 --- a/ote_cli/ote_cli/tools/find.py +++ b/ote_cli/ote_cli/tools/find.py @@ -30,7 +30,17 @@ def parse_args(): parser.add_argument( "--root", help="A root dir where templates should be searched.", default="." ) - parser.add_argument("--task_type") + task_types = [ + "classification", + "detection", + "segmentation", + "instance_segmantation", + "rotated_detection", + "anomaly_classification", + "anomaly_detection", + "anomaly_segmentation", + ] + parser.add_argument("--task_type", choices=task_types, type=str.lower) parser.add_argument("--experimental", action="store_true") return parser.parse_args() diff --git a/ote_cli/ote_cli/tools/optimize.py b/ote_cli/ote_cli/tools/optimize.py index 32976d75322..592e032a406 100644 --- a/ote_cli/ote_cli/tools/optimize.py +++ b/ote_cli/ote_cli/tools/optimize.py @@ -39,57 +39,70 @@ ) -def parse_args(): +def init_arguments(parser, parse_template_only=False): """ - Parses command line arguments. - It dynamically generates help for hyper-parameters which are specific to particular model template. + initialize arguments to parser. if 'parse_template_only' set as 'True', + 'required' attribute to all arguments will be set as 'False' to simply get + the template argument. """ - - pre_parser = argparse.ArgumentParser(add_help=False) - pre_parser.add_argument("template") - parsed, _ = pre_parser.parse_known_args() - # Load template.yaml file. - template = find_and_parse_model_template(parsed.template) - # Get hyper parameters schema. - hyper_parameters = template.hyper_parameters.data - assert hyper_parameters - - parser = argparse.ArgumentParser() parser.add_argument("template") parser.add_argument( "--train-ann-files", - required=True, + required=not parse_template_only, help="Comma-separated paths to training annotation files.", ) parser.add_argument( "--train-data-roots", - required=True, + required=not parse_template_only, help="Comma-separated paths to training data folders.", ) parser.add_argument( "--val-ann-files", - required=True, + required=not parse_template_only, help="Comma-separated paths to validation annotation files.", ) parser.add_argument( "--val-data-roots", - required=True, + required=not parse_template_only, help="Comma-separated paths to validation data folders.", ) parser.add_argument( "--load-weights", - required=True, - help="Load weights of trained model", + required=not parse_template_only, + help="Load weights of trained model (for NNCF) or exported OpenVINO model (for POT)", ) parser.add_argument( "--save-model-to", - required=True, + required=not parse_template_only, help="Location where trained model will be stored.", ) parser.add_argument( "--save-performance", help="Path to a json file where computed performance will be stored.", ) + return parser + + +def parse_args(): + """ + Parses command line arguments. + It dynamically generates help for hyper-parameters which are specific to particular model template. + """ + + pre_parser = argparse.ArgumentParser(add_help=False) + # WA: added all available args to correctly parsing "template" positional arg + # to get the available hyper-parameters + pre_parser = init_arguments(pre_parser, parse_template_only=True) + + parsed, _ = pre_parser.parse_known_args() + # Load template.yaml file. + template = find_and_parse_model_template(parsed.template) + # Get hyper parameters schema. + hyper_parameters = template.hyper_parameters.data + assert hyper_parameters + + parser = argparse.ArgumentParser() + parser = init_arguments(parser) add_hyper_parameters_sub_parser(parser, hyper_parameters) diff --git a/ote_cli/ote_cli/tools/train.py b/ote_cli/ote_cli/tools/train.py index 4257fb17a37..ceb5678be24 100644 --- a/ote_cli/ote_cli/tools/train.py +++ b/ote_cli/ote_cli/tools/train.py @@ -46,51 +46,40 @@ ) -def parse_args(): +def init_arguments(parser, parse_template_only=False): """ - Parses command line arguments. - It dynamically generates help for hyper-parameters which are specific to particular model template. + initialize arguments to parser. if 'parse_template_only' set as 'True', + 'required' attribute to all arguments will be set as 'False' to simply get + the template argument. """ - - pre_parser = argparse.ArgumentParser(add_help=False) - pre_parser.add_argument("template") - parsed, _ = pre_parser.parse_known_args() - # Load template.yaml file. - template = find_and_parse_model_template(parsed.template) - # Get hyper parameters schema. - hyper_parameters = template.hyper_parameters.data - assert hyper_parameters - - parser = argparse.ArgumentParser() parser.add_argument("template") parser.add_argument( "--train-ann-files", - required=True, + required=not parse_template_only, help="Comma-separated paths to training annotation files.", ) parser.add_argument( "--train-data-roots", - required=True, + required=not parse_template_only, help="Comma-separated paths to training data folders.", ) parser.add_argument( "--val-ann-files", - required=True, + required=not parse_template_only, help="Comma-separated paths to validation annotation files.", ) parser.add_argument( "--val-data-roots", - required=True, + required=not parse_template_only, help="Comma-separated paths to validation data folders.", ) parser.add_argument( "--load-weights", - required=False, help="Load only weights from previously saved checkpoint", ) parser.add_argument( "--save-model-to", - required="True", + required=not parse_template_only, help="Location where trained model will be stored.", ) parser.add_argument( @@ -104,6 +93,29 @@ def parse_args(): type=float, help="Expected ratio of total time to run HPO to time taken for full fine-tuning.", ) + return parser + + +def parse_args(): + """ + Parses command line arguments. + It dynamically generates help for hyper-parameters which are specific to particular model template. + """ + + pre_parser = argparse.ArgumentParser(add_help=False) + # WA: added all available args to correctly parsing "template" positional arg + # to get the available hyper-parameters + pre_parser = init_arguments(pre_parser, parse_template_only=True) + + parsed, _ = pre_parser.parse_known_args() + # Load template.yaml file. + template = find_and_parse_model_template(parsed.template) + # Get hyper parameters schema. + hyper_parameters = template.hyper_parameters.data + assert hyper_parameters + + parser = argparse.ArgumentParser() + parser = init_arguments(parser) add_hyper_parameters_sub_parser(parser, hyper_parameters) diff --git a/ote_cli/ote_cli/utils/hpo.py b/ote_cli/ote_cli/utils/hpo.py index c13292a9a6d..3ee4ceb9ffa 100644 --- a/ote_cli/ote_cli/utils/hpo.py +++ b/ote_cli/ote_cli/utils/hpo.py @@ -517,12 +517,7 @@ def __init__( if _is_anomaly_framework_task(task_type): impl_class = get_impl_class(environment.model_template.entrypoints.base) task = impl_class(task_environment=environment) - model = ModelEntity( - dataset, - environment.get_model_configuration(), - ) - task.save_model(model) - save_model_data(model, self.work_dir) + torch.save(task.model_info(), osp.join(self.work_dir, "weights.pth")) else: save_model_data(environment.model, self.work_dir) diff --git a/ote_cli/ote_cli/utils/io.py b/ote_cli/ote_cli/utils/io.py index 80d6fdf9690..e94dff6c1a6 100644 --- a/ote_cli/ote_cli/utils/io.py +++ b/ote_cli/ote_cli/utils/io.py @@ -68,6 +68,7 @@ def read_model(model_configuration, path, train_dataset): "pixel_threshold", "min", "max", + "config.json", ) if path.endswith(".bin") or path.endswith(".xml"): @@ -108,6 +109,7 @@ def read_model(model_configuration, path, train_dataset): config_path = os.path.join(temp_dir, "model", "config.json") with open(config_path, encoding="UTF-8") as f: model_parameters = json.load(f)["model_parameters"] + model_adapters["config.json"] = ModelAdapter(read_binary(config_path)) for key in model_adapter_keys: if key in model_parameters: diff --git a/ote_cli/ote_cli/utils/tests.py b/ote_cli/ote_cli/utils/tests.py index 264d81dead4..cacd4c5cea2 100644 --- a/ote_cli/ote_cli/utils/tests.py +++ b/ote_cli/ote_cli/utils/tests.py @@ -213,7 +213,8 @@ def ote_eval_openvino_testing(template, root, ote_dir, args, threshold): for k in trained_performance.keys(): assert ( - abs(trained_performance[k] - exported_performance[k]) + exported_performance[k] > trained_performance[k] + or abs(trained_performance[k] - exported_performance[k]) / (trained_performance[k] + 1e-10) <= threshold ), f"{trained_performance[k]=}, {exported_performance[k]=}" @@ -520,7 +521,8 @@ def nncf_eval_testing(template, root, ote_dir, args, threshold): for k in trained_performance.keys(): assert ( - abs(trained_performance[k] - evaluated_performance[k]) + evaluated_performance[k] > trained_performance[k] + or abs(trained_performance[k] - evaluated_performance[k]) / (trained_performance[k] + 1e-10) <= threshold ), f"{trained_performance[k]=}, {evaluated_performance[k]=}" diff --git a/ote_sdk/ote_sdk/configuration/helper/__init__.py b/ote_sdk/ote_sdk/configuration/helper/__init__.py index 564aadab31e..f2903a2bbad 100644 --- a/ote_sdk/ote_sdk/configuration/helper/__init__.py +++ b/ote_sdk/ote_sdk/configuration/helper/__init__.py @@ -11,10 +11,12 @@ from .convert import convert from .create import create from .substitute import substitute_values, substitute_values_for_lifecycle +from .utils import config_to_bytes from .validate import validate __all__ = [ "create", + "config_to_bytes", "validate", "convert", "substitute_values", diff --git a/ote_sdk/ote_sdk/configuration/helper/utils.py b/ote_sdk/ote_sdk/configuration/helper/utils.py index 896ce3075da..875b067a475 100644 --- a/ote_sdk/ote_sdk/configuration/helper/utils.py +++ b/ote_sdk/ote_sdk/configuration/helper/utils.py @@ -7,6 +7,7 @@ This module contains utility functions used within the configuration helper module """ +import json import os from enum import Enum from typing import Any, List, Tuple, Type, Union @@ -14,6 +15,7 @@ import yaml from omegaconf import DictConfig, OmegaConf +from ote_sdk.configuration.configurable_parameters import ConfigurableParameters from ote_sdk.configuration.enums.utils import get_enum_names from ote_sdk.entities.id import ID @@ -22,6 +24,7 @@ PrimitiveElementMapping, RuleElementMapping, ) +from .convert import convert def _search_in_config_dict_inner( @@ -171,3 +174,14 @@ def ids_to_strings(config_dict: dict) -> dict: if isinstance(value, ID): config_dict[key] = str(value) return config_dict + + +def config_to_bytes(config: ConfigurableParameters) -> bytes: + """ + Converts ConfigurableParameters to bytes. + + :param config: configurable parameters + :return: JSON in bytes + """ + config_dict = convert(config, dict, enum_to_str=True) + return json.dumps(config_dict, indent=4).encode() diff --git a/ote_sdk/ote_sdk/tests/entities/test_dataset_item.py b/ote_sdk/ote_sdk/tests/entities/test_dataset_item.py index 3cda1537dc9..44bf7df78c4 100644 --- a/ote_sdk/ote_sdk/tests/entities/test_dataset_item.py +++ b/ote_sdk/ote_sdk/tests/entities/test_dataset_item.py @@ -570,7 +570,7 @@ def test_dataset_item_get_annotations(self): partial_box_dataset_item.roi = Annotation( shape=Rectangle(x1=0.0, y1=0.0, x2=0.4, y2=0.5), labels=[] ) - expected_annotation = first_annotation + expected_annotation = deepcopy(first_annotation) expected_annotation.shape = expected_annotation.shape.denormalize_wrt_roi_shape( roi_shape=partial_box_dataset_item.roi.shape ) diff --git a/ote_sdk/ote_sdk/tests/usecases/exportable_code/test_prediction_to_annotation_converter.py b/ote_sdk/ote_sdk/tests/usecases/exportable_code/test_prediction_to_annotation_converter.py index ec5da0f636f..55afc2ccf94 100644 --- a/ote_sdk/ote_sdk/tests/usecases/exportable_code/test_prediction_to_annotation_converter.py +++ b/ote_sdk/ote_sdk/tests/usecases/exportable_code/test_prediction_to_annotation_converter.py @@ -244,7 +244,7 @@ def test_create_converter(self): converter = create_converter( converter_type=Domain.DETECTION, labels=label_schema ) - assert isinstance(converter, DetectionBoxToAnnotationConverter) + assert isinstance(converter, DetectionToAnnotationConverter) assert converter.labels == labels # Checking "SegmentationToAnnotationConverter" returned by "create_converter" function when "SEGMENTATION"is # specified as "converter_type" diff --git a/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo.py b/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo.py index 527bbcdbe47..5e3e2f45783 100644 --- a/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo.py +++ b/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo.py @@ -70,6 +70,14 @@ def build_argparser(): default=False, action="store_true", ) + args.add_argument( + "-d", + "--device", + help="Optional. Device to infer the model.", + choices=["CPU", "GPU"], + default="CPU", + type=str, + ) return parser @@ -102,7 +110,7 @@ def main(): # create models models = [] for model_dir in args.models: - model = ModelContainer(model_dir) + model = ModelContainer(model_dir, device=args.device) models.append(model) inferencer = get_inferencer_class(args.inference_type, models) diff --git a/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/executors/synchronous.py b/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/executors/synchronous.py index b8838bdba22..df5b47ec468 100644 --- a/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/executors/synchronous.py +++ b/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/executors/synchronous.py @@ -27,7 +27,7 @@ class SyncExecutor: """ def __init__(self, model: ModelContainer, visualizer: IVisualizer) -> None: - self.model = model.core_model + self.model = model self.visualizer = visualizer self.converter = create_output_converter(model.task_type, model.labels) diff --git a/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/model_container.py b/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/model_container.py index 581b26c3f0f..19018021cd8 100644 --- a/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/model_container.py +++ b/ote_sdk/ote_sdk/usecases/exportable_code/demo/demo_package/model_container.py @@ -16,6 +16,8 @@ from ote_sdk.entities.label_schema import LabelSchemaEntity from ote_sdk.entities.model_template import TaskType from ote_sdk.serialization.label_mapper import LabelSchemaMapper +from ote_sdk.utils import Tiler +from ote_sdk.utils.detection_utils import detection2array from .utils import get_model_path, get_parameters @@ -28,19 +30,24 @@ class ModelContainer: model_dir: path to model directory """ - def __init__(self, model_dir: Path) -> None: + def __init__(self, model_dir: Path, device="CPU") -> None: self.parameters = get_parameters(model_dir / "config.json") self._labels = LabelSchemaMapper.backward( self.parameters["model_parameters"]["labels"] ) self._task_type = TaskType[self.parameters["converter_type"]] + self.segm = bool( + self._task_type is TaskType.ROTATED_DETECTION + or self._task_type is TaskType.INSTANCE_SEGMENTATION + ) + # labels for modelAPI wrappers can be empty, because unused in pre- and postprocessing self.model_parameters = self.parameters["model_parameters"] self.model_parameters["labels"] = [] model_adapter = OpenvinoAdapter( - create_core(), get_model_path(model_dir / "model.xml") + create_core(), get_model_path(model_dir / "model.xml"), device=device ) self._initialize_wrapper() @@ -51,6 +58,26 @@ def __init__(self, model_dir: Path) -> None: preload=True, ) + self.tiler = self.setup_tiler() + + def setup_tiler(self): + """Setup tiler + + Returns: + Tiler: tiler module + """ + if ( + not self.parameters.get("tiling_parameters") + or not self.parameters["tiling_parameters"]["enable_tiling"]["value"] + ): + return None + + tile_size = self.parameters["tiling_parameters"]["tile_size"]["value"] + tile_overlap = self.parameters["tiling_parameters"]["tile_overlap"]["value"] + max_number = self.parameters["tiling_parameters"]["tile_max_number"]["value"] + tiler = Tiler(tile_size, tile_overlap, max_number, self.core_model, self.segm) + return tiler + @property def task_type(self) -> TaskType: """ @@ -72,5 +99,35 @@ def _initialize_wrapper() -> None: except ModuleNotFoundError: print("Using model wrapper from Open Model Zoo ModelAPI") + def infer(self, frame): + """Infer with original image + Args: + frame (np.ndarray): image + Returns: + annotation_scene (AnnotationScene): prediction + frame_meta (Dict): dict with original shape + """ + # getting result include preprocessing, infer, postprocessing for sync infer + predictions, frame_meta = self.core_model(frame) + + # MaskRCNN returns tuple so no need to process + if self._task_type == TaskType.DETECTION: + predictions = detection2array(predictions) + return predictions, frame_meta + + def infer_tile(self, frame): + """Infer by patching full image to tiles + Args: + frame (np.ndarray): image + Returns: + annotation_scene (AnnotationScene): prediction + frame_meta (Dict): dict with original shape + """ + + detections, _ = self.tiler.predict(frame) + return detections, {"original_shape": frame.shape} + def __call__(self, input_data: np.ndarray) -> Tuple[Any, dict]: - return self.core_model(input_data) + if self.tiler: + return self.infer_tile(input_data) + return self.infer(input_data) diff --git a/ote_sdk/ote_sdk/usecases/exportable_code/demo/requirements.txt b/ote_sdk/ote_sdk/usecases/exportable_code/demo/requirements.txt index 85f5fd45bdf..ad98c4d3cf3 100644 --- a/ote_sdk/ote_sdk/usecases/exportable_code/demo/requirements.txt +++ b/ote_sdk/ote_sdk/usecases/exportable_code/demo/requirements.txt @@ -1,3 +1,3 @@ openvino==2022.1.0 openmodelzoo-modelapi @ git+https://github.com/openvinotoolkit/open_model_zoo/@releases/2022/SCv1.1#egg=openmodelzoo-modelapi&subdirectory=demos/common/python -ote-sdk @ git+https://github.com/openvinotoolkit/training_extensions/@561581d1f2118764237520a1520f46a1e9c87298#egg=ote-sdk&subdirectory=ote_sdk +ote-sdk @ git+https://github.com/openvinotoolkit/training_extensions/@37be3ebf805589929f36233cc4661d449dfce1eb#egg=ote-sdk&subdirectory=ote_sdk diff --git a/ote_sdk/ote_sdk/usecases/exportable_code/prediction_to_annotation_converter.py b/ote_sdk/ote_sdk/usecases/exportable_code/prediction_to_annotation_converter.py index 4d764905e47..0296be5c47c 100644 --- a/ote_sdk/ote_sdk/usecases/exportable_code/prediction_to_annotation_converter.py +++ b/ote_sdk/ote_sdk/usecases/exportable_code/prediction_to_annotation_converter.py @@ -7,7 +7,7 @@ # import abc -from typing import Any, Dict, List, Optional, Tuple +from typing import Any, Dict, List, Optional, Tuple, Union import cv2 import numpy as np @@ -19,7 +19,7 @@ AnnotationSceneKind, ) from ote_sdk.entities.id import ID -from ote_sdk.entities.label import Domain, LabelEntity +from ote_sdk.entities.label import Domain from ote_sdk.entities.label_schema import LabelSchemaEntity from ote_sdk.entities.scored_label import ScoredLabel from ote_sdk.entities.shapes.polygon import Point, Polygon @@ -54,11 +54,16 @@ class DetectionToAnnotationConverter(IPredictionToAnnotationConverter): Converts Object Detections to Annotations """ - def __init__(self, labels: List[LabelEntity]): - self.label_map = dict(enumerate(labels)) + def __init__(self, labels: Union[LabelSchemaEntity, List]): + self.labels = ( + labels.get_labels(include_empty=False) + if isinstance(labels, LabelSchemaEntity) + else labels + ) + self.label_map = dict(enumerate(self.labels)) def convert_to_annotation( - self, predictions: np.ndarray, metadata: Optional[Dict] = None + self, predictions: np.ndarray, metadata: Optional[Dict[str, np.ndarray]] = None ) -> AnnotationSceneEntity: """ Converts a set of predictions into an AnnotationScene object @@ -78,6 +83,8 @@ def convert_to_annotation( :returns AnnotationScene: AnnotationScene Object containing the boxes obtained from the prediction """ + if metadata: + predictions[:, 2:] /= np.tile(metadata["original_shape"][1::-1], 2) annotations = self.__convert_to_annotations(predictions) # media_identifier = ImageIdentifier(image_id=ID()) annotation_scene = AnnotationSceneEntity( @@ -103,14 +110,17 @@ def __convert_to_annotations(self, predictions: np.ndarray) -> List[Annotation]: (n, 7) or (n, 6) """ annotations = [] - if predictions.shape[1:] < (6,) or predictions.shape[1:] > (7,): + if ( + len(predictions) + and predictions.shape[1:] < (6,) + or predictions.shape[1:] > (7,) + ): raise ValueError( f"Shape of prediction is not expected, expected (n, 7) or (n, 6) " f"got {predictions.shape}" ) for prediction in predictions: - if prediction.shape == (7,): # Some OpenVINO models use an output shape of [7,] # If this is the case, skip the first value as it is not used @@ -119,11 +129,10 @@ def __convert_to_annotations(self, predictions: np.ndarray) -> List[Annotation]: label = int(prediction[0]) confidence = prediction[1] scored_label = ScoredLabel(self.label_map[label], confidence) + coords = prediction[2:] annotations.append( Annotation( - Rectangle( - prediction[2], prediction[3], prediction[4], prediction[5] - ), + Rectangle(coords[0], coords[1], coords[2], coords[3]), labels=[scored_label], ) ) @@ -141,7 +150,7 @@ def create_converter( converter: IPredictionToAnnotationConverter if converter_type == Domain.DETECTION: - converter = DetectionBoxToAnnotationConverter(labels) + converter = DetectionToAnnotationConverter(labels) elif converter_type == Domain.SEGMENTATION: converter = SegmentationToAnnotationConverter(labels) elif converter_type == Domain.CLASSIFICATION: @@ -177,7 +186,10 @@ def convert_to_annotation( image_size = metadata["original_shape"][1::-1] for box in predictions: scored_label = ScoredLabel(self.labels[int(box.id)], float(box.score)) - coords = np.array(box.get_coords(), dtype=float) / np.tile(image_size, 2) + coords = np.array(box.get_coords(), dtype=float) + if (coords[2] - coords[0]) * (coords[3] - coords[1]) < 1.0: + continue + coords /= np.tile(image_size, 2) annotations.append( Annotation( Rectangle(coords[0], coords[1], coords[2], coords[3]), @@ -376,9 +388,9 @@ def convert_to_annotation( for contour, hierarchy in zip(contours, hierarchies[0]): if hierarchy[3] != -1: continue - contour = list(contour) - if len(contour) <= 2: + if len(contour) <= 2 or cv2.contourArea(contour) < 1.0: continue + contour = list(contour) points = [ Point( x=point[0][0] / metadata["original_shape"][1], @@ -387,17 +399,14 @@ def convert_to_annotation( for point in contour ] polygon = Polygon(points=points) - if polygon.get_area() > 1e-12: - annotations.append( - Annotation( - polygon, - labels=[ - ScoredLabel( - self.labels[int(class_idx) - 1], float(score) - ) - ], - ) + annotations.append( + Annotation( + polygon, + labels=[ + ScoredLabel(self.labels[int(class_idx) - 1], float(score)) + ], ) + ) annotation_scene = AnnotationSceneEntity( kind=AnnotationSceneKind.PREDICTION, annotations=annotations, @@ -427,7 +436,7 @@ def convert_to_annotation( for contour, hierarchy in zip(contours, hierarchies[0]): if hierarchy[3] != -1: continue - if len(contour) <= 2: + if len(contour) <= 2 or cv2.contourArea(contour) < 1.0: continue points = [ Point( @@ -437,17 +446,14 @@ def convert_to_annotation( for point in cv2.boxPoints(cv2.minAreaRect(contour)) ] polygon = Polygon(points=points) - if polygon.get_area() > 1e-12: - annotations.append( - Annotation( - polygon, - labels=[ - ScoredLabel( - self.labels[int(class_idx) - 1], float(score) - ) - ], - ) + annotations.append( + Annotation( + polygon, + labels=[ + ScoredLabel(self.labels[int(class_idx) - 1], float(score)) + ], ) + ) annotation_scene = AnnotationSceneEntity( kind=AnnotationSceneKind.PREDICTION, annotations=annotations, diff --git a/ote_sdk/ote_sdk/utils/__init__.py b/ote_sdk/ote_sdk/utils/__init__.py index 79931efa777..bfaecaa4e08 100644 --- a/ote_sdk/ote_sdk/utils/__init__.py +++ b/ote_sdk/ote_sdk/utils/__init__.py @@ -1,3 +1,9 @@ +"""Init Utils.""" + # Copyright (C) 2021-2022 Intel Corporation # SPDX-License-Identifier: Apache-2.0 # + +from .tiler import Tiler + +__all__ = ["Tiler"] diff --git a/ote_sdk/ote_sdk/utils/detection_utils.py b/ote_sdk/ote_sdk/utils/detection_utils.py new file mode 100644 index 00000000000..7eaab499b3d --- /dev/null +++ b/ote_sdk/ote_sdk/utils/detection_utils.py @@ -0,0 +1,47 @@ +""" +Detection utils +""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from typing import List + +import numpy as np + + +def detection2array(detections: List) -> np.ndarray: + """Convert list of OpenVINO Detection to a numpy array + + Args: + detections (List): List of OpenVINO Detection containing score, id, xmin, ymin, xmax, ymax + + Returns: + np.ndarray: numpy array with [label, confidence, x1, y1, x2, y2] + """ + scores = np.empty((0, 1), dtype=np.float32) + labels = np.empty((0, 1), dtype=np.uint32) + boxes = np.empty((0, 4), dtype=np.float32) + for det in detections: + if (det.xmax - det.xmin) * (det.ymax - det.ymin) < 1.0: + continue + scores = np.append(scores, [[det.score]], axis=0) + labels = np.append(labels, [[det.id]], axis=0) + boxes = np.append( + boxes, + [[float(det.xmin), float(det.ymin), float(det.xmax), float(det.ymax)]], + axis=0, + ) + detections = np.concatenate((labels, scores, boxes), -1) + return detections diff --git a/ote_sdk/ote_sdk/utils/nms.py b/ote_sdk/ote_sdk/utils/nms.py new file mode 100644 index 00000000000..1d8e721fc65 --- /dev/null +++ b/ote_sdk/ote_sdk/utils/nms.py @@ -0,0 +1,76 @@ +""" NMS Module """ + +# Copyright (C) 2021-2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import numpy as np + + +def nms(boxes, scores, thresh): + """Adapted NMS implementation from OMZ: model_zoo/model_api/models/utils.py#L181""" + # pylint: disable=too-many-locals + + x1, y1, x2, y2 = boxes.T + areas = (x2 - x1) * (y2 - y1) + order = scores.argsort()[::-1] + + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + width = np.maximum(0.0, xx2 - xx1) + height = np.maximum(0.0, yy2 - yy1) + intersection = width * height + + union = areas[i] + areas[order[1:]] - intersection + overlap = np.divide( + intersection, + union, + out=np.zeros_like(intersection, dtype=float), + where=union != 0, + ) + + order = order[np.where(overlap <= thresh)[0] + 1] + + return keep + + +def multiclass_nms( + detections: np.ndarray, + iou_threshold=0.45, + max_num=200, +): + """Multi-class NMS + + strategy: in order to perform NMS independently per class, + we add an offset to all the boxes. The offset is dependent + only on the class idx, and is large enough so that boxes + from different classes do not overlap + + Args: + detections (np.ndarray): labels, scores and boxes + iou_threshold (float, optional): IoU threshold. Defaults to 0.45. + max_num (int, optional): Max number of objects filter. Defaults to 200. + + Returns: + _type_: _description_ + """ + labels = detections[:, 0] + scores = detections[:, 1] + boxes = detections[:, 2:] + max_coordinate = boxes.max() + offsets = labels.astype(boxes.dtype) * (max_coordinate + 1) + boxes_for_nms = boxes + offsets[:, None] + keep = nms(boxes_for_nms, scores, iou_threshold) + if max_num > 0: + keep = keep[:max_num] + keep = np.array(keep) + det = detections[keep] + return det, keep diff --git a/ote_sdk/ote_sdk/utils/tiler.py b/ote_sdk/ote_sdk/utils/tiler.py new file mode 100644 index 00000000000..c5661e780a8 --- /dev/null +++ b/ote_sdk/ote_sdk/utils/tiler.py @@ -0,0 +1,203 @@ +""" +Tiling Module +""" + +# Copyright (C) 2021-2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import copy +from itertools import product +from typing import Any, List, Tuple, Union + +import numpy as np + +from ote_sdk.utils.detection_utils import detection2array +from ote_sdk.utils.nms import multiclass_nms + + +class Tiler: + """Tile Image into (non)overlapping Patches. Images are tiled in order to efficiently process large images. + + Args: + tile_size: Tile dimension for each patch + overlap: Overlap between adjacent tile + max_number: max number of prediction per image + segm: enable instance segmentation mask output + """ + + def __init__( + self, + tile_size: int, + overlap: float, + max_number: int, + model: Any, + segm: bool = False, + ) -> None: + self.tile_size = tile_size + self.overlap = overlap + self.stride = int(tile_size * (1 - overlap)) + self.max_number = max_number + self.model = model + self.segm = segm + + def tile(self, image: np.ndarray) -> List[List[int]]: + """Tiles an input image to either overlapping, non-overlapping or random patches. + + Args: + image: Input image to tile. + + Returns: + Tiles coordinates + """ + height, width = image.shape[:2] + + coords = [[0, 0, width, height]] + for (loc_j, loc_i) in product( + range(0, width - self.tile_size + 1, self.stride), + range(0, height - self.tile_size + 1, self.stride), + ): + coords.append( + [loc_j, loc_i, loc_j + self.tile_size, loc_i + self.tile_size] + ) + return coords + + def predict(self, image: np.ndarray): + """Predict by cropping full image to tiles + + Args: + image (np.ndarray): full size image + + Returns: + detection: prediction results + features: saliency map and feature vector + """ + detections = np.empty((0, 6), dtype=np.float32) + features = [None, None] + masks: List[np.ndarray] = [] + for i, coord in enumerate(self.tile(image)): + feats, output = self.predict_tile(image, coord, masks, i == 0) + detections = np.append(detections, output, axis=0) + # cache full image feature vector and saliency map at 0 index + if i == 0: + features = copy.deepcopy(feats) + + if np.prod(detections.shape): + dets, keep = multiclass_nms(detections, max_num=self.max_number) + if self.segm: + masks = [masks[keep_idx] for keep_idx in keep] + self.resize_masks(masks, dets, image.shape) + detections = *Tiler.detection2tuple(dets), masks + return detections, features + + def resize_masks(self, masks: List, dets: np.ndarray, shape: List[int]): + """Resize Masks + + Args: + masks (List): list of raw np.ndarray masks + dets (np.ndarray): detections including labels, scores, and boxes + shape (List[int]): original full-res image shape + """ + for i, (det, mask) in enumerate(zip(dets, masks)): + masks[i] = self.model.segm_postprocess(det[2:], mask, *shape[:-1]) + + def predict_tile( + self, + image: np.ndarray, + coord: List[int], + masks: List[np.ndarray], + return_features=False, + ): + """Predict on single tile + + Args: + image (np.ndarray): full-res image + coord (List): tile coordinates + masks (List): list of raw np.ndarray masks + return_features (bool, optional): return saliency map and feature vector if set to true. Defaults to False. + + Returns: + features: saliency map and feature vector + output: single tile prediction + """ + features = [None, None] + offset_x, offset_y, tile_dict, tile_meta = self.preprocess_tile(image, coord) + raw_predictions = self.model.infer_sync(tile_dict) + output = self.model.postprocess(raw_predictions, tile_meta) + output = self.postprocess_tile(output, offset_x, offset_y, masks) + if return_features: + if "feature_vector" in raw_predictions or "saliency_map" in raw_predictions: + features = [ + raw_predictions["feature_vector"].reshape(-1), + raw_predictions["saliency_map"][0], + ] + return features, output + + def postprocess_tile( + self, + output: Union[List, Tuple], + offset_x: int, + offset_y: int, + masks: List, + ): + """Postprocess tile predictions + + Args: + output (Union[List, Tuple]): predictions + offset_x (int): tile offset x value + offset_y (int): tile offset y value + masks (List): list of raw np.ndarray mask + + Returns: + output: processed tile prediction + """ + if self.segm: + tile_scores, tile_labels, tile_boxes, tile_masks = output + tile_boxes += np.tile([offset_x, offset_y], 2) + out = np.concatenate( + ( + tile_labels[:, np.newaxis], + tile_scores[:, np.newaxis], + tile_boxes, + ), + -1, + ) + masks.extend(tile_masks) + else: + assert isinstance(output, list) + out = detection2array(output) + out[:, 2:] += np.tile([offset_x, offset_y], 2) + return out + + def preprocess_tile(self, image: np.ndarray, coord: List[int]): + """Preprocess Tile by cropping + + Args: + image (np.ndarray): full-res image + coord (List): tile coordinates + + Returns: + _type_: _description_ + """ + x1, y1, x2, y2 = coord + tile_dict, tile_meta = self.model.preprocess(image[y1:y2, x1:x2]) + if self.segm: + tile_meta["resize_mask"] = False + return x1, y1, tile_dict, tile_meta + + @staticmethod + def detection2tuple(detections: np.ndarray): + """_summary_ + + Args: + detections (np.ndarray): _description_ + + Returns: + scores (np.ndarray): scores between 0-1 + labels (np.ndarray): label indices + boxes (np.ndarray): boxes + """ + labels = detections[:, 0] + scores = detections[:, 1] + boxes = detections[:, 2:] + return scores, labels, boxes diff --git a/ote_sdk/ote_sdk/utils/vis_utils.py b/ote_sdk/ote_sdk/utils/vis_utils.py index 8ba992fac33..95b9273e190 100644 --- a/ote_sdk/ote_sdk/utils/vis_utils.py +++ b/ote_sdk/ote_sdk/utils/vis_utils.py @@ -14,10 +14,9 @@ def get_actmap( saliency_map: np.ndarray, output_res: Union[tuple, list], ) -> np.ndarray: - """ - Get activation map (heatmap) from saliency map + """Get activation map (heatmap) from saliency map - :param saliency_map: Saliency map with pixel values from 0-255 (np.ndarray) + :param saliency_map: Saliency map with pixel values from 0-255 (Union[np.ndarray, Iterable, int, float]) :param output_res: Output resolution (Union[tuple, list]) :return: activation map, heatmap (np.ndarray) """ diff --git a/ote_sdk/requirements.txt b/ote_sdk/requirements.txt index 872899c8bcd..c0b4395153d 100644 --- a/ote_sdk/requirements.txt +++ b/ote_sdk/requirements.txt @@ -1,7 +1,7 @@ numpy>=1.16.4 scikit-learn==0.24.* Shapely>=1.7.1,<=1.8.0 -networkx>=2.5,<2.8.1rc1 +networkx>=2.6,<2.8.1rc1 opencv-python==4.5.* pymongo==3.12.0 omegaconf==2.1.* diff --git a/otx/algorithms/anomaly/adapters/anomalib/callbacks/__init__.py b/otx/algorithms/anomaly/adapters/anomalib/callbacks/__init__.py index 6c23f721106..95822fd7712 100644 --- a/otx/algorithms/anomaly/adapters/anomalib/callbacks/__init__.py +++ b/otx/algorithms/anomaly/adapters/anomalib/callbacks/__init__.py @@ -16,6 +16,5 @@ from .inference import AnomalyInferenceCallback from .progress import ProgressCallback -from .score_report import ScoreReportingCallback -__all__ = ["AnomalyInferenceCallback", "ProgressCallback", "ScoreReportingCallback"] +__all__ = ["AnomalyInferenceCallback", "ProgressCallback"] diff --git a/otx/algorithms/anomaly/adapters/anomalib/callbacks/progress.py b/otx/algorithms/anomaly/adapters/anomalib/callbacks/progress.py index e53cd97ea3f..5adc99a112f 100644 --- a/otx/algorithms/anomaly/adapters/anomalib/callbacks/progress.py +++ b/otx/algorithms/anomaly/adapters/anomalib/callbacks/progress.py @@ -1,4 +1,7 @@ -"""Progressbar Callback for OTX task.""" +"""Progressbar and Score Reporting callback Callback for OTX task. + +TODO Since only one progressbar callback is supported HPO is combined into one callback. Remove this after the refactor +""" # Copyright (C) 2021 Intel Corporation # @@ -38,9 +41,9 @@ def __init__( self._progress: float = 0 if parameters is not None: - self.update_progress_callback = parameters.update_progress + self.progress_and_hpo_callback = parameters.update_progress else: - self.update_progress_callback = default_progress_callback + self.progress_and_hpo_callback = default_progress_callback def on_train_start(self, trainer, pl_module): """Store max epochs and current epoch from trainer.""" @@ -75,6 +78,22 @@ def on_test_batch_end(self, trainer, pl_module, outputs, batch, batch_idx, datal super().on_test_batch_end(trainer, pl_module, outputs, batch, batch_idx, dataloader_idx) self._update_progress(stage="test") + def on_validation_epoch_end(self, trainer, pl_module): # pylint: disable=unused-argument + """If score exists in trainer.logged_metrics, report the score.""" + if self.progress_and_hpo_callback is not None: + score = None + metric = getattr(self.progress_and_hpo_callback, "metric", None) + print(f"[DEBUG-HPO] logged_metrics = {trainer.logged_metrics}") + if metric in trainer.logged_metrics: + score = float(trainer.logged_metrics[metric]) + if score < 1.0: + score = score + int(trainer.global_step) + else: + score = -(score + int(trainer.global_step)) + + # Always assumes that hpo validation step is called during training. + self.progress_and_hpo_callback(int(self._get_progress("train")), score) # pylint: disable=not-callable + def _reset_progress(self): self._progress = 0.0 @@ -104,4 +123,4 @@ def _get_progress(self, stage: str = "train") -> float: def _update_progress(self, stage: str): progress = self._get_progress(stage) - self.update_progress_callback(int(progress), None) + self.progress_and_hpo_callback(int(progress), None) diff --git a/otx/algorithms/anomaly/adapters/anomalib/callbacks/score_report.py b/otx/algorithms/anomaly/adapters/anomalib/callbacks/score_report.py deleted file mode 100644 index b1dcf5f9e82..00000000000 --- a/otx/algorithms/anomaly/adapters/anomalib/callbacks/score_report.py +++ /dev/null @@ -1,42 +0,0 @@ -"""Score reporting callback.""" - -# Copyright (C) 2020 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions -# and limitations under the License. - -from typing import Optional - -from pytorch_lightning import Callback - -from otx.api.entities.train_parameters import TrainParameters - - -class ScoreReportingCallback(Callback): - """Callback for reporting score.""" - - def __init__(self, parameters: Optional[TrainParameters] = None) -> None: - self.score_reporting_callback = parameters.update_progress if parameters else None - - def on_validation_epoch_end(self, trainer, pl_module): # pylint: disable=unused-argument - """If score exists in trainer.logged_metrics, report the score.""" - if self.score_reporting_callback is not None: - score = None - metric = getattr(self.score_reporting_callback, "metric", None) - print(f"[DEBUG-HPO] logged_metrics = {trainer.logged_metrics}") - if metric in trainer.logged_metrics: - score = float(trainer.logged_metrics[metric]) - if score < 1.0: - score = score + int(trainer.global_step) - else: - score = -(score + int(trainer.global_step)) - self.score_reporting_callback(progress=0, score=score) # pylint: disable=not-callable diff --git a/otx/algorithms/anomaly/configs/classification/draem/configuration.yaml b/otx/algorithms/anomaly/configs/classification/draem/configuration.yaml index bdd44dfe21c..7982df58cb8 100644 --- a/otx/algorithms/anomaly/configs/classification/draem/configuration.yaml +++ b/otx/algorithms/anomaly/configs/classification/draem/configuration.yaml @@ -190,7 +190,8 @@ nncf_optimization: operator: AND rules: [] type: UI_RULES - visible_in_ui: true + value: false + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/classification/padim/configuration.yaml b/otx/algorithms/anomaly/configs/classification/padim/configuration.yaml index 3a31e2ec579..49ee9b65f9b 100644 --- a/otx/algorithms/anomaly/configs/classification/padim/configuration.yaml +++ b/otx/algorithms/anomaly/configs/classification/padim/configuration.yaml @@ -130,7 +130,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/classification/stfpm/configuration.yaml b/otx/algorithms/anomaly/configs/classification/stfpm/configuration.yaml index 2c522c31ce7..59963b8e409 100644 --- a/otx/algorithms/anomaly/configs/classification/stfpm/configuration.yaml +++ b/otx/algorithms/anomaly/configs/classification/stfpm/configuration.yaml @@ -259,7 +259,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/detection/draem/configuration.yaml b/otx/algorithms/anomaly/configs/detection/draem/configuration.yaml index bdd44dfe21c..7982df58cb8 100644 --- a/otx/algorithms/anomaly/configs/detection/draem/configuration.yaml +++ b/otx/algorithms/anomaly/configs/detection/draem/configuration.yaml @@ -190,7 +190,8 @@ nncf_optimization: operator: AND rules: [] type: UI_RULES - visible_in_ui: true + value: false + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/detection/padim/configuration.yaml b/otx/algorithms/anomaly/configs/detection/padim/configuration.yaml index 3a31e2ec579..49ee9b65f9b 100644 --- a/otx/algorithms/anomaly/configs/detection/padim/configuration.yaml +++ b/otx/algorithms/anomaly/configs/detection/padim/configuration.yaml @@ -130,7 +130,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/detection/stfpm/configuration.yaml b/otx/algorithms/anomaly/configs/detection/stfpm/configuration.yaml index 2c522c31ce7..59963b8e409 100644 --- a/otx/algorithms/anomaly/configs/detection/stfpm/configuration.yaml +++ b/otx/algorithms/anomaly/configs/detection/stfpm/configuration.yaml @@ -259,7 +259,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/segmentation/draem/configuration.yaml b/otx/algorithms/anomaly/configs/segmentation/draem/configuration.yaml index bdd44dfe21c..7982df58cb8 100644 --- a/otx/algorithms/anomaly/configs/segmentation/draem/configuration.yaml +++ b/otx/algorithms/anomaly/configs/segmentation/draem/configuration.yaml @@ -190,7 +190,8 @@ nncf_optimization: operator: AND rules: [] type: UI_RULES - visible_in_ui: true + value: false + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/segmentation/padim/configuration.yaml b/otx/algorithms/anomaly/configs/segmentation/padim/configuration.yaml index 3a31e2ec579..49ee9b65f9b 100644 --- a/otx/algorithms/anomaly/configs/segmentation/padim/configuration.yaml +++ b/otx/algorithms/anomaly/configs/segmentation/padim/configuration.yaml @@ -130,7 +130,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/configs/segmentation/stfpm/configuration.yaml b/otx/algorithms/anomaly/configs/segmentation/stfpm/configuration.yaml index 2c522c31ce7..59963b8e409 100644 --- a/otx/algorithms/anomaly/configs/segmentation/stfpm/configuration.yaml +++ b/otx/algorithms/anomaly/configs/segmentation/stfpm/configuration.yaml @@ -259,7 +259,7 @@ nncf_optimization: rules: [] type: UI_RULES value: false - visible_in_ui: true + visible_in_ui: false warning: null type: PARAMETER_GROUP visible_in_ui: true diff --git a/otx/algorithms/anomaly/tasks/inference.py b/otx/algorithms/anomaly/tasks/inference.py index 187890878e9..05699944489 100644 --- a/otx/algorithms/anomaly/tasks/inference.py +++ b/otx/algorithms/anomaly/tasks/inference.py @@ -129,8 +129,8 @@ def load_model(self, otx_model: Optional[ModelEntity]) -> AnomalyModule: AnomalyModule: Anomalib classification or segmentation model with/without weights. """ - model = get_model(config=self.config) if otx_model is None: + model = get_model(config=self.config) logger.info( "No trained model in project yet. Created new model with '%s'", self.model_name, @@ -139,10 +139,16 @@ def load_model(self, otx_model: Optional[ModelEntity]) -> AnomalyModule: buffer = io.BytesIO(otx_model.get_data("weights.pth")) model_data = torch.load(buffer, map_location=torch.device("cpu")) + if model_data["config"]["model"]["backbone"] != self.config["model"]["backbone"]: + logger.warning( + "Backbone of the model in the Task Environment is different from the one in the template. " + f"creating model with backbone={model_data['config']['model']['backbone']}" + ) + self.config["model"]["backbone"] = model_data["config"]["model"]["backbone"] try: + model = get_model(config=self.config) model.load_state_dict(model_data["model"]) logger.info("Loaded model weights from Task Environment") - except BaseException as exception: raise ValueError("Could not load the saved model. The model file structure is invalid.") from exception @@ -252,8 +258,8 @@ def export(self, export_type: ExportType, output_model: ModelEntity) -> None: logger.info("Exporting the OpenVINO model.") onnx_path = os.path.join(self.config.project.path, "onnx_model.onnx") self._export_to_onnx(onnx_path) - optimize_command = "mo --input_model " + onnx_path + " --output_dir " + self.config.project.path - subprocess.call(optimize_command, shell=True) + optimize_command = ["mo", "--input_model", onnx_path, "--output_dir", self.config.project.path] + subprocess.run(optimize_command, check=True) bin_file = glob(os.path.join(self.config.project.path, "*.bin"))[0] xml_file = glob(os.path.join(self.config.project.path, "*.xml"))[0] with open(bin_file, "rb") as file: @@ -267,7 +273,7 @@ def export(self, export_type: ExportType, output_model: ModelEntity) -> None: output_model.set_data("label_schema.json", label_schema_to_bytes(self.task_environment.label_schema)) self._set_metadata(output_model) - def _model_info(self) -> Dict: + def model_info(self) -> Dict: """Return model info to save the model weights. Returns: @@ -286,7 +292,7 @@ def save_model(self, output_model: ModelEntity) -> None: output_model (ModelEntity): Output model onto which the weights are saved. """ logger.info("Saving the model weights.") - model_info = self._model_info() + model_info = self.model_info() buffer = io.BytesIO() torch.save(model_info, buffer) output_model.set_data("weights.pth", buffer.getvalue()) @@ -302,8 +308,10 @@ def save_model(self, output_model: ModelEntity) -> None: output_model.optimization_methods = self.optimization_methods def _set_metadata(self, output_model: ModelEntity): - output_model.set_data("image_threshold", self.model.image_threshold.value.cpu().numpy().tobytes()) - output_model.set_data("pixel_threshold", self.model.pixel_threshold.value.cpu().numpy().tobytes()) + if hasattr(self.model, "image_threshold"): + output_model.set_data("image_threshold", self.model.image_threshold.value.cpu().numpy().tobytes()) + if hasattr(self.model, "pixel_threshold"): + output_model.set_data("pixel_threshold", self.model.pixel_threshold.value.cpu().numpy().tobytes()) if hasattr(self.model, "normalization_metrics"): output_model.set_data("min", self.model.normalization_metrics.state_dict()["min"].cpu().numpy().tobytes()) output_model.set_data("max", self.model.normalization_metrics.state_dict()["max"].cpu().numpy().tobytes()) diff --git a/otx/algorithms/anomaly/tasks/nncf.py b/otx/algorithms/anomaly/tasks/nncf.py index 6609feaea54..575ee5202dd 100644 --- a/otx/algorithms/anomaly/tasks/nncf.py +++ b/otx/algorithms/anomaly/tasks/nncf.py @@ -202,7 +202,7 @@ def optimize( logger.info("Training completed.") - def _model_info(self) -> Dict: + def model_info(self) -> Dict: """Return model info to save the model weights. Returns: diff --git a/otx/algorithms/anomaly/tasks/train.py b/otx/algorithms/anomaly/tasks/train.py index 4f1540690c0..4a2e4b4dbee 100644 --- a/otx/algorithms/anomaly/tasks/train.py +++ b/otx/algorithms/anomaly/tasks/train.py @@ -14,18 +14,18 @@ # See the License for the specific language governing permissions # and limitations under the License. +import io from typing import Optional +import torch +from anomalib.models import AnomalyModule, get_model from anomalib.utils.callbacks import ( MetricsConfigurationCallback, MinMaxNormalizationCallback, ) from pytorch_lightning import Trainer, seed_everything -from otx.algorithms.anomaly.adapters.anomalib.callbacks import ( - ProgressCallback, - ScoreReportingCallback, -) +from otx.algorithms.anomaly.adapters.anomalib.callbacks import ProgressCallback from otx.algorithms.anomaly.adapters.anomalib.data import OTXAnomalyDataModule from otx.algorithms.anomaly.adapters.anomalib.logger import get_logger from otx.api.entities.datasets import DatasetEntity @@ -72,7 +72,6 @@ def train( callbacks = [ ProgressCallback(parameters=train_parameters), MinMaxNormalizationCallback(), - ScoreReportingCallback(parameters=train_parameters), MetricsConfigurationCallback( adaptive_threshold=config.metrics.threshold.adaptive, default_image_threshold=config.metrics.threshold.image_default, @@ -88,3 +87,42 @@ def train( self.save_model(output_model) logger.info("Training completed.") + + def load_model(self, otx_model: Optional[ModelEntity]) -> AnomalyModule: + """Create and Load Anomalib Module from OTE Model. + + This method checks if the task environment has a saved OTE Model, + and creates one. If the OTE model already exists, it returns the + the model with the saved weights. + + Args: + otx_model (Optional[ModelEntity]): OTE Model from the + task environment. + + Returns: + AnomalyModule: Anomalib + classification or segmentation model with/without weights. + """ + model = get_model(config=self.config) + if otx_model is None: + logger.info( + "No trained model in project yet. Created new model with '%s'", + self.model_name, + ) + else: + buffer = io.BytesIO(otx_model.get_data("weights.pth")) + model_data = torch.load(buffer, map_location=torch.device("cpu")) + + try: + if model_data["config"]["model"]["backbone"] == self.config["model"]["backbone"]: + model.load_state_dict(model_data["model"]) + logger.info("Loaded model weights from Task Environment") + else: + logger.info( + "Model backbone does not match. Created new model with '%s'", + self.model_name, + ) + except BaseException as exception: + raise ValueError("Could not load the saved model. The model file structure is invalid.") from exception + + return model diff --git a/otx/algorithms/classification/adapters/mmcls/data/datasets.py b/otx/algorithms/classification/adapters/mmcls/data/datasets.py index 7d59879d41a..bf7944792cc 100644 --- a/otx/algorithms/classification/adapters/mmcls/data/datasets.py +++ b/otx/algorithms/classification/adapters/mmcls/data/datasets.py @@ -20,6 +20,7 @@ logger = get_logger() + # pylint: disable=too-many-instance-attributes @DATASETS.register_module() class MPAClsDataset(BaseDataset): diff --git a/otx/algorithms/classification/adapters/mmcls/models/classifiers/byol.py b/otx/algorithms/classification/adapters/mmcls/models/classifiers/byol.py index 685ffb8cbe9..844457cda83 100644 --- a/otx/algorithms/classification/adapters/mmcls/models/classifiers/byol.py +++ b/otx/algorithms/classification/adapters/mmcls/models/classifiers/byol.py @@ -7,7 +7,7 @@ # Copyright (C) 2022 Intel Corporation # SPDX-License-Identifier: Apache-2.0 # -# pylint: disable=missing-module-docstring, too-many-instance-attributes, unused-argument, unnecessary-pass, invalid-name +# pylint: disable=missing-module-docstring, too-many-instance-attributes, unused-argument, unnecessary-pass, invalid-name # noqa: E501 from collections import OrderedDict from typing import Any, Dict, Optional diff --git a/otx/algorithms/classification/adapters/openvino/model_wrappers/openvino_models.py b/otx/algorithms/classification/adapters/openvino/model_wrappers/openvino_models.py index a1fc09fcd71..906dd22ce59 100644 --- a/otx/algorithms/classification/adapters/openvino/model_wrappers/openvino_models.py +++ b/otx/algorithms/classification/adapters/openvino/model_wrappers/openvino_models.py @@ -27,7 +27,7 @@ from openvino.model_zoo.model_api.models.classification import Classification from openvino.model_zoo.model_api.models.types import BooleanValue, DictValue from openvino.model_zoo.model_api.models.utils import pad_image -except ImportError as e: +except ImportError: import warnings warnings.warn("ModelAPI was not found.") @@ -38,6 +38,15 @@ class OTXClassification(Classification): __model__ = "otx_classification" + def __init__(self, model_adapter, configuration=None, preload=False): + super().__init__(model_adapter, configuration, preload) + if self.hierarchical: + logits_range_dict = self.multihead_class_info.get("head_idx_to_logits_range", False) + if logits_range_dict: # json allows only string key, revert to integer. + self.multihead_class_info["head_idx_to_logits_range"] = { + int(k): v for k, v in logits_range_dict.items() + } + @classmethod def parameters(cls): """Parameters.""" @@ -96,7 +105,7 @@ def preprocess(self, inputs: np.ndarray): return dict_inputs, meta @check_input_parameters_type() - def postprocess(self, outputs: Dict[str, np.ndarray], meta: Dict[str, Any]): # pylint: disable=unused-argument + def postprocess(self, outputs: Dict[str, np.ndarray], metadata: Dict[str, Any]): # pylint: disable=unused-argument """Post-process.""" logits = outputs[self.out_layer_name].squeeze() if self.multilabel: @@ -130,16 +139,24 @@ def sigmoid_numpy(x: np.ndarray): @check_input_parameters_type() -def softmax_numpy(x: np.ndarray): +def softmax_numpy(x: np.ndarray, eps: float = 1e-9): """Softmax numpy.""" x = np.exp(x) - x /= np.sum(x) + # FIXME: "x = np.exp(x - np.max(x))" is better for numerical stability. + # But it results in "ValueError: zero-size array to reduction operation maximum which has no identity" + inf_ind = np.isinf(x) + total_infs = np.sum(inf_ind) + if total_infs > 0: + x[inf_ind] = 1.0 / total_infs + x[~inf_ind] = 0 + else: + x /= np.sum(x) + eps return x @check_input_parameters_type() def activate_multihead_output(logits: np.ndarray, multihead_class_info: dict): - """Activate multihead output.""" + """Activate multi-head output.""" for i in range(multihead_class_info["num_multiclass_heads"]): logits_begin, logits_end = multihead_class_info["head_idx_to_logits_range"][i] logits[logits_begin:logits_end] = softmax_numpy(logits[logits_begin:logits_end]) @@ -157,9 +174,6 @@ def get_hierarchical_predictions( ): """Get hierarchical predictions.""" predicted_labels = [] - logits_range_dict = multihead_class_info.get("head_idx_to_logits_range", False) - if logits_range_dict: # json allows only string key, revert to integer. - multihead_class_info["head_idx_to_logits_range"] = {int(k): v for k, v in logits_range_dict.items()} for i in range(multihead_class_info["num_multiclass_heads"]): logits_begin, logits_end = multihead_class_info["head_idx_to_logits_range"][i] head_logits = logits[logits_begin:logits_end] diff --git a/otx/algorithms/classification/configs/configuration.yaml b/otx/algorithms/classification/configs/configuration.yaml index a2b2d3dfffe..291ad88f3ac 100644 --- a/otx/algorithms/classification/configs/configuration.yaml +++ b/otx/algorithms/classification/configs/configuration.yaml @@ -83,7 +83,7 @@ learning_parameters: warning: null num_workers: affects_outcome_of: NONE - default_value: 0 + default_value: 2 description: Increasing this value might improve training speed however it might cause out of memory errors. If the number of workers is set to zero, data loading diff --git a/otx/algorithms/classification/configs/efficientnet_b0_cls_incr/template.yaml b/otx/algorithms/classification/configs/efficientnet_b0_cls_incr/template.yaml index 5dc344dda27..779fe9e6bd5 100644 --- a/otx/algorithms/classification/configs/efficientnet_b0_cls_incr/template.yaml +++ b/otx/algorithms/classification/configs/efficientnet_b0_cls_incr/template.yaml @@ -30,8 +30,6 @@ hyper_parameters: batch_size: default_value: 64 auto_hpo_state: POSSIBLE - num_workers: - default_value: 0 learning_rate: default_value: 0.0049 auto_hpo_state: POSSIBLE diff --git a/otx/algorithms/classification/configs/efficientnet_v2_s_cls_incr/template.yaml b/otx/algorithms/classification/configs/efficientnet_v2_s_cls_incr/template.yaml index 3b789c75213..8d0de6e8c70 100644 --- a/otx/algorithms/classification/configs/efficientnet_v2_s_cls_incr/template.yaml +++ b/otx/algorithms/classification/configs/efficientnet_v2_s_cls_incr/template.yaml @@ -30,8 +30,6 @@ hyper_parameters: batch_size: default_value: 64 auto_hpo_state: POSSIBLE - num_workers: - default_value: 0 learning_rate: default_value: 0.0071 auto_hpo_state: POSSIBLE diff --git a/otx/algorithms/classification/configs/mobilenet_v3_large_075_cls_incr/template_experiment.yaml b/otx/algorithms/classification/configs/mobilenet_v3_large_075_cls_incr/template_experiment.yaml index 757fbb29873..aec4c047416 100644 --- a/otx/algorithms/classification/configs/mobilenet_v3_large_075_cls_incr/template_experiment.yaml +++ b/otx/algorithms/classification/configs/mobilenet_v3_large_075_cls_incr/template_experiment.yaml @@ -30,8 +30,6 @@ hyper_parameters: batch_size: default_value: 32 auto_hpo_state: POSSIBLE - num_workers: - default_value: 4 learning_rate: default_value: 0.016 auto_hpo_state: POSSIBLE diff --git a/otx/algorithms/classification/configs/mobilenet_v3_large_1_cls_incr/template.yaml b/otx/algorithms/classification/configs/mobilenet_v3_large_1_cls_incr/template.yaml index dc0a58a99ee..3a83ac0cd22 100644 --- a/otx/algorithms/classification/configs/mobilenet_v3_large_1_cls_incr/template.yaml +++ b/otx/algorithms/classification/configs/mobilenet_v3_large_1_cls_incr/template.yaml @@ -30,8 +30,6 @@ hyper_parameters: batch_size: default_value: 64 auto_hpo_state: POSSIBLE - num_workers: - default_value: 0 learning_rate: default_value: 0.0058 auto_hpo_state: POSSIBLE diff --git a/otx/algorithms/classification/configs/mobilenet_v3_small_cls_incr/template_experiment.yaml b/otx/algorithms/classification/configs/mobilenet_v3_small_cls_incr/template_experiment.yaml index 2a61a4883a3..428234bcc49 100644 --- a/otx/algorithms/classification/configs/mobilenet_v3_small_cls_incr/template_experiment.yaml +++ b/otx/algorithms/classification/configs/mobilenet_v3_small_cls_incr/template_experiment.yaml @@ -30,8 +30,6 @@ hyper_parameters: batch_size: default_value: 32 auto_hpo_state: POSSIBLE - num_workers: - default_value: 4 learning_rate: default_value: 0.016 auto_hpo_state: POSSIBLE diff --git a/otx/algorithms/classification/tasks/inference.py b/otx/algorithms/classification/tasks/inference.py index a7c65032258..8a2f1138839 100644 --- a/otx/algorithms/classification/tasks/inference.py +++ b/otx/algorithms/classification/tasks/inference.py @@ -106,7 +106,7 @@ def infer( dump_saliency_map = not inference_parameters.is_evaluation if inference_parameters else True results = self._run_task( stage_module, - mode="train", + mode="eval", dataset=dataset, dump_features=dump_features, dump_saliency_map=dump_saliency_map, @@ -403,7 +403,7 @@ def _init_test_data_cfg(self, dataset: DatasetEntity): ) return data_cfg - def _patch_datasets(self, config: MPAConfig, domain=Domain.CLASSIFICATION): + def _patch_datasets(self, config: MPAConfig, domain=Domain.CLASSIFICATION): # noqa: C901 def patch_color_conversion(pipeline): # Default data format for OTX is RGB, while mmdet uses BGR, so negate the color conversion flag. for pipeline_step in pipeline: @@ -439,7 +439,7 @@ def patch_color_conversion(pipeline): # In train dataset, when sample size is smaller than batch size if subset == "train" and self._data_cfg: - train_data_cfg = Stage.get_train_data_cfg(self._data_cfg) + train_data_cfg = Stage.get_data_cfg(self._data_cfg, "train") if len(train_data_cfg.get("otx_dataset", [])) < self._recipe_cfg.data.get("samples_per_gpu", 2): cfg.drop_last = False diff --git a/otx/algorithms/classification/tasks/openvino.py b/otx/algorithms/classification/tasks/openvino.py index d1867f995e1..1712835d086 100644 --- a/otx/algorithms/classification/tasks/openvino.py +++ b/otx/algorithms/classification/tasks/openvino.py @@ -84,6 +84,7 @@ logger = logging.getLogger(__name__) + # TODO: refactoring to Sphinx style. class ClassificationOpenVINOInferencer(BaseInferencer): """ClassificationOpenVINOInferencer class in OpenVINO task.""" diff --git a/otx/algorithms/classification/tasks/train.py b/otx/algorithms/classification/tasks/train.py index f98e86645a9..3b11cc440a2 100644 --- a/otx/algorithms/classification/tasks/train.py +++ b/otx/algorithms/classification/tasks/train.py @@ -43,6 +43,7 @@ TASK_CONFIG = ClassificationConfig + # pylint: disable= too-many-ancestors class ClassificationTrainTask(ClassificationInferenceTask): """Train Task Implementation of OTX Classification.""" diff --git a/otx/algorithms/common/adapters/mmcv/models/backbones/__init__.py b/otx/algorithms/common/adapters/mmcv/models/backbones/__init__.py index 067bec50e1e..0bf0e19c101 100644 --- a/otx/algorithms/common/adapters/mmcv/models/backbones/__init__.py +++ b/otx/algorithms/common/adapters/mmcv/models/backbones/__init__.py @@ -14,7 +14,7 @@ # See the License for the specific language governing permissions # and limitations under the License. -from . import torchvision_backbones +from . import torchvision_backbones # noqa: F401 from .efficientnet import OTXEfficientNet from .efficientnetv2 import OTXEfficientNetV2 from .mobilenetv3 import OTXMobileNetV3 diff --git a/otx/algorithms/common/configs/training_base.py b/otx/algorithms/common/configs/training_base.py index 3442e3000b2..52e2e68069c 100644 --- a/otx/algorithms/common/configs/training_base.py +++ b/otx/algorithms/common/configs/training_base.py @@ -259,3 +259,50 @@ class BaseAlgoBackendParameters(ParameterGroup): editable=False, visible_in_ui=True, ) + + @attrs + class BaseTilingParameters(ParameterGroup): + """BaseTilingParameters for OTX Algorithms.""" + + enable_tiling = configurable_boolean( + default_value=False, + header="Enable tiling", + description="Set to True to allow tiny objects to be better detected.", + warning="Tiling trades off speed for accuracy as it increases the number of images to be processed.", + affects_outcome_of=ModelLifecycle.NONE, + ) + + enable_adaptive_params = configurable_boolean( + default_value=True, + header="Enable adaptive tiling parameters", + description="Config tile size and tile overlap adaptively based on annotated dataset statistic", + warning="", + affects_outcome_of=ModelLifecycle.NONE, + ) + + tile_size = configurable_integer( + header="Tile Image Size", + description="Tile Image Size", + default_value=400, + min_value=100, + max_value=1024, + affects_outcome_of=ModelLifecycle.NONE, + ) + + tile_overlap = configurable_float( + header="Tile Overlap", + description="Overlap between each two neighboring tiles.", + default_value=0.2, + min_value=0.0, + max_value=1.0, + affects_outcome_of=ModelLifecycle.NONE, + ) + + tile_max_number = configurable_integer( + header="Max object per image", + description="Max object per image", + default_value=1500, + min_value=1, + max_value=10000, + affects_outcome_of=ModelLifecycle.NONE, + ) diff --git a/otx/algorithms/common/tasks/training_base.py b/otx/algorithms/common/tasks/training_base.py index d96e2bf7ed5..1896b884745 100644 --- a/otx/algorithms/common/tasks/training_base.py +++ b/otx/algorithms/common/tasks/training_base.py @@ -112,7 +112,7 @@ def _run_task(self, stage_module, mode=None, dataset=None, **kwargs): model_classes = [label.name for label in self._model_label_schema] self._model_cfg["model_classes"] = model_classes if dataset is not None: - train_data_cfg = Stage.get_train_data_cfg(self._data_cfg) + train_data_cfg = Stage.get_data_cfg(self._data_cfg, "train") train_data_cfg["data_classes"] = data_classes new_classes = np.setdiff1d(data_classes, model_classes).tolist() train_data_cfg["new_classes"] = new_classes diff --git a/otx/algorithms/detection/adapters/openvino/model_wrappers/openvino_models.py b/otx/algorithms/detection/adapters/openvino/model_wrappers/openvino_models.py index a2a3b3a552a..bbde42e0659 100644 --- a/otx/algorithms/detection/adapters/openvino/model_wrappers/openvino_models.py +++ b/otx/algorithms/detection/adapters/openvino/model_wrappers/openvino_models.py @@ -44,6 +44,10 @@ def _get_outputs(self): def postprocess(self, outputs, meta): """Post process function for OTX MaskRCNN model.""" + + # pylint: disable-msg=too-many-locals + resize_mask = meta.get("resize_mask", True) + boxes = ( outputs[self.output_blob_name["boxes"]] if self.is_segmentoly @@ -75,10 +79,17 @@ def postprocess(self, outputs, meta): resized_masks = [] for box, cls, raw_mask in zip(boxes, classes, masks): raw_cls_mask = raw_mask[cls, ...] if self.is_segmentoly else raw_mask - resized_masks.append(self._segm_postprocess(box, raw_cls_mask, *meta["original_shape"][:-1])) + if resize_mask: + resized_masks.append(self._segm_postprocess(box, raw_cls_mask, *meta["original_shape"][:-1])) + else: + resized_masks.append(raw_cls_mask) return scores, classes, boxes, resized_masks + def segm_postprocess(self, *args, **kwargs): + """Post-process for segmentation masks.""" + return self._segm_postprocess(*args, **kwargs) + class OTXSSDModel(SSD): """OpenVINO model wrapper for OTX SSD model.""" diff --git a/otx/algorithms/detection/configs/base/configuration.py b/otx/algorithms/detection/configs/base/configuration.py index 74a738627ba..403a969f914 100644 --- a/otx/algorithms/detection/configs/base/configuration.py +++ b/otx/algorithms/detection/configs/base/configuration.py @@ -74,8 +74,14 @@ class __AlgoBackend(BaseConfig.BaseAlgoBackendParameters): header = string_attribute("Parameters for the MPA algo-backend") description = header + @attrs + class __TilingParameters(BaseConfig.BaseTilingParameters): + header = string_attribute("Tiling Parameters") + description = header + learning_parameters = add_parameter_group(__LearningParameters) postprocessing = add_parameter_group(__Postprocessing) nncf_optimization = add_parameter_group(__NNCFOptimization) pot_parameters = add_parameter_group(__POTParameter) algo_backend = add_parameter_group(__AlgoBackend) + tiling_parameters = add_parameter_group(__TilingParameters) diff --git a/otx/algorithms/detection/configs/detection/configuration.yaml b/otx/algorithms/detection/configs/detection/configuration.yaml index 922cec38ece..749ce505b4e 100644 --- a/otx/algorithms/detection/configs/detection/configuration.yaml +++ b/otx/algorithms/detection/configs/detection/configuration.yaml @@ -101,7 +101,7 @@ learning_parameters: warning: null num_workers: affects_outcome_of: NONE - default_value: 0 + default_value: 2 description: Increasing this value might improve training speed however it might cause out of memory errors. If the number of workers is set to zero, data loading @@ -391,3 +391,96 @@ nncf_optimization: warning: null type: PARAMETER_GROUP visible_in_ui: True + +tiling_parameters: + header: Tiling + description: Crop dataset to tiles + + enable_tiling: + header: Enable tiling + description: Set to True to allow tiny objects to be better detected. + default_value: false + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: Tiling trades off speed for accuracy as it increases the number of images to be processed. + + enable_adaptive_params: + header: Enable adaptive tiling parameters + description: Config tile size and tile overlap adaptively based on annotated dataset statistic + default_value: true + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + + tile_size: + header: Tile Image Size + description: Tile Image Size + affects_outcome_of: TRAINING + default_value: 400 + min_value: 100 + max_value: 1024 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 400 + visible_in_ui: true + warning: null + + tile_overlap: + header: Tile Overlap + description: Overlap between each two neighboring tiles. + affects_outcome_of: TRAINING + default_value: 0.2 + min_value: 0.0 + max_value: 1.0 + type: FLOAT + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.2 + visible_in_ui: true + warning: null + + tile_max_number: + header: Max object per image + description: Max object per image + affects_outcome_of: TRAINING + default_value: 1500 + min_value: 1 + max_value: 10000 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 1500 + visible_in_ui: true + warning: null + + type: PARAMETER_GROUP + visible_in_ui: true diff --git a/otx/algorithms/detection/configs/detection/cspdarknet_yolox/tile_pipeline.py b/otx/algorithms/detection/configs/detection/cspdarknet_yolox/tile_pipeline.py new file mode 100644 index 00000000000..f51d6f3123a --- /dev/null +++ b/otx/algorithms/detection/configs/detection/cspdarknet_yolox/tile_pipeline.py @@ -0,0 +1,113 @@ +"""Tiling Pipeline of YOLOX model for Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +# pylint: disable=invalid-name + +# TODO[EUGENE]: SKIP MOSAIC AND MultiImageMixDataset in tiling + +dataset_type = "CocoDataset" + +img_scale = (640, 640) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="RandomAffine", scaling_ratio_range=(0.5, 1.5), border=(-img_scale[0] // 2, -img_scale[1] // 2)), + dict( + type="PhotoMetricDistortion", + brightness_delta=32, + contrast_range=(0.5, 1.5), + saturation_range=(0.5, 1.5), + hue_delta=18, + ), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Resize", img_scale=img_scale, keep_ratio=False), + dict(type="Pad", pad_to_square=True, pad_val=114.0), + dict(type="Normalize", **img_norm_cfg), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=(416, 416), + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Pad", size=(416, 416), pad_val=114.0), + dict(type="Normalize", **img_norm_cfg), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 2 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile", to_float32=True), + dict(type="LoadAnnotations", with_bbox=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=4, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/otx/algorithms/detection/configs/detection/mobilenetv2_atss/tile_pipeline.py b/otx/algorithms/detection/configs/detection/mobilenetv2_atss/tile_pipeline.py new file mode 100644 index 00000000000..38dae7ef5b1 --- /dev/null +++ b/otx/algorithms/detection/configs/detection/mobilenetv2_atss/tile_pipeline.py @@ -0,0 +1,107 @@ +"""Tiling Pipeline of ATSS model for Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +# pylint: disable=invalid-name + +dataset_type = "CocoDataset" + +img_size = (992, 736) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[0, 0, 0], std=[255, 255, 255], to_rgb=True) + +train_pipeline = [ + dict(type="MinIoURandomCrop", min_ious=(0.1, 0.3, 0.5, 0.7, 0.9), min_crop_size=0.3), + dict( + type="Resize", + img_scale=[(992, 736), (896, 736), (1088, 736), (992, 672), (992, 800)], + multiscale_mode="value", + keep_ratio=False, + ), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 2 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/data_pipeline.py b/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/data_pipeline.py index bea0ee7ee30..46ecab71969 100644 --- a/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/data_pipeline.py +++ b/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/data_pipeline.py @@ -55,15 +55,10 @@ samples_per_gpu=10, workers_per_gpu=4, train=dict( - type="RepeatDataset", - times=1, - adaptive_repeat_times=True, - dataset=dict( - type=__dataset_type, - ann_file="data/coco/annotations/instances_train2017.json", - img_prefix="data/coco/train2017", - pipeline=train_pipeline, - ), + type=__dataset_type, + ann_file="data/coco/annotations/instances_train2017.json", + img_prefix="data/coco/train2017", + pipeline=train_pipeline, ), val=dict( type=__dataset_type, diff --git a/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/tile_pipeline.py b/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/tile_pipeline.py new file mode 100644 index 00000000000..d77c65a190a --- /dev/null +++ b/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/tile_pipeline.py @@ -0,0 +1,105 @@ +"""Tiling Pipeline of SSD model for Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +# pylint: disable=invalid-name + +dataset_type = "CocoDataset" + +img_size = (864, 864) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[0, 0, 0], std=[255, 255, 255], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="Normalize", **img_norm_cfg), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="Normalize", **img_norm_cfg), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 10 +__workers_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, + workers_per_gpu=__workers_per_gpu, + train=train_dataset, + val=val_dataset, + test=test_dataset, +) diff --git a/otx/algorithms/detection/configs/detection/resnet50_vfnet/tile_pipeline.py b/otx/algorithms/detection/configs/detection/resnet50_vfnet/tile_pipeline.py new file mode 100644 index 00000000000..a842d6ff19a --- /dev/null +++ b/otx/algorithms/detection/configs/detection/resnet50_vfnet/tile_pipeline.py @@ -0,0 +1,103 @@ +"""Tiling Pipeline of VFNET model for Detection Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +# pylint: disable=invalid-name + +dataset_type = "CocoDataset" + +img_size = (1024, 1024) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/otx/algorithms/detection/configs/instance_segmentation/configuration.yaml b/otx/algorithms/detection/configs/instance_segmentation/configuration.yaml index 18e64e43ca3..51d7e9d3696 100644 --- a/otx/algorithms/detection/configs/instance_segmentation/configuration.yaml +++ b/otx/algorithms/detection/configs/instance_segmentation/configuration.yaml @@ -391,3 +391,96 @@ nncf_optimization: warning: null type: PARAMETER_GROUP visible_in_ui: True + +tiling_parameters: + header: Tiling + description: Crop dataset to tiles + + enable_tiling: + header: Enable tiling + description: Set to True to allow tiny objects to be better detected. + default_value: false + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: Tiling trades off speed for accuracy as it increases the number of images to be processed. + + enable_adaptive_params: + header: Enable adaptive tiling parameters + description: Config tile size and tile overlap adaptively based on annotated dataset statistic + default_value: True + editable: true + affects_outcome_of: TRAINING + type: BOOLEAN + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: true + visible_in_ui: true + warning: null + + tile_size: + header: Tile Image Size + description: Tile Image Size + affects_outcome_of: TRAINING + default_value: 400 + min_value: 100 + max_value: 1024 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 400 + visible_in_ui: true + warning: null + + tile_overlap: + header: Tile Overlap + description: Overlap between each two neighboring tiles. + affects_outcome_of: TRAINING + default_value: 0.2 + min_value: 0.0 + max_value: 1.0 + type: FLOAT + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 0.2 + visible_in_ui: true + warning: null + + tile_max_number: + header: Max object per image + description: Max object per image + affects_outcome_of: TRAINING + default_value: 1500 + min_value: 1 + max_value: 10000 + type: INTEGER + editable: true + ui_rules: + action: DISABLE_EDITING + operator: AND + rules: [] + type: UI_RULES + value: 1500 + visible_in_ui: true + warning: null + + type: PARAMETER_GROUP + visible_in_ui: true diff --git a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/data_pipeline.py b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/data_pipeline.py index bc892e6429f..1ad8a5cca6d 100644 --- a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/data_pipeline.py +++ b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/data_pipeline.py @@ -19,7 +19,7 @@ __img_size = (1024, 1024) # TODO: A comparison experiment is needed to determine which value is appropriate for to_rgb. -__img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=False) +__img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=True) train_pipeline = [ dict(type="LoadImageFromFile"), diff --git a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/model.py b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/model.py index 0e0f0a561c8..bb17300914b 100644 --- a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/model.py +++ b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/model.py @@ -115,5 +115,6 @@ openvino_training_extensions/models/instance_segmentation/\ v2/efficientnet_b2b-mask_rcnn-576x576.pth" +evaluation = dict(interval=1, metric="mAP", save_best="mAP", iou_thr=[0.5]) fp16 = dict(loss_scale=512.0) ignore = True diff --git a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/template.yaml b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/template.yaml index 9447bab4d8d..d01b363df06 100644 --- a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/template.yaml +++ b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/template.yaml @@ -14,7 +14,6 @@ framework: OTEDetection v2.9.1 entrypoints: base: otx.algorithms.detection.tasks.DetectionTrainTask openvino: otx.algorithms.detection.tasks.OpenVINODetectionTask - nncf: otx.algorithms.detection.tasks.DetectionNNCFTask data_pipeline_path: ./data_pipeline.py # Capabilities. @@ -41,7 +40,7 @@ hyper_parameters: default_value: 2 nncf_optimization: enable_quantization: - default_value: true + default_value: false enable_pruning: default_value: false pruning_supported: diff --git a/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py new file mode 100644 index 00000000000..cea6fbdb3ef --- /dev/null +++ b/otx/algorithms/detection/configs/instance_segmentation/efficientnetb2b_maskrcnn/tile_pipeline.py @@ -0,0 +1,103 @@ +"""Tiling Pipeline of EfficientNetB2B model for Instance-Seg Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +# pylint: disable=invalid-name + +dataset_type = "CocoDataset" + +img_size = (1024, 1024) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=(103.53, 116.28, 123.675), std=(1.0, 1.0, 1.0), to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/model.py b/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/model.py index 89e3c613a20..c8d7beb5aae 100644 --- a/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/model.py +++ b/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/model.py @@ -122,4 +122,5 @@ v2.0/mask_rcnn/mask_rcnn_r50_fpn_mstrain-poly_3x_coco/\ mask_rcnn_r50_fpn_mstrain-poly_3x_coco_20210524_201154-21b550bb.pth" +evaluation = dict(interval=1, metric="mAP", save_best="mAP", iou_thr=[0.5]) ignore = True diff --git a/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/tile_pipeline.py b/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/tile_pipeline.py new file mode 100644 index 00000000000..6b1b4390cde --- /dev/null +++ b/otx/algorithms/detection/configs/instance_segmentation/resnet50_maskrcnn/tile_pipeline.py @@ -0,0 +1,103 @@ +"""Tiling Pipeline of Resnet model for Instance-Seg Task.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +# pylint: disable=invalid-name + +dataset_type = "CocoDataset" + +img_size = (1344, 800) + +tile_cfg = dict( + tile_size=400, min_area_ratio=0.9, overlap_ratio=0.2, iou_threshold=0.45, max_per_img=1500, filter_empty_gt=True +) + +img_norm_cfg = dict(mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +train_pipeline = [ + dict(type="Resize", img_scale=img_size, keep_ratio=False), + dict(type="RandomFlip", flip_ratio=0.5), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="DefaultFormatBundle"), + dict(type="Collect", keys=["img", "gt_bboxes", "gt_labels", "gt_masks"]), +] + +test_pipeline = [ + dict( + type="MultiScaleFlipAug", + img_scale=img_size, + flip=False, + transforms=[ + dict(type="Resize", keep_ratio=False), + dict(type="RandomFlip"), + dict(type="Normalize", **img_norm_cfg), + dict(type="Pad", size_divisor=32), + dict(type="ImageToTensor", keys=["img"]), + dict(type="Collect", keys=["img"]), + ], + ) +] + +__dataset_type = "CocoDataset" +__data_root = "data/coco/" + +__samples_per_gpu = 4 + +train_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_train.json", + img_prefix=__data_root + "images/train", + pipeline=[ + dict(type="LoadImageFromFile"), + dict(type="LoadAnnotations", with_bbox=True, with_mask=True), + ], + ), + pipeline=train_pipeline, + **tile_cfg +) + +val_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_val.json", + img_prefix=__data_root + "images/val", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + +test_dataset = dict( + type="ImageTilingDataset", + dataset=dict( + type=__dataset_type, + ann_file=__data_root + "annotations/instances_test.json", + img_prefix=__data_root + "images/test", + test_mode=True, + pipeline=[dict(type="LoadImageFromFile")], + ), + pipeline=test_pipeline, + **tile_cfg +) + + +data = dict( + samples_per_gpu=__samples_per_gpu, workers_per_gpu=2, train=train_dataset, val=val_dataset, test=test_dataset +) diff --git a/otx/algorithms/detection/tasks/inference.py b/otx/algorithms/detection/tasks/inference.py index eb9830c1803..e0cf730bd99 100644 --- a/otx/algorithms/detection/tasks/inference.py +++ b/otx/algorithms/detection/tasks/inference.py @@ -33,6 +33,7 @@ patch_evaluation, ) from otx.algorithms.detection.configs.base import DetectionConfig +from otx.api.configuration.helper.utils import config_to_bytes from otx.api.entities.annotation import Annotation from otx.api.entities.datasets import DatasetEntity from otx.api.entities.id import ID @@ -240,6 +241,7 @@ def export(self, export_type: ExportType, output_model: ModelEntity): "confidence_threshold", np.array([self.confidence_threshold], dtype=np.float32).tobytes(), ) + output_model.set_data("config.json", config_to_bytes(self._hyperparams)) output_model.precision = [ModelPrecision.FP32] output_model.optimization_methods = self._optimization_methods output_model.set_data( diff --git a/otx/algorithms/detection/tasks/openvino.py b/otx/algorithms/detection/tasks/openvino.py index 8c1a4ba63fc..37fbce18b70 100644 --- a/otx/algorithms/detection/tasks/openvino.py +++ b/otx/algorithms/detection/tasks/openvino.py @@ -38,6 +38,7 @@ from otx.algorithms.detection.adapters.openvino import model_wrappers from otx.algorithms.detection.configs.base import DetectionConfig +from otx.api.configuration.helper.utils import config_to_bytes from otx.api.entities.annotation import AnnotationSceneEntity from otx.api.entities.datasets import DatasetEntity from otx.api.entities.inference_parameters import ( @@ -63,7 +64,7 @@ from otx.api.usecases.exportable_code import demo from otx.api.usecases.exportable_code.inference import BaseInferencer from otx.api.usecases.exportable_code.prediction_to_annotation_converter import ( - DetectionBoxToAnnotationConverter, + DetectionToAnnotationConverter, IPredictionToAnnotationConverter, MaskToAnnotationConverter, RotatedRectToAnnotationConverter, @@ -75,11 +76,13 @@ IOptimizationTask, OptimizationType, ) +from otx.api.utils import Tiler from otx.api.utils.argument_checks import ( DatasetParamTypeCheck, check_input_parameters_type, ) from otx.api.utils.dataset_utils import add_saliency_maps_to_dataset_item +from otx.api.utils.detection_utils import detection2array logger = get_logger() @@ -122,12 +125,12 @@ def predict(self, image: np.ndarray): "Could not find Feature Vector and Saliency Map in OpenVINO output. " "Please rerun OpenVINO export or retrain the model." ) - features = [None, None] + features = (None, None) else: - features = [ + features = ( raw_predictions["feature_vector"].reshape(-1), raw_predictions["saliency_map"][0], - ] + ) return predictions, features @check_input_parameters_type() @@ -135,6 +138,28 @@ def forward(self, image: Dict[str, np.ndarray]) -> Dict[str, np.ndarray]: """Forward function of OpenVINO Detection Inferencer.""" return self.model.infer_sync(image) + @check_input_parameters_type() + def predict_tile( + self, image: np.ndarray, tile_size: int, overlap: float, max_number: int + ) -> Tuple[AnnotationSceneEntity, Tuple[np.ndarray, np.ndarray]]: + """Run prediction by tiling image to small patches. + + Args: + image (np.ndarray): input image + tile_size (int): tile crop size + overlap (float): overlap ratio between tiles + max_number (int): max number of predicted objects allowed + + Returns: + detections: AnnotationSceneEntity + features: list including saliency map and feature vector + """ + segm = isinstance(self.converter, (MaskToAnnotationConverter, RotatedRectToAnnotationConverter)) + tiler = Tiler(tile_size=tile_size, overlap=overlap, max_number=max_number, model=self.model, segm=segm) + detections, features = tiler.predict(image) + detections = self.converter.convert_to_annotation(detections, metadata={"original_shape": image.shape}) + return detections, features + class OpenVINODetectionInferencer(BaseInferencerWithConverter): """Inferencer implementation for OTXDetection using OpenVINO backend.""" @@ -173,10 +198,17 @@ def __init__( ) } model = Model.create_model("OTX_SSD", model_adapter, configuration, preload=True) - converter = DetectionBoxToAnnotationConverter(label_schema) + converter = DetectionToAnnotationConverter(label_schema) super().__init__(configuration, model, converter) + @check_input_parameters_type() + def post_process(self, prediction: Dict[str, np.ndarray], metadata: Dict[str, Any]) -> AnnotationSceneEntity: + """Detection specific post-process.""" + detections = self.model.postprocess(prediction, metadata) + detections = detection2array(detections) + return self.converter.convert_to_annotation(detections, metadata) + class OpenVINOMaskInferencer(BaseInferencerWithConverter): """Mask Inferencer implementation for OTXDetection using OpenVINO backend.""" @@ -280,6 +312,7 @@ def __init__(self, task_environment: TaskEnvironment): self.model = self.task_environment.model self.task_type = self.task_environment.model_template.task_type self.confidence_threshold: float = 0.0 + self.config = self.load_config() self.inferencer = self.load_inferencer() logger.info("OpenVINO task initialization completed") @@ -288,6 +321,16 @@ def hparams(self): """Hparams of OpenVINO Detection Task.""" return self.task_environment.get_hyper_parameters(DetectionConfig) + def load_config(self) -> Dict: + """Load configurable parameters from model adapter. + + Returns: + Dict: config dictionary + """ + if self.model is not None and self.model.get_data("config.json"): + return json.loads(self.model.get_data("config.json")) + return {} + def load_inferencer( self, ) -> Union[OpenVINODetectionInferencer, OpenVINOMaskInferencer]: @@ -299,6 +342,7 @@ def load_inferencer( np.frombuffer(self.model.get_data("confidence_threshold"), dtype=np.float32)[0] ) _hparams.postprocessing.confidence_threshold = self.confidence_threshold + _hparams.tiling_parameters.enable_tiling = self.config["tiling_parameters"]["enable_tiling"]["value"] args = [ _hparams, self.task_environment.label_schema, @@ -329,9 +373,24 @@ def infer( update_progress_callback = default_progress_callback add_saliency_map = True + if self.config and self.config["tiling_parameters"]["enable_tiling"]["value"]: + tile_size = self.config["tiling_parameters"]["tile_size"]["value"] + tile_overlap = self.config["tiling_parameters"]["tile_overlap"]["value"] + max_number = self.config["tiling_parameters"]["tile_max_number"]["value"] + logger.info("Run inference with tiling") + dataset_size = len(dataset) for i, dataset_item in enumerate(dataset, 1): - predicted_scene, features = self.inferencer.predict(dataset_item.numpy) + if self.config["tiling_parameters"]["enable_tiling"]["value"]: + predicted_scene, features = self.inferencer.predict_tile( + dataset_item.numpy, + tile_size=tile_size, + overlap=tile_overlap, + max_number=max_number, + ) + else: + predicted_scene, features = self.inferencer.predict(dataset_item.numpy) + dataset_item.append_annotations(predicted_scene.annotations) feature_vector, saliency_map = features if feature_vector is not None: @@ -407,6 +466,7 @@ def deploy(self, output_model: ModelEntity) -> None: parameters["converter_type"] = str(self.task_type) parameters["model_parameters"] = self.inferencer.configuration parameters["model_parameters"]["labels"] = LabelSchemaMapper.forward(self.task_environment.label_schema) + parameters["tiling_parameters"] = self.config["tiling_parameters"] zip_buffer = io.BytesIO() with ZipFile(zip_buffer, "w") as arch: @@ -529,6 +589,7 @@ def optimize( "label_schema.json", label_schema_to_bytes(self.task_environment.label_schema), ) + output_model.set_data("config.json", config_to_bytes(self.hparams)) # set model attributes for quantized model output_model.model_format = ModelFormat.OPENVINO diff --git a/otx/algorithms/detection/tasks/train.py b/otx/algorithms/detection/tasks/train.py index de67d368e40..3a8a027f66a 100644 --- a/otx/algorithms/detection/tasks/train.py +++ b/otx/algorithms/detection/tasks/train.py @@ -188,6 +188,7 @@ def train( metric = MetricsHelper.compute_f_measure(result_set, vary_confidence_threshold=False) # compose performance statistics + # TODO[EUGENE]: HOW TO ADD A MAE CURVE FOR TaskType.COUNTING? performance = metric.get_performance() performance.dashboard_metrics.extend( DetectionTrainTask._generate_training_metrics(self._learning_curves, val_map) diff --git a/otx/algorithms/detection/utils/data.py b/otx/algorithms/detection/utils/data.py index 5124f5ea955..72b67e4f1e7 100644 --- a/otx/algorithms/detection/utils/data.py +++ b/otx/algorithms/detection/utils/data.py @@ -15,12 +15,16 @@ # and limitations under the License. import json +import math import os.path as osp from typing import Any, Dict, List, Optional, Sequence import numpy as np from pycocotools.coco import COCO +from otx.algorithms.detection.adapters.mmdet.data.dataset import ( + get_annotation_mmdet_format, +) from otx.api.entities.annotation import ( Annotation, AnnotationSceneEntity, @@ -454,3 +458,49 @@ def format_list_to_str(value_lists: list): for value_list in value_lists: str_value += "[" + ", ".join(f"{value:.2f}" for value in value_list) + "], " return f"[{str_value[:-2]}]" + + +def adaptive_tile_params(dataset: DatasetEntity, object_tile_ratio=0.01, rule="avg") -> Dict: + """Config tile parameters. + + Adapt based on annotation statistics. + i.e. tile size, tile overlap, ratio and max objects per sample + + Args: + dataset (DatasetEntity): training dataset + object_tile_ratio (float, optional): The desired ratio of object area and tile area. Defaults to 0.01. + rule (str, optional): min or avg. In `min` mode, tile size is computed based on the smallest object, and in + `avg` mode tile size is computed by averaging all the object areas. Defaults to "avg". + + Returns: + Dict: adaptive tile parameters + """ + assert rule in ["min", "avg"], f"Unknown rule: {rule}" + + tile_cfg = dict(tile_size=0, tile_overlap=0, tile_max_number=0) + bboxes = np.zeros((0, 4), dtype=np.float32) + labels = dataset.get_labels(include_empty=False) + domain = labels[0].domain + max_object = 0 + for dataset_item in dataset: + result = get_annotation_mmdet_format(dataset_item, labels, domain) + if len(result["bboxes"]): + bboxes = np.concatenate((bboxes, result["bboxes"]), 0) + if len(result["bboxes"]) > max_object: + max_object = len(result["bboxes"]) + + areas = (bboxes[:, 2] - bboxes[:, 0]) * (bboxes[:, 3] - bboxes[:, 1]) + + if rule == "min": + object_area = np.min(areas) + elif rule == "avg": + object_area = np.mean(areas) + max_area = np.max(areas) + + tile_size = int(math.sqrt(object_area / object_tile_ratio)) + overlap_ratio = max_area / (tile_size**2) if max_area / (tile_size**2) < 1.0 else None + + tile_cfg.update(dict(tile_size=tile_size, tile_max_number=max_object)) + if overlap_ratio: + tile_cfg.update(dict(tile_overlap=overlap_ratio)) + return tile_cfg diff --git a/otx/algorithms/init_venv.sh b/otx/algorithms/init_venv.sh old mode 100644 new mode 100755 diff --git a/otx/algorithms/segmentation/adapters/mmseg/data/dataset.py b/otx/algorithms/segmentation/adapters/mmseg/data/dataset.py index 7f71fef2f1f..0cdc47de503 100644 --- a/otx/algorithms/segmentation/adapters/mmseg/data/dataset.py +++ b/otx/algorithms/segmentation/adapters/mmseg/data/dataset.py @@ -76,7 +76,12 @@ class _DataInfoProxy: convenient for mmsegmentation. """ - def __init__(self, otx_dataset, labels=None): + def __init__( + self, + otx_dataset, + labels=None, + **kwargs, # pylint: disable=unused-argument + ): self.otx_dataset = otx_dataset self.labels = labels self.label_idx = {label.id: i for i, label in enumerate(labels)} diff --git a/otx/algorithms/segmentation/configs/ocr_lite_hrnet_18/pot_optimization_config.json b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_18/pot_optimization_config.json new file mode 100644 index 00000000000..5572b3c2779 --- /dev/null +++ b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_18/pot_optimization_config.json @@ -0,0 +1,95 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "1555", + "1575", + "1715", + "1735", + "1840", + "1910", + "1930", + "2070", + "2090", + "2195", + "2286", + "2306", + "2326", + "2523", + "2543", + "2709", + "2563", + "2731", + "2764", + "2865", + "2885", + "2905", + "3102", + "3122", + "3288", + "3142", + "3310", + "3343", + "3444", + "3464", + "3484", + "3681", + "3701", + "3867", + "3721", + "3889", + "3922", + "4023", + "4043", + "4063", + "4260", + "4280", + "4446", + "4300", + "4468", + "4501", + "4623", + "4643", + "4663", + "4683", + "4937", + "4957", + "5184", + "4977", + "5206", + "4997", + "5228", + "5261", + "5283", + "5331", + "5468", + "5488", + "5508", + "5528", + "5782", + "5802", + "6029", + "5822", + "6051", + "5842", + "6073", + "6106", + "6128", + "6176", + "6248", + "6273", + "6298" + ] + } + } + } + ] +} diff --git a/otx/algorithms/segmentation/configs/ocr_lite_hrnet_18_mod2/pot_optimization_config.json b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_18_mod2/pot_optimization_config.json new file mode 100644 index 00000000000..3cefbe0f680 --- /dev/null +++ b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_18_mod2/pot_optimization_config.json @@ -0,0 +1,97 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "use_fast_bias": false, + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "1555", + "1575", + "1715", + "1735", + "1840", + "1910", + "1930", + "2070", + "2090", + "2195", + "2286", + "2306", + "2326", + "2523", + "2543", + "2709", + "2563", + "2731", + "2764", + "2865", + "2885", + "2905", + "3102", + "3122", + "3288", + "3142", + "3310", + "3343", + "3444", + "3464", + "3484", + "3681", + "3701", + "3867", + "3721", + "3889", + "3922", + "4023", + "4043", + "4063", + "4260", + "4280", + "4446", + "4300", + "4468", + "4501", + "4623", + "4643", + "4663", + "4683", + "4937", + "4957", + "5184", + "4977", + "5206", + "4997", + "5228", + "5261", + "5283", + "5331", + "5468", + "5488", + "5508", + "5528", + "5782", + "5802", + "6029", + "5822", + "6051", + "5842", + "6073", + "6106", + "6128", + "6176", + "6248", + "6273", + "6298", + "6007" + ] + } + } + } + ] +} diff --git a/otx/algorithms/segmentation/configs/ocr_lite_hrnet_s_mod2/pot_optimization_config.json b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_s_mod2/pot_optimization_config.json new file mode 100644 index 00000000000..593ba391295 --- /dev/null +++ b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_s_mod2/pot_optimization_config.json @@ -0,0 +1,76 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "mixed", + "target_device": "ANY", + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "1184", + "1204", + "1344", + "1364", + "1469", + "1539", + "1559", + "1699", + "1719", + "1824", + "1894", + "1914", + "2054", + "2074", + "2179", + "2249", + "2269", + "2409", + "2429", + "2534", + "2625", + "2645", + "2665", + "2862", + "2882", + "3048", + "2902", + "3070", + "3103", + "3204", + "3224", + "3244", + "3441", + "3461", + "3627", + "3481", + "3649", + "3682", + "3783", + "3803", + "3823", + "4020", + "4040", + "4206", + "4060", + "4228", + "4261", + "4362", + "4382", + "4402", + "4599", + "4619", + "4785", + "4639", + "4807", + "4840", + "4892", + "4917" + ] + } + } + } + ] +} diff --git a/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/pot_optimization_config.json b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/pot_optimization_config.json new file mode 100644 index 00000000000..c998b05df52 --- /dev/null +++ b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/pot_optimization_config.json @@ -0,0 +1,178 @@ +{ + "algorithms": [ + { + "name": "DefaultQuantization", + "params": { + "preset": "performance", + "target_device": "ANY", + "use_fast_bias": true, + "shuffle_data": true, + "range_estimator": { + "preset": "quantile" + }, + "ignored": { + "scope": [ + "2953", + "2973", + "3113", + "3133", + "3238", + "3308", + "3328", + "3468", + "3488", + "3593", + "3684", + "3704", + "3724", + "3921", + "3941", + "4107", + "3961", + "4129", + "4162", + "4263", + "4283", + "4303", + "4500", + "4520", + "4686", + "4540", + "4708", + "4741", + "4842", + "4862", + "4882", + "5079", + "5099", + "5265", + "5119", + "5287", + "5320", + "5421", + "5441", + "5461", + "5658", + "5678", + "5844", + "5698", + "5866", + "5899", + "6021", + "6041", + "6061", + "6081", + "6335", + "6355", + "6582", + "6375", + "6604", + "6395", + "6626", + "6659", + "6681", + "6729", + "6866", + "6886", + "6906", + "6926", + "7180", + "7200", + "7427", + "7220", + "7449", + "7240", + "7471", + "7504", + "7526", + "7574", + "7711", + "7731", + "7751", + "7771", + "8025", + "8045", + "8272", + "8065", + "8294", + "8085", + "8316", + "8349", + "8371", + "8419", + "8556", + "8576", + "8596", + "8616", + "8870", + "8890", + "9117", + "8910", + "9139", + "8930", + "9161", + "9194", + "9216", + "9264", + "9422", + "9442", + "9462", + "9482", + "9502", + "9813", + "9833", + "10121", + "9853", + "10143", + "9873", + "10165", + "9893", + "10187", + "10220", + "10242", + "10264", + "10312", + "10334", + "10402", + "10580", + "10600", + "10620", + "10640", + "10660", + "10971", + "10991", + "11279", + "11011", + "11301", + "11031", + "11323", + "11051", + "11345", + "11378", + "11400", + "11422", + "11470", + "11492", + "11560", + "11657", + "11682", + "11707", + "11735", + "3216", + "3571", + "4085", + "4664", + "5243", + "5822", + "6560", + "7405", + "8250", + "9095", + "10099", + "11257" + ] + } + } + } + ] +} diff --git a/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/template.yaml b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/template.yaml index 1f04d2f0fd7..8aa443353fd 100644 --- a/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/template.yaml +++ b/otx/algorithms/segmentation/configs/ocr_lite_hrnet_x_mod3/template.yaml @@ -14,7 +14,6 @@ framework: OTESegmentation v0.14.0 entrypoints: base: otx.algorithms.segmentation.tasks.SegmentationTrainTask openvino: otx.algorithms.segmentation.tasks.OpenVINOSegmentationTask - nncf: otx.algorithms.segmentation.tasks.SegmentationNNCFTask data_pipeline_path: ../base/data/data_pipeline.py # Capabilities. @@ -40,7 +39,7 @@ hyper_parameters: default_value: 300 nncf_optimization: enable_quantization: - default_value: true + default_value: false enable_pruning: default_value: false pruning_supported: diff --git a/otx/algorithms/segmentation/tasks/inference.py b/otx/algorithms/segmentation/tasks/inference.py index e60bfccaecb..094777ba388 100644 --- a/otx/algorithms/segmentation/tasks/inference.py +++ b/otx/algorithms/segmentation/tasks/inference.py @@ -273,7 +273,7 @@ def _add_predictions_to_dataset(self, prediction_results, dataset, dump_soft_pre current_label_soft_prediction = soft_prediction[:, :, label_index] class_act_map = get_activation_map(current_label_soft_prediction) result_media = ResultMediaEntity( - name="Soft Prediction", + name=label.name, type="soft_prediction", label=label, annotation_scene=dataset_item.annotation_scene, diff --git a/otx/algorithms/segmentation/tasks/nncf.py b/otx/algorithms/segmentation/tasks/nncf.py index 8ecbfbf4d13..96e89a27c7f 100644 --- a/otx/algorithms/segmentation/tasks/nncf.py +++ b/otx/algorithms/segmentation/tasks/nncf.py @@ -134,7 +134,7 @@ def __init__(self, task_environment: TaskEnvironment, **kwargs): self._training_work_dir = None self._is_training = False self._should_stop = False - ### Exit + # Exit self._optimization_type = ModelOptimizationType.NNCF def _set_attributes_by_hyperparams(self): diff --git a/otx/algorithms/segmentation/tasks/openvino.py b/otx/algorithms/segmentation/tasks/openvino.py index c6205ed9c2a..50f9426d208 100644 --- a/otx/algorithms/segmentation/tasks/openvino.py +++ b/otx/algorithms/segmentation/tasks/openvino.py @@ -231,7 +231,7 @@ def infer( current_label_soft_prediction = soft_prediction[:, :, label_index] class_act_map = get_activation_map(current_label_soft_prediction) result_media = ResultMediaEntity( - name="Soft Prediction", + name=label.name, type="soft_prediction", label=label, annotation_scene=dataset_item.annotation_scene, diff --git a/otx/api/configuration/helper/__init__.py b/otx/api/configuration/helper/__init__.py index c312643df2b..7dc3a1c3779 100644 --- a/otx/api/configuration/helper/__init__.py +++ b/otx/api/configuration/helper/__init__.py @@ -11,10 +11,12 @@ from .convert import convert from .create import create from .substitute import substitute_values, substitute_values_for_lifecycle +from .utils import config_to_bytes from .validate import validate __all__ = [ "create", + "config_to_bytes", "validate", "convert", "substitute_values", diff --git a/otx/api/configuration/helper/utils.py b/otx/api/configuration/helper/utils.py index dc8346eac9d..96e4591cbff 100644 --- a/otx/api/configuration/helper/utils.py +++ b/otx/api/configuration/helper/utils.py @@ -4,6 +4,7 @@ # +import json import os from enum import Enum from typing import Any, List, Tuple, Type, Union @@ -11,6 +12,7 @@ import yaml from omegaconf import DictConfig, OmegaConf +from otx.api.configuration.configurable_parameters import ConfigurableParameters from otx.api.configuration.enums.utils import get_enum_names from otx.api.entities.id import ID @@ -19,6 +21,7 @@ PrimitiveElementMapping, RuleElementMapping, ) +from .convert import convert def _search_in_config_dict_inner( @@ -171,3 +174,16 @@ def ids_to_strings(config_dict: dict) -> dict: if isinstance(value, ID): config_dict[key] = str(value) return config_dict + + +def config_to_bytes(config: ConfigurableParameters) -> bytes: + """Converts ConfigurableParameters to bytes. + + Args: + config: configurable parameters + + Retruns: + JSON in bytes + """ + config_dict = convert(config, dict, enum_to_str=True) + return json.dumps(config_dict, indent=4).encode() diff --git a/otx/api/usecases/exportable_code/demo/demo.py b/otx/api/usecases/exportable_code/demo/demo.py index ecffa8a415e..a7bda9e8938 100644 --- a/otx/api/usecases/exportable_code/demo/demo.py +++ b/otx/api/usecases/exportable_code/demo/demo.py @@ -66,6 +66,14 @@ def build_argparser(): default=False, action="store_true", ) + args.add_argument( + "-d", + "--device", + help="Optional. Device to infer the model.", + choices=["CPU", "GPU"], + default="CPU", + type=str, + ) return parser @@ -91,7 +99,7 @@ def main(): # create models models = [] for model_dir in args.models: - model = ModelContainer(model_dir) + model = ModelContainer(model_dir, device=args.device) models.append(model) inferencer = get_inferencer_class(args.inference_type, models) diff --git a/otx/api/usecases/exportable_code/demo/demo_package/executors/synchronous.py b/otx/api/usecases/exportable_code/demo/demo_package/executors/synchronous.py index 4b35f4585f3..95184aff48f 100644 --- a/otx/api/usecases/exportable_code/demo/demo_package/executors/synchronous.py +++ b/otx/api/usecases/exportable_code/demo/demo_package/executors/synchronous.py @@ -24,7 +24,7 @@ class SyncExecutor: """ def __init__(self, model: ModelContainer, visualizer: Visualizer) -> None: - self.model = model.core_model + self.model = model self.visualizer = visualizer self.converter = create_output_converter(model.task_type, model.labels) diff --git a/otx/api/usecases/exportable_code/demo/demo_package/model_container.py b/otx/api/usecases/exportable_code/demo/demo_package/model_container.py index 69a09d2e4c0..0013191c48f 100644 --- a/otx/api/usecases/exportable_code/demo/demo_package/model_container.py +++ b/otx/api/usecases/exportable_code/demo/demo_package/model_container.py @@ -14,6 +14,8 @@ from otx.api.entities.label_schema import LabelSchemaEntity from otx.api.entities.model_template import TaskType from otx.api.serialization.label_mapper import LabelSchemaMapper +from otx.api.utils import Tiler +from otx.api.utils.detection_utils import detection2array from .utils import get_model_path, get_parameters @@ -25,16 +27,20 @@ class ModelContainer: model_dir (Path): path to model directory """ - def __init__(self, model_dir: Path) -> None: + def __init__(self, model_dir: Path, device="CPU") -> None: self.parameters = get_parameters(model_dir / "config.json") self._labels = LabelSchemaMapper.backward(self.parameters["model_parameters"]["labels"]) self._task_type = TaskType[self.parameters["converter_type"]] + self.segm = bool( + self._task_type is TaskType.ROTATED_DETECTION or self._task_type is TaskType.INSTANCE_SEGMENTATION + ) + # labels for modelAPI wrappers can be empty, because unused in pre- and postprocessing self.model_parameters = self.parameters["model_parameters"] self.model_parameters["labels"] = [] - model_adapter = OpenvinoAdapter(create_core(), get_model_path(model_dir / "model.xml")) + model_adapter = OpenvinoAdapter(create_core(), get_model_path(model_dir / "model.xml"), device=device) self._initialize_wrapper() self.core_model = Model.create_model( @@ -44,6 +50,26 @@ def __init__(self, model_dir: Path) -> None: preload=True, ) + self.tiler = self.setup_tiler() + + def setup_tiler(self): + """Setup tiler. + + Returns: + Tiler: tiler module + """ + if ( + not self.parameters.get("tiling_parameters") + or not self.parameters["tiling_parameters"]["enable_tiling"]["value"] + ): + return None + + tile_size = self.parameters["tiling_parameters"]["tile_size"]["value"] + tile_overlap = self.parameters["tiling_parameters"]["tile_overlap"]["value"] + max_number = self.parameters["tiling_parameters"]["tile_max_number"]["value"] + tiler = Tiler(tile_size, tile_overlap, max_number, self.core_model, self.segm) + return tiler + @property def task_type(self) -> TaskType: """Task type property.""" @@ -62,15 +88,38 @@ def _initialize_wrapper() -> None: except ModuleNotFoundError: print("Using model wrapper from Open Model Zoo ModelAPI") - def __call__(self, input_data: np.ndarray) -> Tuple[Any, dict]: - """Returns the output of the model. - - # TODO possibly unused. Remove? + def infer(self, frame): + """Infer with original image. Args: - input_data (np.ndarray): Input image/video data. + frame (np.ndarray): image + Returns: + annotation_scene (AnnotationScene): prediction + frame_meta (Dict): dict with original shape + """ + # getting result include preprocessing, infer, postprocessing for sync infer + predictions, frame_meta = self.core_model(frame) + + # MaskRCNN returns tuple so no need to process + if self._task_type == TaskType.DETECTION: + predictions = detection2array(predictions) + return predictions, frame_meta + + def infer_tile(self, frame): + """Infer by patching full image to tiles. + Args: + frame (np.ndarray): image Returns: - Tuple[Any, dict]: Model predictions. + annotation_scene (AnnotationScene): prediction + frame_meta (Dict): dict with original shape """ - return self.core_model(input_data) + + detections, _ = self.tiler.predict(frame) + return detections, {"original_shape": frame.shape} + + def __call__(self, input_data: np.ndarray) -> Tuple[Any, dict]: + """Infer entry wrapper.""" + if self.tiler: + return self.infer_tile(input_data) + return self.infer(input_data) diff --git a/otx/api/usecases/exportable_code/demo/requirements.txt b/otx/api/usecases/exportable_code/demo/requirements.txt index 7dfc3fac465..022c5f6a905 100644 --- a/otx/api/usecases/exportable_code/demo/requirements.txt +++ b/otx/api/usecases/exportable_code/demo/requirements.txt @@ -1,3 +1,3 @@ openmodelzoo-modelapi==2022.2.0 -otx @ git+https://github.com/openvinotoolkit/training_extensions/@e12437e6660b257731e76192344d01c70f603f73#egg=otx +otx @ git+https://github.com/openvinotoolkit/training_extensions/@3eb0f99a28bc5cfc437e3307e254f67b92dacbce#egg=otx numpy>=1.21.0,<=1.23.5 # np.bool was removed in 1.24.0 which was used in openvino runtime diff --git a/otx/api/usecases/exportable_code/prediction_to_annotation_converter.py b/otx/api/usecases/exportable_code/prediction_to_annotation_converter.py index 427787b9c9d..ab8345a8dfe 100644 --- a/otx/api/usecases/exportable_code/prediction_to_annotation_converter.py +++ b/otx/api/usecases/exportable_code/prediction_to_annotation_converter.py @@ -5,7 +5,7 @@ # import abc -from typing import Any, Dict, List, Optional, Tuple +from typing import Any, Dict, List, Optional, Tuple, Union import cv2 import numpy as np @@ -17,7 +17,7 @@ AnnotationSceneKind, ) from otx.api.entities.id import ID -from otx.api.entities.label import Domain, LabelEntity +from otx.api.entities.label import Domain from otx.api.entities.label_schema import LabelSchemaEntity from otx.api.entities.scored_label import ScoredLabel from otx.api.entities.shapes.polygon import Point, Polygon @@ -52,11 +52,14 @@ class DetectionToAnnotationConverter(IPredictionToAnnotationConverter): labels (List[LabelEntity]): list of labels """ - def __init__(self, labels: List[LabelEntity]): - self.label_map = dict(enumerate(labels)) + def __init__(self, labels: Union[LabelSchemaEntity, List]): + self.labels = labels.get_labels(include_empty=False) if isinstance(labels, LabelSchemaEntity) else labels + self.label_map = dict(enumerate(self.labels)) - def convert_to_annotation(self, predictions: np.ndarray, metadata: Optional[Dict] = None) -> AnnotationSceneEntity: - """Converts a set of predictions into an AnnotationScene object. + def convert_to_annotation( + self, predictions: np.ndarray, metadata: Optional[Dict[str, np.ndarray]] = None + ) -> AnnotationSceneEntity: + """Convert predictions to annotation format. Args: predictions (np.ndarray): Prediction with shape [num_predictions, 6] or @@ -70,11 +73,13 @@ def convert_to_annotation(self, predictions: np.ndarray, metadata: Optional[Dict `label` can be any integer that can be mapped to `self.labels` `confidence` should be a value between 0 and 1 `x1`, `x2`, `y1` and `y2` are expected to be normalized. - metadata (Optional[Dict]): (Unused) + metadata (Optional[Dict]): Additional information Returns: AnnotationScene: AnnotationScene Object containing the boxes obtained from the prediction. """ + if metadata: + predictions[:, 2:] /= np.tile(metadata["original_shape"][1::-1], 2) annotations = self.__convert_to_annotations(predictions) # media_identifier = ImageIdentifier(image_id=ID()) annotation_scene = AnnotationSceneEntity( @@ -102,13 +107,12 @@ def __convert_to_annotations(self, predictions: np.ndarray) -> List[Annotation]: (n, 7) or (n, 6) """ annotations = [] - if predictions.shape[1:] < (6,) or predictions.shape[1:] > (7,): + if len(predictions) and predictions.shape[1:] < (6,) or predictions.shape[1:] > (7,): raise ValueError( - f"Shape of prediction is not expected, expected (n, 7) or (n, 6) " f"got {predictions.shape}" + f"Shape of prediction is not expected, expected (n, 7) or (n, 6) but got {predictions.shape}" ) for prediction in predictions: - if prediction.shape == (7,): # Some OpenVINO models use an output shape of [7,] # If this is the case, skip the first value as it is not used @@ -117,9 +121,10 @@ def __convert_to_annotations(self, predictions: np.ndarray) -> List[Annotation]: label = int(prediction[0]) confidence = prediction[1] scored_label = ScoredLabel(self.label_map[label], confidence) + coords = prediction[2:] annotations.append( Annotation( - Rectangle(prediction[2], prediction[3], prediction[4], prediction[5]), + Rectangle(coords[0], coords[1], coords[2], coords[3]), labels=[scored_label], ) ) @@ -140,7 +145,7 @@ def create_converter( converter: IPredictionToAnnotationConverter if converter_type == Domain.DETECTION: - converter = DetectionBoxToAnnotationConverter(labels) + converter = DetectionToAnnotationConverter(labels) elif converter_type == Domain.SEGMENTATION: converter = SegmentationToAnnotationConverter(labels) elif converter_type == Domain.CLASSIFICATION: @@ -187,7 +192,10 @@ def convert_to_annotation( image_size = metadata["original_shape"][1::-1] for box in predictions: scored_label = ScoredLabel(self.labels[int(box.id)], float(box.score)) - coords = np.array(box.get_coords(), dtype=float) / np.tile(image_size, 2) + coords = np.array(box.get_coords(), dtype=float) + if (coords[2] - coords[0]) * (coords[3] - coords[1]) < 1.0: + continue + coords /= np.tile(image_size, 2) annotations.append( Annotation( Rectangle(coords[0], coords[1], coords[2], coords[3]), @@ -246,7 +254,8 @@ def __init__(self, label_schema: LabelSchemaEntity): else: self.labels = label_schema.get_labels(include_empty=False) self.empty_label = get_empty_label(label_schema) - multilabel = len(label_schema.get_groups(False)) > 1 and len(label_schema.get_groups(False)) == len( + multilabel = len(label_schema.get_groups(False)) > 1 + multilabel = multilabel and len(label_schema.get_groups(False)) == len( label_schema.get_labels(include_empty=False) ) self.hierarchical = not multilabel and len(label_schema.get_groups(False)) > 1 @@ -359,7 +368,11 @@ class AnomalyDetectionToAnnotationConverter(IPredictionToAnnotationConverter): """ def __init__(self, label_schema: LabelSchemaEntity): - """Initialize AnomalyDetectionToAnnotationConverter.""" + """Initialize AnomalyDetectionToAnnotationConverter. + + Args: + label_schema (LabelSchemaEntity): Label Schema containing the label info of the task + """ labels = label_schema.get_labels(include_empty=False) self.normal_label = [label for label in labels if not label.is_anomalous][0] self.anomalous_label = [label for label in labels if label.is_anomalous][0] @@ -414,9 +427,9 @@ def convert_to_annotation(self, predictions: tuple, metadata: Dict[str, Any]) -> for contour, hierarchy in zip(contours, hierarchies[0]): if hierarchy[3] != -1: continue - contour = list(contour) - if len(contour) <= 2: + if len(contour) <= 2 or cv2.contourArea(contour) < 1.0: continue + contour = list(contour) points = [ Point( x=point[0][0] / metadata["original_shape"][1], @@ -425,13 +438,12 @@ def convert_to_annotation(self, predictions: tuple, metadata: Dict[str, Any]) -> for point in contour ] polygon = Polygon(points=points) - if polygon.get_area() > 1e-12: - annotations.append( - Annotation( - polygon, - labels=[ScoredLabel(self.labels[int(class_idx) - 1], float(score))], - ) + annotations.append( + Annotation( + polygon, + labels=[ScoredLabel(self.labels[int(class_idx) - 1], float(score))], ) + ) annotation_scene = AnnotationSceneEntity( kind=AnnotationSceneKind.PREDICTION, annotations=annotations, @@ -468,7 +480,7 @@ def convert_to_annotation(self, predictions: tuple, metadata: Dict[str, Any]) -> for contour, hierarchy in zip(contours, hierarchies[0]): if hierarchy[3] != -1: continue - if len(contour) <= 2: + if len(contour) <= 2 or cv2.contourArea(contour) < 1.0: continue points = [ Point( @@ -478,13 +490,12 @@ def convert_to_annotation(self, predictions: tuple, metadata: Dict[str, Any]) -> for point in cv2.boxPoints(cv2.minAreaRect(contour)) ] polygon = Polygon(points=points) - if polygon.get_area() > 1e-12: - annotations.append( - Annotation( - polygon, - labels=[ScoredLabel(self.labels[int(class_idx) - 1], float(score))], - ) + annotations.append( + Annotation( + polygon, + labels=[ScoredLabel(self.labels[int(class_idx) - 1], float(score))], ) + ) annotation_scene = AnnotationSceneEntity( kind=AnnotationSceneKind.PREDICTION, annotations=annotations, diff --git a/otx/api/utils/__init__.py b/otx/api/utils/__init__.py index 6ed562033a9..d06f649e645 100644 --- a/otx/api/utils/__init__.py +++ b/otx/api/utils/__init__.py @@ -3,3 +3,7 @@ # Copyright (C) 2021-2022 Intel Corporation # SPDX-License-Identifier: Apache-2.0 # + +from .tiler import Tiler + +__all__ = ["Tiler"] diff --git a/otx/api/utils/detection_utils.py b/otx/api/utils/detection_utils.py new file mode 100644 index 00000000000..511854e66c2 --- /dev/null +++ b/otx/api/utils/detection_utils.py @@ -0,0 +1,45 @@ +"""Detection utils.""" + +# Copyright (C) 2022 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions +# and limitations under the License. + +from typing import List + +import numpy as np + + +def detection2array(detections: List) -> np.ndarray: + """Convert list of OpenVINO Detection to a numpy array. + + Args: + detections (List): List of OpenVINO Detection containing score, id, xmin, ymin, xmax, ymax + + Returns: + np.ndarray: numpy array with [label, confidence, x1, y1, x2, y2] + """ + scores = np.empty((0, 1), dtype=np.float32) + labels = np.empty((0, 1), dtype=np.uint32) + boxes = np.empty((0, 4), dtype=np.float32) + for det in detections: + if (det.xmax - det.xmin) * (det.ymax - det.ymin) < 1.0: + continue + scores = np.append(scores, [[det.score]], axis=0) + labels = np.append(labels, [[det.id]], axis=0) + boxes = np.append( + boxes, + [[float(det.xmin), float(det.ymin), float(det.xmax), float(det.ymax)]], + axis=0, + ) + detections = np.concatenate((labels, scores, boxes), -1) + return detections diff --git a/otx/api/utils/nms.py b/otx/api/utils/nms.py new file mode 100644 index 00000000000..25cbb616575 --- /dev/null +++ b/otx/api/utils/nms.py @@ -0,0 +1,76 @@ +"""NMS Module.""" + +# Copyright (C) 2021-2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import numpy as np + + +def nms(boxes, scores, thresh): + """Adapted NMS implementation from OMZ: model_zoo/model_api/models/utils.py#L181.""" + # pylint: disable=too-many-locals + + x1, y1, x2, y2 = boxes.T + areas = (x2 - x1) * (y2 - y1) + order = scores.argsort()[::-1] + + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + width = np.maximum(0.0, xx2 - xx1) + height = np.maximum(0.0, yy2 - yy1) + intersection = width * height + + union = areas[i] + areas[order[1:]] - intersection + overlap = np.divide( + intersection, + union, + out=np.zeros_like(intersection, dtype=float), + where=union != 0, + ) + + order = order[np.where(overlap <= thresh)[0] + 1] + + return keep + + +def multiclass_nms( + detections: np.ndarray, + iou_threshold=0.45, + max_num=200, +): + """Multi-class NMS. + + strategy: in order to perform NMS independently per class, + we add an offset to all the boxes. The offset is dependent + only on the class idx, and is large enough so that boxes + from different classes do not overlap + + Args: + detections (np.ndarray): labels, scores and boxes + iou_threshold (float, optional): IoU threshold. Defaults to 0.45. + max_num (int, optional): Max number of objects filter. Defaults to 200. + + Returns: + _type_: _description_ + """ + labels = detections[:, 0] + scores = detections[:, 1] + boxes = detections[:, 2:] + max_coordinate = boxes.max() + offsets = labels.astype(boxes.dtype) * (max_coordinate + 1) + boxes_for_nms = boxes + offsets[:, None] + keep = nms(boxes_for_nms, scores, iou_threshold) + if max_num > 0: + keep = keep[:max_num] + keep = np.array(keep) + det = detections[keep] + return det, keep diff --git a/otx/api/utils/tiler.py b/otx/api/utils/tiler.py new file mode 100644 index 00000000000..f0306a66841 --- /dev/null +++ b/otx/api/utils/tiler.py @@ -0,0 +1,199 @@ +"""Tiling Module.""" + +# Copyright (C) 2021-2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import copy +from itertools import product +from typing import Any, List, Tuple, Union + +import numpy as np + +from otx.api.utils.detection_utils import detection2array +from otx.api.utils.nms import multiclass_nms + + +class Tiler: + """Tile Image into (non)overlapping Patches. Images are tiled in order to efficiently process large images. + + Args: + tile_size: Tile dimension for each patch + overlap: Overlap between adjacent tile + max_number: max number of prediction per image + segm: enable instance segmentation mask output + """ + + def __init__( + self, + tile_size: int, + overlap: float, + max_number: int, + model: Any, + segm: bool = False, + ) -> None: + self.tile_size = tile_size + self.overlap = overlap + self.stride = int(tile_size * (1 - overlap)) + self.max_number = max_number + self.model = model + self.segm = segm + + def tile(self, image: np.ndarray) -> List[List[int]]: + """Tiles an input image to either overlapping, non-overlapping or random patches. + + Args: + image: Input image to tile. + + Returns: + Tiles coordinates + """ + height, width = image.shape[:2] + + coords = [[0, 0, width, height]] + for (loc_j, loc_i) in product( + range(0, width - self.tile_size + 1, self.stride), + range(0, height - self.tile_size + 1, self.stride), + ): + coords.append([loc_j, loc_i, loc_j + self.tile_size, loc_i + self.tile_size]) + return coords + + def predict(self, image: np.ndarray): + """Predict by cropping full image to tiles. + + Args: + image (np.ndarray): full size image + + Returns: + detection: prediction results + features: saliency map and feature vector + """ + detections = np.empty((0, 6), dtype=np.float32) + features = (None, None) + masks: List[np.ndarray] = [] + for i, coord in enumerate(self.tile(image)): + feats, output = self.predict_tile(image, coord, masks, i == 0) + detections = np.append(detections, output, axis=0) + # cache full image feature vector and saliency map at 0 index + if i == 0: + features = copy.deepcopy(feats) + + if np.prod(detections.shape): + dets, keep = multiclass_nms(detections, max_num=self.max_number) + if self.segm: + masks = [masks[keep_idx] for keep_idx in keep] + self.resize_masks(masks, dets, image.shape) + detections = *Tiler.detection2tuple(dets), masks + return detections, features + + def resize_masks(self, masks: List, dets: np.ndarray, shape: List[int]): + """Resize Masks. + + Args: + masks (List): list of raw np.ndarray masks + dets (np.ndarray): detections including labels, scores, and boxes + shape (List[int]): original full-res image shape + """ + for i, (det, mask) in enumerate(zip(dets, masks)): + masks[i] = self.model.segm_postprocess(det[2:], mask, *shape[:-1]) + + def predict_tile( + self, + image: np.ndarray, + coord: List[int], + masks: List[np.ndarray], + return_features=False, + ): + """Predict on single tile. + + Args: + image (np.ndarray): full-res image + coord (List): tile coordinates + masks (List): list of raw np.ndarray masks + return_features (bool, optional): return saliency map and feature vector if set to true. Defaults to False. + + Returns: + features: saliency map and feature vector + output: single tile prediction + """ + features = (None, None) + offset_x, offset_y, tile_dict, tile_meta = self.preprocess_tile(image, coord) + raw_predictions = self.model.infer_sync(tile_dict) + output = self.model.postprocess(raw_predictions, tile_meta) + output = self.postprocess_tile(output, offset_x, offset_y, masks) + if return_features: + if "feature_vector" in raw_predictions or "saliency_map" in raw_predictions: + features = ( + raw_predictions["feature_vector"].reshape(-1), + raw_predictions["saliency_map"][0], + ) + return features, output + + def postprocess_tile( + self, + output: Union[List, Tuple], + offset_x: int, + offset_y: int, + masks: List, + ): + """Postprocess tile predictions. + + Args: + output (Union[List, Tuple]): predictions + offset_x (int): tile offset x value + offset_y (int): tile offset y value + masks (List): list of raw np.ndarray mask + + Returns: + output: processed tile prediction + """ + if self.segm: + tile_scores, tile_labels, tile_boxes, tile_masks = output + tile_boxes += np.tile([offset_x, offset_y], 2) + out = np.concatenate( + ( + tile_labels[:, np.newaxis], + tile_scores[:, np.newaxis], + tile_boxes, + ), + -1, + ) + masks.extend(tile_masks) + else: + assert isinstance(output, list) + out = detection2array(output) + out[:, 2:] += np.tile([offset_x, offset_y], 2) + return out + + def preprocess_tile(self, image: np.ndarray, coord: List[int]): + """Preprocess Tile by cropping. + + Args: + image (np.ndarray): full-res image + coord (List): tile coordinates + + Returns: + _type_: _description_ + """ + x1, y1, x2, y2 = coord + tile_dict, tile_meta = self.model.preprocess(image[y1:y2, x1:x2]) + if self.segm: + tile_meta["resize_mask"] = False + return x1, y1, tile_dict, tile_meta + + @staticmethod + def detection2tuple(detections: np.ndarray): + """_summary_. + + Args: + detections (np.ndarray): _description_ + + Returns: + scores (np.ndarray): scores between 0-1 + labels (np.ndarray): label indices + boxes (np.ndarray): boxes + """ + labels = detections[:, 0] + scores = detections[:, 1] + boxes = detections[:, 2:] + return scores, labels, boxes diff --git a/otx/cli/tools/demo.py b/otx/cli/tools/demo.py index 1a43ff6d54c..aeb76b41665 100644 --- a/otx/cli/tools/demo.py +++ b/otx/cli/tools/demo.py @@ -70,7 +70,8 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint", + help="Load model weights from previously saved checkpoint." + "It could be a trained/optimized model (POT only) or exported model.", ) parser.add_argument( "--fit-to-size", diff --git a/otx/cli/tools/deploy.py b/otx/cli/tools/deploy.py index b5341f468ec..0a44cbc100a 100644 --- a/otx/cli/tools/deploy.py +++ b/otx/cli/tools/deploy.py @@ -33,7 +33,7 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint.", + help="Load model weights from previously saved checkpoint.", ) parser.add_argument( "--save-model-to", diff --git a/otx/cli/tools/eval.py b/otx/cli/tools/eval.py index 9b44dcff791..9b863e2ae50 100644 --- a/otx/cli/tools/eval.py +++ b/otx/cli/tools/eval.py @@ -71,7 +71,8 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint", + help="Load model weights from previously saved checkpoint." + "It could be a trained/optimized model (POT only) or exported model.", ) parser.add_argument( "--save-performance", diff --git a/otx/cli/tools/explain.py b/otx/cli/tools/explain.py index 9aabc73f8e3..043cb1d1ddb 100644 --- a/otx/cli/tools/explain.py +++ b/otx/cli/tools/explain.py @@ -72,7 +72,7 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint", + help="Load model weights from previously saved checkpoint.", ) parser.add_argument( "--explain-algorithm", diff --git a/otx/cli/tools/export.py b/otx/cli/tools/export.py index 70c4a9f9228..f70da53e623 100644 --- a/otx/cli/tools/export.py +++ b/otx/cli/tools/export.py @@ -37,7 +37,7 @@ def parse_args(): parser.add_argument( "--load-weights", required=True, - help="Load only weights from previously saved checkpoint", + help="Load model weights from previously saved checkpoint.", ) parser.add_argument( "--save-model-to", diff --git a/otx/cli/tools/find.py b/otx/cli/tools/find.py index 2e900c80813..52b440ea6f3 100644 --- a/otx/cli/tools/find.py +++ b/otx/cli/tools/find.py @@ -29,6 +29,7 @@ SUPPORTED_TASKS = ( "CLASSIFICATION", "DETECTION", + "ROTATED_DETECTION", "INSTANCE_SEGMENTATION", "SEGMENTATION", "ACTION_CLASSIFICATION", @@ -42,7 +43,7 @@ def parse_args(): """Parses command line arguments.""" parser = argparse.ArgumentParser() - parser.add_argument("--task", help=f"The currently supported options: {SUPPORTED_TASKS}.") + parser.add_argument("--task", help="Supported task types.", choices=SUPPORTED_TASKS) parser.add_argument( "--template", action="store_true", help="Shows a list of templates that can be used immediately." ) diff --git a/otx/cli/tools/train.py b/otx/cli/tools/train.py index c6bfe9130fa..4abce943168 100644 --- a/otx/cli/tools/train.py +++ b/otx/cli/tools/train.py @@ -106,7 +106,7 @@ def parse_args(): parser.add_argument( "--load-weights", required=False, - help="Load only weights from previously saved checkpoint", + help="Load model weights from previously saved checkpoint.", ) parser.add_argument( "--save-model-to", diff --git a/otx/cli/utils/hpo.py b/otx/cli/utils/hpo.py index 9b4d07f5b95..dcd2234cc01 100644 --- a/otx/cli/utils/hpo.py +++ b/otx/cli/utils/hpo.py @@ -487,12 +487,7 @@ def __init__(self, environment, dataset, dataset_paths, expected_time_ratio, hpo if _is_anomaly_framework_task(task_type): impl_class = get_impl_class(environment.model_template.entrypoints.base) task = impl_class(task_environment=environment) - model = ModelEntity( - dataset, - environment.get_model_configuration(), - ) - task.save_model(model) - save_model_data(model, self.work_dir) + torch.save(task.model_info(), osp.join(self.work_dir, "weights.pth")) else: save_model_data(environment.model, self.work_dir) diff --git a/otx/cli/utils/io.py b/otx/cli/utils/io.py index 0b708e9bdcd..c3e45832bf4 100644 --- a/otx/cli/utils/io.py +++ b/otx/cli/utils/io.py @@ -90,6 +90,7 @@ def read_model(model_configuration: ModelConfiguration, path: str, train_dataset "pixel_threshold", "min", "max", + "config.json", ) if path.endswith(".bin") or path.endswith(".xml"): @@ -130,6 +131,7 @@ def read_model(model_configuration: ModelConfiguration, path: str, train_dataset config_path = os.path.join(temp_dir, "model", "config.json") with open(config_path, encoding="UTF-8") as f: model_parameters = json.load(f)["model_parameters"] + model_adapters["config.json"] = ModelAdapter(read_binary(config_path)) for key in model_adapter_keys: if key in model_parameters: diff --git a/requirements/base.txt b/requirements/base.txt index 9e222df195a..6ae95959043 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -3,7 +3,7 @@ attrs>=21.2.0 natsort>=6.0.0 nbmake -networkx>=2.5,<=2.8.0 +networkx>=2.6,<=2.8.0 numpy>=1.21.0,<=1.23.5 # np.bool was removed in 1.24.0 which was used in openvino runtime omegaconf==2.1.* opencv-python==4.5.* diff --git a/tests/integration/api/action/test_api_action_classification.py b/tests/integration/api/action/test_api_action_classification.py index f08d12a74db..c1bc47fe57f 100644 --- a/tests/integration/api/action/test_api_action_classification.py +++ b/tests/integration/api/action/test_api_action_classification.py @@ -5,9 +5,7 @@ import glob import os.path as osp -import random import time -import warnings from concurrent.futures import ThreadPoolExecutor from typing import Optional @@ -17,28 +15,18 @@ from otx.algorithms.action.tasks import ActionInferenceTask, ActionTrainTask from otx.algorithms.common.tasks.training_base import BaseTask from otx.api.configuration.helper import create -from otx.api.entities.annotation import AnnotationSceneEntity, AnnotationSceneKind -from otx.api.entities.dataset_item import DatasetItemEntity from otx.api.entities.datasets import DatasetEntity -from otx.api.entities.image import Image from otx.api.entities.inference_parameters import InferenceParameters from otx.api.entities.metrics import Performance from otx.api.entities.model import ModelEntity -from otx.api.entities.model_template import ( - TaskType, - parse_model_template, - task_type_to_label_domain, -) +from otx.api.entities.model_template import parse_model_template from otx.api.entities.resultset import ResultSetEntity from otx.api.entities.subset import Subset from otx.api.entities.task_environment import TaskEnvironment from otx.api.entities.train_parameters import TrainParameters -from otx.api.usecases.tasks.interfaces.export_interface import ExportType -from otx.api.utils.shape_factory import ShapeFactory from otx.cli.datasets import get_dataset_class from otx.cli.utils.io import generate_label_schema from tests.test_suite.e2e_test_system import e2e_pytest_api -from tests.unit.api.test_helpers import generate_random_annotated_image DEFAULT_ACTION_TEMPLATE_DIR = osp.join("otx/algorithms/action/configs", "classification", "x3d") diff --git a/tests/integration/api/action/test_api_action_detection.py b/tests/integration/api/action/test_api_action_detection.py index 964ac33e055..a2106a4fb6d 100644 --- a/tests/integration/api/action/test_api_action_detection.py +++ b/tests/integration/api/action/test_api_action_detection.py @@ -5,9 +5,7 @@ import glob import os.path as osp -import random import time -import warnings from concurrent.futures import ThreadPoolExecutor from typing import Optional @@ -17,28 +15,18 @@ from otx.algorithms.action.tasks import ActionInferenceTask, ActionTrainTask from otx.algorithms.common.tasks.training_base import BaseTask from otx.api.configuration.helper import create -from otx.api.entities.annotation import AnnotationSceneEntity, AnnotationSceneKind -from otx.api.entities.dataset_item import DatasetItemEntity from otx.api.entities.datasets import DatasetEntity -from otx.api.entities.image import Image from otx.api.entities.inference_parameters import InferenceParameters from otx.api.entities.metrics import Performance from otx.api.entities.model import ModelEntity -from otx.api.entities.model_template import ( - TaskType, - parse_model_template, - task_type_to_label_domain, -) +from otx.api.entities.model_template import parse_model_template from otx.api.entities.resultset import ResultSetEntity from otx.api.entities.subset import Subset from otx.api.entities.task_environment import TaskEnvironment from otx.api.entities.train_parameters import TrainParameters -from otx.api.usecases.tasks.interfaces.export_interface import ExportType -from otx.api.utils.shape_factory import ShapeFactory from otx.cli.datasets import get_dataset_class from otx.cli.utils.io import generate_label_schema from tests.test_suite.e2e_test_system import e2e_pytest_api -from tests.unit.api.test_helpers import generate_random_annotated_image DEFAULT_ACTION_TEMPLATE_DIR = osp.join("otx/algorithms/action/configs", "detection", "x3d_fast_rcnn") diff --git a/tests/integration/cli/detection/test_tiling_detection.py b/tests/integration/cli/detection/test_tiling_detection.py new file mode 100644 index 00000000000..d300a79305a --- /dev/null +++ b/tests/integration/cli/detection/test_tiling_detection.py @@ -0,0 +1,199 @@ +"""Tests for MPA Class-Incremental Learning for object detection with OTX CLI""" +# Copyright (C) 2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import os +from pathlib import Path +from tempfile import TemporaryDirectory + +import pytest + +from otx.api.entities.model_template import parse_model_template +from otx.cli.registry import Registry +from otx.cli.utils.tests import ( + nncf_eval_openvino_testing, + nncf_eval_testing, + nncf_export_testing, + nncf_optimize_testing, + otx_demo_deployment_testing, + otx_demo_openvino_testing, + otx_demo_testing, + otx_deploy_openvino_testing, + otx_eval_deployment_testing, + otx_eval_openvino_testing, + otx_eval_testing, + otx_explain_openvino_testing, + otx_explain_testing, + otx_export_testing, + otx_hpo_testing, + otx_train_testing, + pot_eval_testing, + pot_optimize_testing, +) +from tests.test_suite.e2e_test_system import e2e_pytest_component + +args = { + "--train-ann-file": "data/small_objects/annotations/instances_train.json", + "--train-data-roots": "data/small_objects/images/train", + "--val-ann-file": "data/small_objects/annotations/instances_val.json", + "--val-data-roots": "data/small_objects/images/val", + "--test-ann-files": "data/small_objects/annotations/instances_test.json", + "--test-data-roots": "data/small_objects/images/test", + "--input": "data/small_objects/images/train", + "train_params": [ + "params", + "--learning_parameters.num_iters", + "2", + "--learning_parameters.batch_size", + "4", + "--tiling_parameters.enable_tiling", + "1", + "--tiling_parameters.enable_adaptive_params", + "1", + ], +} + +otx_dir = os.getcwd() + +TT_STABILITY_TESTS = os.environ.get("TT_STABILITY_TESTS", False) +if TT_STABILITY_TESTS: + default_template = parse_model_template( + os.path.join("otx/algorithms/detection/configs", "detection", "mobilenetv2_atss", "template.yaml") + ) + templates = [default_template] * 100 + templates_ids = [template.model_template_id + f"-{i+1}" for i, template in enumerate(templates)] +else: + templates = Registry("otx/algorithms/detection").filter(task_type="DETECTION").templates + templates_ids = [template.model_template_id for template in templates] + + +@pytest.fixture(scope="session") +def tmp_dir_path(): + with TemporaryDirectory() as tmp_dir: + yield Path(tmp_dir) + + +class TestToolsTilingDetection: + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_train(self, template, tmp_dir_path): + otx_train_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_export(self, template, tmp_dir_path): + otx_export_testing(template, tmp_dir_path) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_eval(self, template, tmp_dir_path): + otx_eval_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_eval_openvino(self, template, tmp_dir_path): + otx_eval_openvino_testing(template, tmp_dir_path, otx_dir, args, threshold=0.2) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_explain(self, template, tmp_dir_path): + otx_explain_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_explain_openvino(self, template, tmp_dir_path): + otx_explain_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_demo(self, template, tmp_dir_path): + otx_demo_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_demo_openvino(self, template, tmp_dir_path): + otx_demo_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_deploy_openvino(self, template, tmp_dir_path): + otx_deploy_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_eval_deployment(self, template, tmp_dir_path): + otx_eval_deployment_testing(template, tmp_dir_path, otx_dir, args, threshold=0.0) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_demo_deployment(self, template, tmp_dir_path): + otx_demo_deployment_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_hpo(self, template, tmp_dir_path): + otx_hpo_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_optimize(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_optimize_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_export(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_export_testing(template, tmp_dir_path) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_eval(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_testing(template, tmp_dir_path, otx_dir, args, threshold=0.001) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_eval_openvino(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_optimize(self, template, tmp_dir_path): + pot_optimize_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_eval(self, template, tmp_dir_path): + pot_eval_testing(template, tmp_dir_path, otx_dir, args) diff --git a/tests/integration/cli/detection/test_tiling_instseg.py b/tests/integration/cli/detection/test_tiling_instseg.py new file mode 100644 index 00000000000..26994eea888 --- /dev/null +++ b/tests/integration/cli/detection/test_tiling_instseg.py @@ -0,0 +1,199 @@ +"""Tests for MPA Class-Incremental Learning for instance segmentation with OTX CLI""" +# Copyright (C) 2022 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 +# + +import os +from pathlib import Path +from tempfile import TemporaryDirectory + +import pytest + +from otx.api.entities.model_template import parse_model_template +from otx.cli.registry import Registry +from otx.cli.utils.tests import ( + nncf_eval_openvino_testing, + nncf_eval_testing, + nncf_export_testing, + nncf_optimize_testing, + otx_demo_deployment_testing, + otx_demo_openvino_testing, + otx_demo_testing, + otx_deploy_openvino_testing, + otx_eval_deployment_testing, + otx_eval_openvino_testing, + otx_eval_testing, + otx_explain_openvino_testing, + otx_explain_testing, + otx_export_testing, + otx_hpo_testing, + otx_train_testing, + pot_eval_testing, + pot_optimize_testing, +) +from tests.test_suite.e2e_test_system import e2e_pytest_component + +args = { + "--train-ann-file": "data/small_objects/annotations/instances_train.json", + "--train-data-roots": "data/small_objects/images/train", + "--val-ann-file": "data/small_objects/annotations/instances_val.json", + "--val-data-roots": "data/small_objects/images/val", + "--test-ann-files": "data/small_objects/annotations/instances_test.json", + "--test-data-roots": "data/small_objects/images/test", + "--input": "data/small_objects/images/train", + "train_params": [ + "params", + "--learning_parameters.num_iters", + "2", + "--learning_parameters.batch_size", + "4", + "--tiling_parameters.enable_tiling", + "1", + "--tiling_parameters.enable_adaptive_params", + "1", + ], +} + +otx_dir = os.getcwd() + +TT_STABILITY_TESTS = os.environ.get("TT_STABILITY_TESTS", False) +if TT_STABILITY_TESTS: + default_template = parse_model_template( + os.path.join("otx/algorithms/detection/configs", "instance_segmentation", "resnet50_maskrcnn", "template.yaml") + ) + templates = [default_template] * 100 + templates_ids = [template.model_template_id + f"-{i+1}" for i, template in enumerate(templates)] +else: + templates = Registry("otx/algorithms/detection").filter(task_type="INSTANCE_SEGMENTATION").templates + templates_ids = [template.model_template_id for template in templates] + + +@pytest.fixture(scope="session") +def tmp_dir_path(): + with TemporaryDirectory() as tmp_dir: + yield Path(tmp_dir) + + +class TestToolsTilingInstanceSegmentation: + @e2e_pytest_component + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_train(self, template, tmp_dir_path): + otx_train_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_export(self, template, tmp_dir_path): + otx_export_testing(template, tmp_dir_path) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_eval(self, template, tmp_dir_path): + otx_eval_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_eval_openvino(self, template, tmp_dir_path): + otx_eval_openvino_testing(template, tmp_dir_path, otx_dir, args, threshold=0.2) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_explain(self, template, tmp_dir_path): + otx_explain_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_explain_openvino(self, template, tmp_dir_path): + otx_explain_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_demo(self, template, tmp_dir_path): + otx_demo_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_demo_openvino(self, template, tmp_dir_path): + otx_demo_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_deploy_openvino(self, template, tmp_dir_path): + otx_deploy_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_eval_deployment(self, template, tmp_dir_path): + otx_eval_deployment_testing(template, tmp_dir_path, otx_dir, args, threshold=0.0) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_demo_deployment(self, template, tmp_dir_path): + otx_demo_deployment_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_otx_hpo(self, template, tmp_dir_path): + otx_hpo_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_optimize(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_optimize_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_export(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_export_testing(template, tmp_dir_path) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_eval(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_testing(template, tmp_dir_path, otx_dir, args, threshold=0.001) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + @pytest.mark.skip(reason="CVS-98026") + def test_nncf_eval_openvino(self, template, tmp_dir_path): + if template.entrypoints.nncf is None: + pytest.skip("nncf entrypoint is none") + + nncf_eval_openvino_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_optimize(self, template, tmp_dir_path): + pot_optimize_testing(template, tmp_dir_path, otx_dir, args) + + @e2e_pytest_component + @pytest.mark.skipif(TT_STABILITY_TESTS, reason="This is TT_STABILITY_TESTS") + @pytest.mark.parametrize("template", templates, ids=templates_ids) + def test_pot_eval(self, template, tmp_dir_path): + pot_eval_testing(template, tmp_dir_path, otx_dir, args) diff --git a/tests/ote_cli/misc/test_code_checks.py b/tests/ote_cli/misc/test_code_checks.py index a42eb7ed770..a7076a0d260 100644 --- a/tests/ote_cli/misc/test_code_checks.py +++ b/tests/ote_cli/misc/test_code_checks.py @@ -17,6 +17,7 @@ from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component + class TestCodeChecks: @e2e_pytest_component def test_code_checks(self): diff --git a/tests/ote_cli/misc/test_docs.py b/tests/ote_cli/misc/test_docs.py index 0ec075110b1..741ddbf3311 100644 --- a/tests/ote_cli/misc/test_docs.py +++ b/tests/ote_cli/misc/test_docs.py @@ -12,40 +12,59 @@ # See the License for the specific language governing permissions # and limitations under the License. -import pytest import os from collections import defaultdict from subprocess import run # nosec -from ote_cli.registry import Registry +from otx.cli.registry import Registry +from tests.test_suite.e2e_test_system import e2e_pytest_component -from ote_sdk.test_suite.e2e_test_system import e2e_pytest_component class TestDocs: @e2e_pytest_component def test_help_stdoutputs_of_tools(self): + # read and gathering help command example and corresponding output from the doc with open("QUICK_START_GUIDE.md", encoding="UTF-8") as read_file: commands = [] + msg_in_doc = [] + msg_temp = "" full_text = '' + found_help_cmd = False + cmd_idx = 0 for line in read_file: full_text += line - if "ote" in line and "--help" in line: - commands.append(line.strip().split(' ')) + if "$" in line and "ote" in line and "--help" in line: + commands.append(line.split("$")[-1].strip().split(' ')) + found_help_cmd = True + elif found_help_cmd: + # grep all messages quoted with "```" + if "```" not in line: + if line == "...\n": + # some msg output is too long to put them all onto the doc. + # those will be marked as "..." to represent its shrinking + continue + msg_temp += msg_temp + else: + # tokenize msg in the doc by replacing whitespace to a single space + # for ease comparison with actual output messages + msg_in_doc.append(" ".join(msg_temp.split())) + msg_temp = "" + cmd_idx += 1 + found_help_cmd = False - MAX_INDENT = 10 + assert len(commands) == len(msg_in_doc), \ + f"length of cmds & msg in doc is mismatched. len(cmds) = {len(commands)}, " \ + f"len(msg_in_doc) = {len(msg_in_doc)}" - for command in commands: - output = run(command, capture_output=True) - help_message = output.stdout.decode() - found = True - if help_message not in full_text: - found = False - for _ in range(MAX_INDENT): - help_message = "\n".join([" " + line for line in help_message.split("\n")]) - if help_message in full_text: - found = True - break - assert found, f"\nHelp message:\n{output.stdout.decode()}\n was not found in \n{full_text}" + # compare actual help message output & one that came from doc + for idx in range(len(commands)): + output = run(commands[idx], capture_output=True) + help_msg = output.stdout.decode() + # tokenize by replace all whitespace to a single space + help_msg = " ".join(help_msg.split()) + # asserting with "in" op to deal with shrinked message as well + assert msg_in_doc[idx] in help_msg, \ + f"help message in doc:\n{msg_in_doc[idx]}\nis not equal with stdout:\n{help_msg}" @e2e_pytest_component def test_algorithms_table(self): @@ -61,7 +80,7 @@ def algorithms_table(templates): algo_table[record[0]] = record[1:] return algo_table - readme_table = defaultdict(list) # ["name", "gigaflops", "size", "Path"] + readme_table = defaultdict(list) # ["name", "gigaflops", "size", "Path"] with open("external/README.md", encoding="UTF-8") as read_file: full_text = '' for line in read_file: @@ -73,10 +92,12 @@ def algorithms_table(templates): registry = Registry(".") templates_per_task_type = defaultdict(list) - for template in sorted(registry.templates, key=lambda x:str(x.task_type)): + for template in sorted(registry.templates, key=lambda x: str(x.task_type)): templates_per_task_type[template.task_type].append(template) for task_type, templates in templates_per_task_type.items(): algorithm_table = algorithms_table(templates) for model_id in algorithm_table.keys(): - assert model_id in readme_table, f"\n {model_id} not in 'external/README.md' for {task_type}" - assert algorithm_table[model_id] == readme_table[model_id], f"\n {model_id}'s info in 'external/README.md' is wrong" + assert model_id in readme_table, \ + f"\n {model_id} not in 'external/README.md' for {task_type}" + assert algorithm_table[model_id] == readme_table[model_id], \ + f"\n {model_id}'s info in 'external/README.md' is wrong" diff --git a/tests/unit/api/entities/test_dataset_item.py b/tests/unit/api/entities/test_dataset_item.py index 5fe784f3d45..52a68db8de8 100644 --- a/tests/unit/api/entities/test_dataset_item.py +++ b/tests/unit/api/entities/test_dataset_item.py @@ -528,7 +528,7 @@ def test_dataset_item_get_annotations(self): # Check that get_annotations only returns the annotations whose center falls within the ROI partial_box_dataset_item = deepcopy(full_box_roi_dataset_item) partial_box_dataset_item.roi = Annotation(shape=Rectangle(x1=0.0, y1=0.0, x2=0.4, y2=0.5), labels=[]) - expected_annotation = first_annotation + expected_annotation = deepcopy(first_annotation) expected_annotation.shape = expected_annotation.shape.denormalize_wrt_roi_shape( roi_shape=partial_box_dataset_item.roi.shape ) diff --git a/tests/unit/api/usecases/exportable_code/test_prediction_to_annotation_converter.py b/tests/unit/api/usecases/exportable_code/test_prediction_to_annotation_converter.py index 28353e9bde4..3be0ff41427 100644 --- a/tests/unit/api/usecases/exportable_code/test_prediction_to_annotation_converter.py +++ b/tests/unit/api/usecases/exportable_code/test_prediction_to_annotation_converter.py @@ -240,7 +240,7 @@ def test_create_converter(self): label_group = LabelGroup(name="Detection labels group", labels=labels) label_schema = LabelSchemaEntity(label_groups=[label_group]) converter = create_converter(converter_type=Domain.DETECTION, labels=label_schema) - assert isinstance(converter, DetectionBoxToAnnotationConverter) + assert isinstance(converter, DetectionToAnnotationConverter) assert converter.labels == labels # Checking "SegmentationToAnnotationConverter" returned by "create_converter" function when "SEGMENTATION"is # specified as "converter_type" diff --git a/third-party-programs.txt b/third-party-programs.txt index 7a73fa0ee4d..6227b06bb22 100644 --- a/third-party-programs.txt +++ b/third-party-programs.txt @@ -69,3 +69,78 @@ SOFTWARE. author: wondervictor mail: tianhengcheng@gmail.com copyright@wondervictor + + +------------------------------------------------------------- + +5. Python +Python 3.0a1 License +A. HISTORY OF THE SOFTWARE +========================== + +Python was created in the early 1990s by Guido van Rossum at Stichting Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands as a successor of a language called ABC. Guido remains Python's principal author, although it includes many contributions from others. + +In 1995, Guido continued his work on Python at the Corporation for National Research Initiatives (CNRI, see http://www.cnri.reston.va.us) in Reston, Virginia where he released several versions of the software. + +In May 2000, Guido and the Python core development team moved to BeOpen.com to form the BeOpen PythonLabs team. In October of the same year, the PythonLabs team moved to Digital Creations (now Zope Corporation, see http://www.zope.com). In 2001, the Python Software Foundation (PSF, see http://www.python.org/psf/) was formed, a non-profit organization created specifically to own Python-related Intellectual Property. Zope Corporation is a sponsoring member of the PSF. + +All Python releases are Open Source (see http://www.opensource.org for the Open Source Definition). Historically, most, but not all, Python releases have also been GPL-compatible; the table below summarizes the various releases. + +Release Derived from Year Owner GPL-compatible? (1) + +0.9.0 thru 1.2 1991-1995 CWI yes +1.3 thru 1.5.2 1.2 1995-1999 CNRI yes +1.6 1.5.2 2000 CNRI no +2.0 1.6 2000 BeOpen.com no +1.6.1 1.6 2001 CNRI yes (2) +2.1 2.0+1.6.1 2001 PSF no +2.0.1 2.0+1.6.1 2001 PSF yes +2.1.1 2.1+2.0.1 2001 PSF yes +2.2 2.1.1 2001 PSF yes +2.1.2 2.1.1 2002 PSF yes +2.1.3 2.1.2 2002 PSF yes +2.2.1 2.2 2002 PSF yes +2.2.2 2.2.1 2002 PSF yes +2.2.3 2.2.2 2003 PSF yes +2.3 2.2.2 2002-2003 PSF yes +2.3.1 2.3 2002-2003 PSF yes +2.3.2 2.3.1 2002-2003 PSF yes +2.3.3 2.3.2 2002-2003 PSF yes +2.3.4 2.3.3 2004 PSF yes +2.3.5 2.3.4 2005 PSF yes +2.4 2.3 2004 PSF yes +2.4.1 2.4 2005 PSF yes +2.4.2 2.4.1 2005 PSF yes +2.4.3 2.4.2 2006 PSF yes +2.4.4 2.4.3 2006 PSF yes +2.5 2.4 2006 PSF yes +2.5.1 2.5 2007 PSF yes +3.0 2.6 2007 PSF yes + + +Footnotes: +GPL-compatible doesn't mean that we're distributing Python under the GPL. All Python licenses, unlike the GPL, let you distribute a modified version without making your changes open source. The GPL-compatible licenses make it possible to combine Python with other software that is released under the GPL; the others don't. + +According to Richard Stallman, 1.6.1 is not GPL-compatible, because its license has a choice of law clause. According to CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1 is "not incompatible" with the GPL. +Thanks to the many outside volunteers who have worked under Guido's direction to make these releases possible. + +B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON +=============================================================== + +PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2 +-------------------------------------------- +This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation. + +Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Python Software Foundation; All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee. + +In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python. + +PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. + +PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +This License Agreement will automatically terminate upon a material breach of its terms and conditions. + +Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. + +By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement.