├── nms ├── __init__.py ├── _ext │ ├── __init__.py │ └── nms │ │ ├── _nms.so │ │ └── __init__.py ├── src │ ├── nms_cuda.h │ ├── nms.h │ ├── cuda │ │ ├── nms_kernel.h │ │ └── nms_kernel.cu │ ├── nms_cuda.c │ └── nms.c ├── nms_wrapper.py ├── build.py └── pth_nms.py ├── checkpoints └── gitkeep ├── roialign ├── __init__.py └── roi_align │ ├── __init__.py │ ├── _ext │ ├── __init__.py │ └── crop_and_resize │ │ ├── _crop_and_resize.so │ │ └── __init__.py │ ├── src │ ├── crop_and_resize.h │ ├── crop_and_resize_gpu.h │ ├── cuda │ │ └── crop_and_resize_kernel.h │ └── crop_and_resize_gpu.c │ ├── build.py │ ├── roi_align.py │ └── crop_and_resize.py ├── datasets └── .gitkeep ├── modal ├── lib │ ├── utils │ │ ├── __init__.py │ │ ├── data │ │ │ ├── __init__.py │ │ │ ├── distributed.py │ │ │ ├── dataset.py │ │ │ └── sampler.py │ │ └── th.py │ └── nn │ │ ├── parallel │ │ ├── __init__.py │ │ └── data_parallel.py │ │ ├── __init__.py │ │ └── modules │ │ ├── __init__.py │ │ ├── unittest.py │ │ ├── tests │ │ ├── test_numeric_batchnorm.py │ │ └── test_sync_batchnorm.py │ │ ├── replicate.py │ │ └── comm.py ├── msc_deeplab.py ├── deeplabv2.py └── resnet_deeplab.py ├── cocoapi ├── PythonAPI │ ├── pycocotools │ │ ├── __init__.py │ │ └── mask.py │ ├── Makefile │ └── setup.py ├── .travis.yml ├── .gitignore ├── README.txt ├── license.txt └── common │ ├── maskApi.h │ └── gason.h ├── results ├── D2S │ ├── D2S.pdf │ ├── D2S_004811 │ │ ├── D2S_004811.jpg │ │ ├── D2S_004811.png │ │ ├── 07_D2S_004811.jpg │ │ ├── 09_D2S_004811.jpg │ │ ├── 25_D2S_004811.jpg │ │ ├── gt_00_D2S_004811.jpg │ │ ├── gt_01_D2S_004811.jpg │ │ ├── gt_02_D2S_004811.jpg │ │ ├── our_03_D2S_004811.jpg │ │ ├── our_137_D2S_004811.jpg │ │ └── our_78_D2S_004811.jpg │ ├── D2S_026022 │ │ ├── D2S_026022.jpg │ │ ├── D2S_026022.png │ │ ├── 00_D2S_026022.jpg │ │ ├── 02_D2S_026022.jpg │ │ ├── 105_D2S_026022.jpg │ │ ├── 11_D2S_026022.jpg │ │ ├── 29_D2S_026022.jpg │ │ ├── 45_D2S_026022.jpg │ │ ├── 70_D2S_026022.jpg │ │ ├── 77_D2S_026022.jpg │ │ ├── gt_00_D2S_026022.jpg │ │ ├── gt_01_D2S_026022.jpg │ │ ├── gt_02_D2S_026022.jpg │ │ ├── gt_03_D2S_026022.jpg │ │ ├── gt_04_D2S_026022.jpg │ │ ├── gt_05_D2S_026022.jpg │ │ ├── gt_06_D2S_026022.jpg │ │ ├── gt_07_D2S_026022.jpg │ │ ├── our_08_D2S_026022.jpg │ │ ├── our_108_D2S_026022.jpg │ │ ├── our_170_D2S_026022.jpg │ │ ├── our_204_D2S_026022.jpg │ │ ├── our_26_D2S_026022.jpg │ │ ├── our_33_D2S_026022.jpg │ │ ├── our_57_D2S_026022.jpg │ │ └── our_98_D2S_026022.jpg │ ├── D2S_038111 │ │ ├── D2S_038111.jpg │ │ ├── D2S_038111.png │ │ ├── 00_D2S_038111.jpg │ │ ├── 15_D2S_038111.jpg │ │ ├── 36_D2S_038111.jpg │ │ ├── gt_00_D2S_038111.jpg │ │ ├── gt_01_D2S_038111.jpg │ │ ├── gt_02_D2S_038111.jpg │ │ ├── our_13_D2S_038111.jpg │ │ ├── our_32_D2S_038111.jpg │ │ └── our_44_D2S_038111.jpg │ ├── D2S_058302 │ │ ├── D2S_058302.jpg │ │ ├── D2S_058302.png │ │ ├── 13_D2S_058302.jpg │ │ ├── 16_D2S_058302.jpg │ │ ├── gt_00_D2S_058302.jpg │ │ ├── gt_01_D2S_058302.jpg │ │ ├── our_07_D2S_058302.jpg │ │ └── our_40_D2S_058302.jpg │ └── D2S_068312 │ │ ├── D2S_068312.jpg │ │ ├── 02_D2S_068312.jpg │ │ ├── 189_D2S_068312.jpg │ │ ├── 197_D2S_068312.jpg │ │ ├── 19_D2S_068312.jpg │ │ ├── 223_D2S_068312.jpg │ │ ├── 33_D2S_068312.jpg │ │ ├── 43_D2S_068312.jpg │ │ ├── 52_D2S_068312.jpg │ │ ├── 72_D2S_068312.jpg │ │ ├── 92_D2S_068312.jpg │ │ ├── gt_00_D2S_068312.jpg │ │ ├── gt_01_D2S_068312.jpg │ │ ├── gt_02_D2S_068312.jpg │ │ ├── gt_03_D2S_068312.jpg │ │ ├── gt_04_D2S_068312.jpg │ │ ├── gt_05_D2S_068312.jpg │ │ ├── gt_06_D2S_068312.jpg │ │ ├── gt_07_D2S_068312.jpg │ │ ├── gt_08_D2S_068312.jpg │ │ ├── gt_09_D2S_068312.jpg │ │ ├── our_05_D2S_068312.jpg │ │ ├── our_102_D2S_068312.jpg │ │ ├── our_11_D2S_068312.jpg │ │ ├── our_122_D2S_068312.jpg │ │ ├── our_183_D2S_068312.jpg │ │ ├── our_190_D2S_068312.jpg │ │ ├── our_236_D2S_068312.jpg │ │ ├── our_258_D2S_068312.jpg │ │ ├── our_42_D2S_068312.jpg │ │ └── our_56_D2S_068312.jpg ├── COCO │ ├── final_res.pdf │ ├── pic1 │ │ ├── COCO_val2014_000000543525.jpg │ │ ├── COCO_val2014_000000543525_gt.png │ │ ├── COCO_val2014_000000543525_rcnn.png │ │ ├── COCO_val2014_000000543525_thirst.png │ │ └── COCO_val2014_000000543525_sem_dist_map.png │ ├── pic2 │ │ ├── COCO_val2014_000000494154.jpg │ │ ├── COCO_val2014_000000494154_gt.png │ │ ├── COCO_val2014_000000494154_mrcnn.png │ │ ├── COCO_val2014_000000494154_thirst.png │ │ └── COCO_val2014_000000494154_sem_dist_map.png │ ├── pic3 │ │ ├── COCO_val2014_000000579463.jpg │ │ ├── COCO_val2014_000000579463_gt.png │ │ ├── COCO_val2014_000000579463_mrcnn.png │ │ ├── COCO_val2014_000000579463_thirst.png │ │ └── COCO_val2014_000000579463_sem_Dist_map.png │ ├── OURS │ │ ├── COCO_val2014_000000281533 │ │ │ ├── COCO_val2014_000000281533.jpg │ │ │ ├── gt_00_COCO_val2014_000000281533.jpg │ │ │ ├── gt_01_COCO_val2014_000000281533.jpg │ │ │ ├── gt_02_COCO_val2014_000000281533.jpg │ │ │ ├── gt_03_COCO_val2014_000000281533.jpg │ │ │ ├── gt_04_COCO_val2014_000000281533.jpg │ │ │ ├── gt_05_COCO_val2014_000000281533.jpg │ │ │ ├── gt_06_COCO_val2014_000000281533.jpg │ │ │ ├── gt_07_COCO_val2014_000000281533.jpg │ │ │ ├── gt_08_COCO_val2014_000000281533.jpg │ │ │ ├── gt_09_COCO_val2014_000000281533.jpg │ │ │ ├── gt_10_COCO_val2014_000000281533.jpg │ │ │ ├── gt_11_COCO_val2014_000000281533.jpg │ │ │ ├── gt_12_COCO_val2014_000000281533.jpg │ │ │ ├── gt_13_COCO_val2014_000000281533.jpg │ │ │ ├── gt_14_COCO_val2014_000000281533.jpg │ │ │ ├── gt_15_COCO_val2014_000000281533.jpg │ │ │ ├── gt_16_COCO_val2014_000000281533.jpg │ │ │ ├── our_06_COCO_val2014_000000281533.jpg │ │ │ ├── our_101_COCO_val2014_000000281533.jpg │ │ │ ├── our_103_COCO_val2014_000000281533.jpg │ │ │ ├── our_146_COCO_val2014_000000281533.jpg │ │ │ ├── our_17_COCO_val2014_000000281533.jpg │ │ │ ├── our_227_COCO_val2014_000000281533.jpg │ │ │ ├── our_287_COCO_val2014_000000281533.jpg │ │ │ ├── our_28_COCO_val2014_000000281533.jpg │ │ │ ├── our_306_COCO_val2014_000000281533.jpg │ │ │ ├── our_372_COCO_val2014_000000281533.jpg │ │ │ ├── our_407_COCO_val2014_000000281533.jpg │ │ │ ├── our_42_COCO_val2014_000000281533.jpg │ │ │ ├── our_431_COCO_val2014_000000281533.jpg │ │ │ ├── our_481_COCO_val2014_000000281533.jpg │ │ │ ├── our_486_COCO_val2014_000000281533.jpg │ │ │ ├── our_64_COCO_val2014_000000281533.jpg │ │ │ └── our_83_COCO_val2014_000000281533.jpg │ │ ├── COCO_val2014_000000494154 │ │ │ ├── COCO_val2014_000000494154.jpg │ │ │ ├── gt_00_COCO_val2014_000000494154.jpg │ │ │ ├── gt_01_COCO_val2014_000000494154.jpg │ │ │ ├── gt_02_COCO_val2014_000000494154.jpg │ │ │ ├── gt_03_COCO_val2014_000000494154.jpg │ │ │ ├── gt_04_COCO_val2014_000000494154.jpg │ │ │ ├── gt_05_COCO_val2014_000000494154.jpg │ │ │ ├── gt_06_COCO_val2014_000000494154.jpg │ │ │ ├── gt_07_COCO_val2014_000000494154.jpg │ │ │ ├── gt_08_COCO_val2014_000000494154.jpg │ │ │ ├── gt_09_COCO_val2014_000000494154.jpg │ │ │ ├── gt_10_COCO_val2014_000000494154.jpg │ │ │ ├── gt_11_COCO_val2014_000000494154.jpg │ │ │ ├── gt_12_COCO_val2014_000000494154.jpg │ │ │ ├── gt_13_COCO_val2014_000000494154.jpg │ │ │ ├── gt_14_COCO_val2014_000000494154.jpg │ │ │ ├── gt_15_COCO_val2014_000000494154.jpg │ │ │ ├── gt_16_COCO_val2014_000000494154.jpg │ │ │ ├── gt_17_COCO_val2014_000000494154.jpg │ │ │ ├── our_00_COCO_val2014_000000494154.jpg │ │ │ ├── our_12_COCO_val2014_000000494154.jpg │ │ │ ├── our_132_COCO_val2014_000000494154.jpg │ │ │ ├── our_192_COCO_val2014_000000494154.jpg │ │ │ ├── our_194_COCO_val2014_000000494154.jpg │ │ │ ├── our_218_COCO_val2014_000000494154.jpg │ │ │ ├── our_221_COCO_val2014_000000494154.jpg │ │ │ ├── our_23_COCO_val2014_000000494154.jpg │ │ │ ├── our_308_COCO_val2014_000000494154.jpg │ │ │ ├── our_423_COCO_val2014_000000494154.jpg │ │ │ ├── our_433_COCO_val2014_000000494154.jpg │ │ │ ├── our_445_COCO_val2014_000000494154.jpg │ │ │ ├── our_463_COCO_val2014_000000494154.jpg │ │ │ ├── our_530_COCO_val2014_000000494154.jpg │ │ │ ├── our_574_COCO_val2014_000000494154.jpg │ │ │ ├── our_595_COCO_val2014_000000494154.jpg │ │ │ ├── our_63_COCO_val2014_000000494154.jpg │ │ │ └── our_90_COCO_val2014_000000494154.jpg │ │ ├── COCO_val2014_000000543525 │ │ │ ├── COCO_val2014_000000543525.jpg │ │ │ ├── COCO_val2014_000000543525 - Copy.jpg │ │ │ ├── gt_00_COCO_val2014_000000543525.jpg │ │ │ ├── gt_01_COCO_val2014_000000543525.jpg │ │ │ ├── gt_02_COCO_val2014_000000543525.jpg │ │ │ ├── gt_03_COCO_val2014_000000543525.jpg │ │ │ ├── gt_04_COCO_val2014_000000543525.jpg │ │ │ ├── gt_05_COCO_val2014_000000543525.jpg │ │ │ ├── gt_06_COCO_val2014_000000543525.jpg │ │ │ ├── gt_07_COCO_val2014_000000543525.jpg │ │ │ ├── our_02_COCO_val2014_000000543525.jpg │ │ │ ├── our_156_COCO_val2014_000000543525.jpg │ │ │ ├── our_22_COCO_val2014_000000543525.jpg │ │ │ ├── our_333_COCO_val2014_000000543525.jpg │ │ │ ├── our_336_COCO_val2014_000000543525.jpg │ │ │ ├── our_401_COCO_val2014_000000543525.jpg │ │ │ ├── our_56_COCO_val2014_000000543525.jpg │ │ │ ├── our_57_COCO_val2014_000000543525.jpg │ │ │ ├── COCO_val2014_000000543525 - Copy (2).jpg │ │ │ └── COCO_val2014_000000543525 - Copy (3).jpg │ │ └── COCO_val2014_000000579463 │ │ │ ├── COCO_val2014_000000579463.jpg │ │ │ ├── gt_00_COCO_val2014_000000579463.jpg │ │ │ ├── gt_01_COCO_val2014_000000579463.jpg │ │ │ ├── gt_02_COCO_val2014_000000579463.jpg │ │ │ ├── gt_03_COCO_val2014_000000579463.jpg │ │ │ ├── gt_04_COCO_val2014_000000579463.jpg │ │ │ ├── gt_05_COCO_val2014_000000579463.jpg │ │ │ ├── gt_06_COCO_val2014_000000579463.jpg │ │ │ ├── gt_07_COCO_val2014_000000579463.jpg │ │ │ ├── our_03_COCO_val2014_000000579463.jpg │ │ │ ├── our_147_COCO_val2014_000000579463.jpg │ │ │ ├── our_208_COCO_val2014_000000579463.jpg │ │ │ ├── our_22_COCO_val2014_000000579463.jpg │ │ │ ├── our_230_COCO_val2014_000000579463.jpg │ │ │ ├── our_346_COCO_val2014_000000579463.jpg │ │ │ ├── our_350_COCO_val2014_000000579463.jpg │ │ │ └── our_38_COCO_val2014_000000579463.jpg │ ├── ARCNN │ │ ├── COCO_val2014_000000281533 │ │ │ ├── COCO_val2014_000000281533.jpg │ │ │ ├── 00_COCO_val2014_000000281533.jpg │ │ │ ├── 01_COCO_val2014_000000281533.jpg │ │ │ ├── 02_COCO_val2014_000000281533.jpg │ │ │ ├── 03_COCO_val2014_000000281533.jpg │ │ │ ├── 04_COCO_val2014_000000281533.jpg │ │ │ ├── 05_COCO_val2014_000000281533.jpg │ │ │ ├── 06_COCO_val2014_000000281533.jpg │ │ │ ├── 07_COCO_val2014_000000281533.jpg │ │ │ ├── 08_COCO_val2014_000000281533.jpg │ │ │ ├── 09_COCO_val2014_000000281533.jpg │ │ │ ├── 10_COCO_val2014_000000281533.jpg │ │ │ ├── 11_COCO_val2014_000000281533.jpg │ │ │ ├── 12_COCO_val2014_000000281533.jpg │ │ │ ├── 13_COCO_val2014_000000281533.jpg │ │ │ ├── 14_COCO_val2014_000000281533.jpg │ │ │ ├── 15_COCO_val2014_000000281533.jpg │ │ │ └── 16_COCO_val2014_000000281533.jpg │ │ ├── COCO_val2014_000000494154 │ │ │ ├── COCO_val2014_000000494154.jpg │ │ │ ├── 00_COCO_val2014_000000494154.jpg │ │ │ ├── 01_COCO_val2014_000000494154.jpg │ │ │ ├── 02_COCO_val2014_000000494154.jpg │ │ │ ├── 03_COCO_val2014_000000494154.jpg │ │ │ ├── 04_COCO_val2014_000000494154.jpg │ │ │ ├── 05_COCO_val2014_000000494154.jpg │ │ │ ├── 06_COCO_val2014_000000494154.jpg │ │ │ ├── 07_COCO_val2014_000000494154.jpg │ │ │ ├── 08_COCO_val2014_000000494154.jpg │ │ │ ├── 09_COCO_val2014_000000494154.jpg │ │ │ ├── 10_COCO_val2014_000000494154.jpg │ │ │ ├── 11_COCO_val2014_000000494154.jpg │ │ │ ├── 12_COCO_val2014_000000494154.jpg │ │ │ ├── 13_COCO_val2014_000000494154.jpg │ │ │ ├── 14_COCO_val2014_000000494154.jpg │ │ │ ├── 15_COCO_val2014_000000494154.jpg │ │ │ ├── 16_COCO_val2014_000000494154.jpg │ │ │ └── 17_COCO_val2014_000000494154.jpg │ │ ├── COCO_val2014_000000543525 │ │ │ ├── COCO_val2014_000000543525.jpg │ │ │ ├── 00_COCO_val2014_000000543525.jpg │ │ │ ├── 01_COCO_val2014_000000543525.jpg │ │ │ ├── 02_COCO_val2014_000000543525.jpg │ │ │ ├── 03_COCO_val2014_000000543525.jpg │ │ │ ├── 04_COCO_val2014_000000543525.jpg │ │ │ ├── 05_COCO_val2014_000000543525.jpg │ │ │ ├── 06_COCO_val2014_000000543525.jpg │ │ │ └── 07_COCO_val2014_000000543525.jpg │ │ └── COCO_val2014_000000579463 │ │ │ ├── COCO_val2014_000000579463.jpg │ │ │ ├── 00_COCO_val2014_000000579463.jpg │ │ │ ├── 01_COCO_val2014_000000579463.jpg │ │ │ ├── 02_COCO_val2014_000000579463.jpg │ │ │ ├── 03_COCO_val2014_000000579463.jpg │ │ │ ├── 04_COCO_val2014_000000579463.jpg │ │ │ ├── 05_COCO_val2014_000000579463.jpg │ │ │ ├── 06_COCO_val2014_000000579463.jpg │ │ │ └── 07_COCO_val2014_000000579463.jpg │ └── AmodalMask │ │ ├── COCO_val2014_000000281533 │ │ ├── COCO_val2014_000000281533.jpg │ │ ├── gt_00_COCO_val2014_000000281533.jpg │ │ ├── gt_01_COCO_val2014_000000281533.jpg │ │ ├── gt_02_COCO_val2014_000000281533.jpg │ │ ├── gt_03_COCO_val2014_000000281533.jpg │ │ ├── gt_04_COCO_val2014_000000281533.jpg │ │ ├── gt_05_COCO_val2014_000000281533.jpg │ │ ├── gt_06_COCO_val2014_000000281533.jpg │ │ ├── gt_07_COCO_val2014_000000281533.jpg │ │ ├── gt_08_COCO_val2014_000000281533.jpg │ │ ├── gt_09_COCO_val2014_000000281533.jpg │ │ ├── gt_10_COCO_val2014_000000281533.jpg │ │ ├── gt_11_COCO_val2014_000000281533.jpg │ │ ├── gt_12_COCO_val2014_000000281533.jpg │ │ ├── gt_13_COCO_val2014_000000281533.jpg │ │ ├── gt_14_COCO_val2014_000000281533.jpg │ │ ├── gt_15_COCO_val2014_000000281533.jpg │ │ ├── gt_16_COCO_val2014_000000281533.jpg │ │ ├── our_14_COCO_val2014_000000281533.jpg │ │ ├── our_58_COCO_val2014_000000281533.jpg │ │ ├── our_91_COCO_val2014_000000281533.jpg │ │ ├── our_120_COCO_val2014_000000281533.jpg │ │ ├── our_151_COCO_val2014_000000281533.jpg │ │ ├── our_211_COCO_val2014_000000281533.jpg │ │ ├── our_215_COCO_val2014_000000281533.jpg │ │ ├── our_216_COCO_val2014_000000281533.jpg │ │ ├── our_222_COCO_val2014_000000281533.jpg │ │ ├── our_246_COCO_val2014_000000281533.jpg │ │ ├── our_348_COCO_val2014_000000281533.jpg │ │ ├── our_521_COCO_val2014_000000281533.jpg │ │ ├── our_555_COCO_val2014_000000281533.jpg │ │ ├── our_571_COCO_val2014_000000281533.jpg │ │ ├── our_601_COCO_val2014_000000281533.jpg │ │ ├── our_635_COCO_val2014_000000281533.jpg │ │ └── our_644_COCO_val2014_000000281533.jpg │ │ ├── COCO_val2014_000000494154 │ │ ├── COCO_val2014_000000494154.jpg │ │ ├── gt_00_COCO_val2014_000000494154.jpg │ │ ├── gt_01_COCO_val2014_000000494154.jpg │ │ ├── gt_02_COCO_val2014_000000494154.jpg │ │ ├── gt_03_COCO_val2014_000000494154.jpg │ │ ├── gt_04_COCO_val2014_000000494154.jpg │ │ ├── gt_05_COCO_val2014_000000494154.jpg │ │ ├── gt_06_COCO_val2014_000000494154.jpg │ │ ├── gt_07_COCO_val2014_000000494154.jpg │ │ ├── gt_08_COCO_val2014_000000494154.jpg │ │ ├── gt_09_COCO_val2014_000000494154.jpg │ │ ├── gt_10_COCO_val2014_000000494154.jpg │ │ ├── gt_11_COCO_val2014_000000494154.jpg │ │ ├── gt_12_COCO_val2014_000000494154.jpg │ │ ├── gt_13_COCO_val2014_000000494154.jpg │ │ ├── gt_14_COCO_val2014_000000494154.jpg │ │ ├── gt_15_COCO_val2014_000000494154.jpg │ │ ├── gt_16_COCO_val2014_000000494154.jpg │ │ ├── gt_17_COCO_val2014_000000494154.jpg │ │ ├── our_06_COCO_val2014_000000494154.jpg │ │ ├── our_10_COCO_val2014_000000494154.jpg │ │ ├── our_21_COCO_val2014_000000494154.jpg │ │ ├── our_48_COCO_val2014_000000494154.jpg │ │ ├── our_116_COCO_val2014_000000494154.jpg │ │ ├── our_193_COCO_val2014_000000494154.jpg │ │ ├── our_262_COCO_val2014_000000494154.jpg │ │ ├── our_275_COCO_val2014_000000494154.jpg │ │ ├── our_309_COCO_val2014_000000494154.jpg │ │ ├── our_336_COCO_val2014_000000494154.jpg │ │ ├── our_384_COCO_val2014_000000494154.jpg │ │ ├── our_528_COCO_val2014_000000494154.jpg │ │ ├── our_561_COCO_val2014_000000494154.jpg │ │ ├── our_565_COCO_val2014_000000494154.jpg │ │ ├── our_571_COCO_val2014_000000494154.jpg │ │ ├── our_697_COCO_val2014_000000494154.jpg │ │ └── our_751_COCO_val2014_000000494154.jpg │ │ ├── COCO_val2014_000000543525 │ │ ├── COCO_val2014_000000543525.jpg │ │ ├── gt_00_COCO_val2014_000000543525.jpg │ │ ├── gt_01_COCO_val2014_000000543525.jpg │ │ ├── gt_02_COCO_val2014_000000543525.jpg │ │ ├── gt_03_COCO_val2014_000000543525.jpg │ │ ├── gt_04_COCO_val2014_000000543525.jpg │ │ ├── gt_05_COCO_val2014_000000543525.jpg │ │ ├── gt_06_COCO_val2014_000000543525.jpg │ │ ├── gt_07_COCO_val2014_000000543525.jpg │ │ ├── our_75_COCO_val2014_000000543525.jpg │ │ ├── our_158_COCO_val2014_000000543525.jpg │ │ ├── our_176_COCO_val2014_000000543525.jpg │ │ ├── our_213_COCO_val2014_000000543525.jpg │ │ ├── our_250_COCO_val2014_000000543525.jpg │ │ ├── our_386_COCO_val2014_000000543525.jpg │ │ ├── our_645_COCO_val2014_000000543525.jpg │ │ └── our_650_COCO_val2014_000000543525.jpg │ │ └── COCO_val2014_000000579463 │ │ ├── COCO_val2014_000000579463.jpg │ │ ├── gt_00_COCO_val2014_000000579463.jpg │ │ ├── gt_01_COCO_val2014_000000579463.jpg │ │ ├── gt_02_COCO_val2014_000000579463.jpg │ │ ├── gt_03_COCO_val2014_000000579463.jpg │ │ ├── gt_04_COCO_val2014_000000579463.jpg │ │ ├── gt_05_COCO_val2014_000000579463.jpg │ │ ├── gt_06_COCO_val2014_000000579463.jpg │ │ ├── gt_07_COCO_val2014_000000579463.jpg │ │ ├── our_03_COCO_val2014_000000579463.jpg │ │ ├── our_80_COCO_val2014_000000579463.jpg │ │ ├── our_86_COCO_val2014_000000579463.jpg │ │ ├── our_140_COCO_val2014_000000579463.jpg │ │ ├── our_152_COCO_val2014_000000579463.jpg │ │ ├── our_157_COCO_val2014_000000579463.jpg │ │ ├── our_501_COCO_val2014_000000579463.jpg │ │ └── our_503_COCO_val2014_000000579463.jpg └── sem-dist-map-demo.png ├── LICENSE ├── evaluate ├── bbox.py └── evaluate.py ├── amodal_test.py └── .gitignore /nms/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /checkpoints/gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /nms/_ext/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roialign/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /datasets/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /roialign/roi_align/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roialign/roi_align/_ext/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /modal/lib/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .th import * 2 | -------------------------------------------------------------------------------- /cocoapi/PythonAPI/pycocotools/__init__.py: -------------------------------------------------------------------------------- 1 | __author__ = 'tylin' 2 | -------------------------------------------------------------------------------- /nms/_ext/nms/_nms.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/nms/_ext/nms/_nms.so -------------------------------------------------------------------------------- /results/D2S/D2S.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S.pdf -------------------------------------------------------------------------------- /results/COCO/final_res.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/final_res.pdf -------------------------------------------------------------------------------- /results/sem-dist-map-demo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/sem-dist-map-demo.png -------------------------------------------------------------------------------- /nms/src/nms_cuda.h: -------------------------------------------------------------------------------- 1 | int gpu_nms(THLongTensor * keep_out, THLongTensor* num_out, THCudaTensor * boxes, float nms_overlap_thresh); -------------------------------------------------------------------------------- /modal/lib/nn/parallel/__init__.py: -------------------------------------------------------------------------------- 1 | from .data_parallel import UserScatteredDataParallel, user_scattered_collate, async_copy_to 2 | -------------------------------------------------------------------------------- /results/D2S/D2S_004811/D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/D2S_004811.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/D2S_004811.png -------------------------------------------------------------------------------- /results/D2S/D2S_026022/D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/D2S_026022.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/D2S_026022.png -------------------------------------------------------------------------------- /results/D2S/D2S_038111/D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/D2S_038111.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/D2S_038111.png -------------------------------------------------------------------------------- /results/D2S/D2S_058302/D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/D2S_058302.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/D2S_058302.png -------------------------------------------------------------------------------- /results/D2S/D2S_068312/D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/07_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/07_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/09_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/09_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/25_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/25_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/00_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/00_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/02_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/02_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/105_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/105_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/11_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/11_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/29_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/29_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/45_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/45_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/70_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/70_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/77_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/77_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/00_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/00_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/15_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/15_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/36_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/36_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/13_D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/13_D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/16_D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/16_D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/02_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/02_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/189_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/189_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/197_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/197_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/19_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/19_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/223_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/223_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/33_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/33_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/43_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/43_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/52_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/52_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/72_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/72_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/92_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/92_D2S_068312.jpg -------------------------------------------------------------------------------- /modal/lib/nn/__init__.py: -------------------------------------------------------------------------------- 1 | from .modules import * 2 | from .parallel import UserScatteredDataParallel, user_scattered_collate, async_copy_to 3 | -------------------------------------------------------------------------------- /modal/lib/utils/data/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | from .dataset import Dataset, TensorDataset, ConcatDataset 3 | from .dataloader import DataLoader 4 | -------------------------------------------------------------------------------- /results/D2S/D2S_004811/gt_00_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/gt_00_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/gt_01_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/gt_01_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/gt_02_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/gt_02_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_00_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_00_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_01_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_01_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_02_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_02_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_03_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_03_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_04_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_04_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_05_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_05_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_06_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_06_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/gt_07_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/gt_07_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/gt_00_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/gt_00_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/gt_01_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/gt_01_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/gt_02_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/gt_02_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/gt_00_D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/gt_00_D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/gt_01_D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/gt_01_D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_00_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_00_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_01_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_01_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_02_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_02_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_03_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_03_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_04_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_04_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_05_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_05_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_06_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_06_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_07_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_07_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_08_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_08_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/gt_09_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/gt_09_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/our_03_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/our_03_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/our_137_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/our_137_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_004811/our_78_D2S_004811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_004811/our_78_D2S_004811.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_08_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_08_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_108_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_108_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_170_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_170_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_204_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_204_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_26_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_26_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_33_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_33_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_57_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_57_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_026022/our_98_D2S_026022.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_026022/our_98_D2S_026022.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/our_13_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/our_13_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/our_32_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/our_32_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_038111/our_44_D2S_038111.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_038111/our_44_D2S_038111.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/our_07_D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/our_07_D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_058302/our_40_D2S_058302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_058302/our_40_D2S_058302.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_05_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_05_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_102_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_102_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_11_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_11_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_122_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_122_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_183_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_183_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_190_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_190_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_236_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_236_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_258_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_258_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_42_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_42_D2S_068312.jpg -------------------------------------------------------------------------------- /results/D2S/D2S_068312/our_56_D2S_068312.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/D2S/D2S_068312/our_56_D2S_068312.jpg -------------------------------------------------------------------------------- /results/COCO/pic1/COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic1/COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/pic2/COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic2/COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/pic3/COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic3/COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/pic1/COCO_val2014_000000543525_gt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic1/COCO_val2014_000000543525_gt.png -------------------------------------------------------------------------------- /results/COCO/pic2/COCO_val2014_000000494154_gt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic2/COCO_val2014_000000494154_gt.png -------------------------------------------------------------------------------- /results/COCO/pic3/COCO_val2014_000000579463_gt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic3/COCO_val2014_000000579463_gt.png -------------------------------------------------------------------------------- /results/COCO/pic1/COCO_val2014_000000543525_rcnn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic1/COCO_val2014_000000543525_rcnn.png -------------------------------------------------------------------------------- /results/COCO/pic2/COCO_val2014_000000494154_mrcnn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic2/COCO_val2014_000000494154_mrcnn.png -------------------------------------------------------------------------------- /results/COCO/pic3/COCO_val2014_000000579463_mrcnn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic3/COCO_val2014_000000579463_mrcnn.png -------------------------------------------------------------------------------- /nms/src/nms.h: -------------------------------------------------------------------------------- 1 | int cpu_nms(THLongTensor * keep_out, THLongTensor * num_out, THFloatTensor * boxes, THLongTensor * order, THFloatTensor * areas, float nms_overlap_thresh); -------------------------------------------------------------------------------- /results/COCO/pic1/COCO_val2014_000000543525_thirst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic1/COCO_val2014_000000543525_thirst.png -------------------------------------------------------------------------------- /results/COCO/pic2/COCO_val2014_000000494154_thirst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic2/COCO_val2014_000000494154_thirst.png -------------------------------------------------------------------------------- /results/COCO/pic3/COCO_val2014_000000579463_thirst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic3/COCO_val2014_000000579463_thirst.png -------------------------------------------------------------------------------- /results/COCO/pic1/COCO_val2014_000000543525_sem_dist_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic1/COCO_val2014_000000543525_sem_dist_map.png -------------------------------------------------------------------------------- /results/COCO/pic2/COCO_val2014_000000494154_sem_dist_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic2/COCO_val2014_000000494154_sem_dist_map.png -------------------------------------------------------------------------------- /results/COCO/pic3/COCO_val2014_000000579463_sem_Dist_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/pic3/COCO_val2014_000000579463_sem_Dist_map.png -------------------------------------------------------------------------------- /roialign/roi_align/_ext/crop_and_resize/_crop_and_resize.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/roialign/roi_align/_ext/crop_and_resize/_crop_and_resize.so -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/00_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/00_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/01_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/01_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/02_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/02_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/03_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/03_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/04_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/04_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/05_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/05_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/06_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/06_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/07_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/07_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/08_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/08_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/09_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/09_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/10_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/10_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/11_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/11_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/12_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/12_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/13_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/13_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/14_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/14_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/15_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/15_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000281533/16_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000281533/16_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/00_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/00_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/01_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/01_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/02_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/02_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/03_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/03_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/04_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/04_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/05_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/05_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/06_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/06_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/07_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/07_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/08_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/08_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/09_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/09_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/10_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/10_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/11_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/11_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/12_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/12_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/13_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/13_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/14_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/14_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/15_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/15_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/16_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/16_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000494154/17_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000494154/17_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/00_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/00_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/01_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/01_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/02_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/02_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/03_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/03_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/04_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/04_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/05_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/05_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/06_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/06_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000543525/07_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000543525/07_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/00_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/00_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/01_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/01_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/02_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/02_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/03_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/03_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/04_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/04_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/05_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/05_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/06_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/06_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/ARCNN/COCO_val2014_000000579463/07_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/ARCNN/COCO_val2014_000000579463/07_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_00_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_00_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_01_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_01_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_02_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_02_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_03_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_03_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_04_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_04_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_05_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_05_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_06_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_06_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_07_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_07_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_08_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_08_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_09_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_09_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_10_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_10_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_11_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_11_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_12_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_12_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_13_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_13_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_14_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_14_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_15_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_15_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/gt_16_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/gt_16_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_06_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_06_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_101_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_101_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_103_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_103_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_146_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_146_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_17_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_17_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_227_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_227_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_287_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_287_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_28_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_28_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_306_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_306_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_372_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_372_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_407_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_407_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_42_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_42_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_431_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_431_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_481_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_481_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_486_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_486_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_64_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_64_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000281533/our_83_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000281533/our_83_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_00_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_00_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_01_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_01_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_02_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_02_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_03_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_03_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_04_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_04_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_05_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_05_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_06_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_06_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_07_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_07_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_08_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_08_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_09_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_09_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_10_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_10_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_11_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_11_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_12_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_12_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_13_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_13_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_14_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_14_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_15_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_15_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_16_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_16_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/gt_17_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/gt_17_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_00_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_00_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_12_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_12_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_132_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_132_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_192_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_192_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_194_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_194_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_218_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_218_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_221_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_221_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_23_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_23_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_308_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_308_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_423_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_423_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_433_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_433_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_445_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_445_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_463_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_463_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_530_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_530_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_574_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_574_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_595_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_595_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_63_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_63_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000494154/our_90_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000494154/our_90_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525 - Copy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525 - Copy.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_00_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_00_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_01_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_01_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_02_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_02_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_03_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_03_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_04_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_04_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_05_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_05_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_06_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_06_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/gt_07_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/gt_07_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_02_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_02_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_156_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_156_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_22_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_22_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_333_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_333_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_336_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_336_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_401_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_401_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_56_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_56_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/our_57_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/our_57_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_00_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_00_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_01_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_01_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_02_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_02_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_03_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_03_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_04_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_04_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_05_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_05_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_06_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_06_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/gt_07_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/gt_07_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_03_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_03_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_147_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_147_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_208_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_208_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_22_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_22_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_230_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_230_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_346_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_346_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_350_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_350_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000579463/our_38_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000579463/our_38_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_00_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_00_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_01_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_01_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_02_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_02_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_03_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_03_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_04_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_04_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_05_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_05_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_06_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_06_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_07_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_07_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_08_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_08_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_09_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_09_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_10_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_10_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_11_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_11_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_12_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_12_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_13_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_13_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_14_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_14_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_15_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_15_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/gt_16_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/gt_16_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_14_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_14_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_58_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_58_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_91_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_91_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_00_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_00_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_01_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_01_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_02_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_02_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_03_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_03_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_04_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_04_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_05_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_05_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_06_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_06_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_07_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_07_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_08_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_08_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_09_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_09_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_10_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_10_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_11_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_11_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_12_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_12_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_13_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_13_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_14_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_14_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_15_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_15_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_16_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_16_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/gt_17_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/gt_17_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_06_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_06_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_10_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_10_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_21_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_21_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_48_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_48_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_00_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_00_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_01_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_01_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_02_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_02_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_03_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_03_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_04_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_04_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_05_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_05_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_06_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_06_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/gt_07_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/gt_07_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_75_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_75_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_00_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_00_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_01_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_01_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_02_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_02_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_03_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_03_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_04_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_04_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_05_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_05_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_06_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_06_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/gt_07_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/gt_07_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_03_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_03_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_80_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_80_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_86_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_86_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525 - Copy (2).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525 - Copy (2).jpg -------------------------------------------------------------------------------- /results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525 - Copy (3).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/OURS/COCO_val2014_000000543525/COCO_val2014_000000543525 - Copy (3).jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_120_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_120_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_151_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_151_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_211_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_211_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_215_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_215_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_216_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_216_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_222_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_222_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_246_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_246_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_348_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_348_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_521_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_521_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_555_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_555_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_571_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_571_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_601_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_601_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_635_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_635_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000281533/our_644_COCO_val2014_000000281533.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000281533/our_644_COCO_val2014_000000281533.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_116_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_116_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_193_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_193_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_262_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_262_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_275_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_275_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_309_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_309_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_336_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_336_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_384_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_384_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_528_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_528_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_561_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_561_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_565_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_565_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_571_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_571_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_697_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_697_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000494154/our_751_COCO_val2014_000000494154.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000494154/our_751_COCO_val2014_000000494154.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_158_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_158_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_176_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_176_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_213_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_213_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_250_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_250_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_386_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_386_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_645_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_645_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000543525/our_650_COCO_val2014_000000543525.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000543525/our_650_COCO_val2014_000000543525.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_140_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_140_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_152_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_152_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_157_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_157_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_501_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_501_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /results/COCO/AmodalMask/COCO_val2014_000000579463/our_503_COCO_val2014_000000579463.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apchenstu/SLN-Amodal/HEAD/results/COCO/AmodalMask/COCO_val2014_000000579463/our_503_COCO_val2014_000000579463.jpg -------------------------------------------------------------------------------- /cocoapi/.travis.yml: -------------------------------------------------------------------------------- 1 | group: travis_latest 2 | language: python 3 | cache: pip 4 | python: 5 | - 2.7 6 | - 3.6 7 | install: 8 | - pip install --upgrade pip 9 | - pip install pycocotools 10 | script: 11 | - true 12 | -------------------------------------------------------------------------------- /cocoapi/PythonAPI/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | # install pycocotools locally 3 | python setup.py build_ext --inplace 4 | rm -rf build 5 | 6 | install: 7 | # install pycocotools to the Python site-packages 8 | python setup.py build_ext install 9 | rm -rf build -------------------------------------------------------------------------------- /cocoapi/.gitignore: -------------------------------------------------------------------------------- 1 | images/ 2 | annotations/ 3 | results/ 4 | external/ 5 | .DS_Store 6 | 7 | MatlabAPI/analyze*/ 8 | MatlabAPI/visualize*/ 9 | MatlabAPI/private/maskApiMex.* 10 | 11 | PythonAPI/pycocotools/__init__.pyc 12 | PythonAPI/pycocotools/_mask.c 13 | PythonAPI/pycocotools/_mask.so 14 | PythonAPI/pycocotools/coco.pyc 15 | PythonAPI/pycocotools/cocoeval.pyc 16 | PythonAPI/pycocotools/mask.pyc 17 | -------------------------------------------------------------------------------- /nms/src/cuda/nms_kernel.h: -------------------------------------------------------------------------------- 1 | #ifndef _NMS_KERNEL 2 | #define _NMS_KERNEL 3 | 4 | #ifdef __cplusplus 5 | extern "C" { 6 | #endif 7 | 8 | #define DIVUP(m,n) ((m) / (n) + ((m) % (n) > 0)) 9 | int const threadsPerBlock = sizeof(unsigned long long) * 8; 10 | 11 | void _nms(int boxes_num, float * boxes_dev, 12 | unsigned long long * mask_dev, float nms_overlap_thresh); 13 | 14 | #ifdef __cplusplus 15 | } 16 | #endif 17 | 18 | #endif 19 | 20 | -------------------------------------------------------------------------------- /nms/_ext/nms/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | from torch.utils.ffi import _wrap_function 3 | from ._nms import lib as _lib, ffi as _ffi 4 | 5 | __all__ = [] 6 | def _import_symbols(locals): 7 | for symbol in dir(_lib): 8 | fn = getattr(_lib, symbol) 9 | if callable(fn): 10 | locals[symbol] = _wrap_function(fn, _ffi) 11 | else: 12 | locals[symbol] = fn 13 | __all__.append(symbol) 14 | 15 | _import_symbols(locals()) 16 | -------------------------------------------------------------------------------- /roialign/roi_align/_ext/crop_and_resize/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | from torch.utils.ffi import _wrap_function 3 | from ._crop_and_resize import lib as _lib, ffi as _ffi 4 | 5 | __all__ = [] 6 | def _import_symbols(locals): 7 | for symbol in dir(_lib): 8 | fn = getattr(_lib, symbol) 9 | if callable(fn): 10 | locals[symbol] = _wrap_function(fn, _ffi) 11 | else: 12 | locals[symbol] = fn 13 | __all__.append(symbol) 14 | 15 | _import_symbols(locals()) 16 | -------------------------------------------------------------------------------- /modal/lib/nn/modules/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # File : __init__.py 3 | # Author : Jiayuan Mao 4 | # Email : maojiayuan@gmail.com 5 | # Date : 27/01/2018 6 | # 7 | # This file is part of Synchronized-BatchNorm-PyTorch. 8 | # https://github.com/vacancy/Synchronized-BatchNorm-PyTorch 9 | # Distributed under MIT License. 10 | 11 | from .batchnorm import SynchronizedBatchNorm1d, SynchronizedBatchNorm2d, SynchronizedBatchNorm3d 12 | from .replicate import DataParallelWithCallback, patch_replication_callback 13 | -------------------------------------------------------------------------------- /nms/nms_wrapper.py: -------------------------------------------------------------------------------- 1 | # -------------------------------------------------------- 2 | # Fast R-CNN 3 | # Copyright (c) 2015 Microsoft 4 | # Licensed under The MIT License [see LICENSE for details] 5 | # Written by Ross Girshick 6 | # -------------------------------------------------------- 7 | from __future__ import absolute_import 8 | from __future__ import division 9 | from __future__ import print_function 10 | 11 | from nms.pth_nms import pth_nms 12 | 13 | 14 | def nms(dets, thresh): 15 | """Dispatch to either CPU or GPU NMS implementations. 16 | Accept dets as tensor""" 17 | return pth_nms(dets, thresh) 18 | -------------------------------------------------------------------------------- /roialign/roi_align/src/crop_and_resize.h: -------------------------------------------------------------------------------- 1 | void crop_and_resize_forward( 2 | THFloatTensor * image, 3 | THFloatTensor * boxes, // [y1, x1, y2, x2] 4 | THIntTensor * box_index, // range in [0, batch_size) 5 | const float extrapolation_value, 6 | const int crop_height, 7 | const int crop_width, 8 | THFloatTensor * crops 9 | ); 10 | 11 | void crop_and_resize_backward( 12 | THFloatTensor * grads, 13 | THFloatTensor * boxes, // [y1, x1, y2, x2] 14 | THIntTensor * box_index, // range in [0, batch_size) 15 | THFloatTensor * grads_image // resize to [bsize, c, hc, wc] 16 | ); -------------------------------------------------------------------------------- /roialign/roi_align/src/crop_and_resize_gpu.h: -------------------------------------------------------------------------------- 1 | void crop_and_resize_gpu_forward( 2 | THCudaTensor * image, 3 | THCudaTensor * boxes, // [y1, x1, y2, x2] 4 | THCudaIntTensor * box_index, // range in [0, batch_size) 5 | const float extrapolation_value, 6 | const int crop_height, 7 | const int crop_width, 8 | THCudaTensor * crops 9 | ); 10 | 11 | void crop_and_resize_gpu_backward( 12 | THCudaTensor * grads, 13 | THCudaTensor * boxes, // [y1, x1, y2, x2] 14 | THCudaIntTensor * box_index, // range in [0, batch_size) 15 | THCudaTensor * grads_image // resize to [bsize, c, hc, wc] 16 | ); -------------------------------------------------------------------------------- /roialign/roi_align/src/cuda/crop_and_resize_kernel.h: -------------------------------------------------------------------------------- 1 | #ifndef _CropAndResize_Kernel 2 | #define _CropAndResize_Kernel 3 | 4 | #ifdef __cplusplus 5 | extern "C" { 6 | #endif 7 | 8 | void CropAndResizeLaucher( 9 | const float *image_ptr, const float *boxes_ptr, 10 | const int *box_ind_ptr, int num_boxes, int batch, int image_height, 11 | int image_width, int crop_height, int crop_width, int depth, 12 | float extrapolation_value, float *crops_ptr, cudaStream_t stream); 13 | 14 | void CropAndResizeBackpropImageLaucher( 15 | const float *grads_ptr, const float *boxes_ptr, 16 | const int *box_ind_ptr, int num_boxes, int batch, int image_height, 17 | int image_width, int crop_height, int crop_width, int depth, 18 | float *grads_image_ptr, cudaStream_t stream); 19 | 20 | #ifdef __cplusplus 21 | } 22 | #endif 23 | 24 | #endif -------------------------------------------------------------------------------- /cocoapi/PythonAPI/setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup, Extension 2 | import numpy as np 3 | 4 | # To compile and install locally run "python setup.py build_ext --inplace" 5 | # To install library to Python site-packages run "python setup.py build_ext install" 6 | 7 | ext_modules = [ 8 | Extension( 9 | 'pycocotools._mask', 10 | sources=['../common/maskApi.c', 'pycocotools/_mask.pyx'], 11 | include_dirs = [np.get_include(), '../common'], 12 | extra_compile_args=['-Wno-cpp', '-Wno-unused-function', '-std=c99'], 13 | ) 14 | ] 15 | 16 | setup( 17 | name='pycocotools', 18 | packages=['pycocotools'], 19 | package_dir = {'pycocotools': 'pycocotools'}, 20 | install_requires=[ 21 | 'setuptools>=18.0', 22 | 'cython>=0.27.3', 23 | 'matplotlib>=2.1.0' 24 | ], 25 | version='2.0', 26 | ext_modules= ext_modules 27 | ) 28 | -------------------------------------------------------------------------------- /nms/build.py: -------------------------------------------------------------------------------- 1 | import os 2 | import torch 3 | from torch.utils.ffi import create_extension 4 | 5 | 6 | sources = ['src/nms.c'] 7 | headers = ['src/nms.h'] 8 | defines = [] 9 | with_cuda = False 10 | 11 | if torch.cuda.is_available(): 12 | print('Including CUDA code.') 13 | sources += ['src/nms_cuda.c'] 14 | headers += ['src/nms_cuda.h'] 15 | defines += [('WITH_CUDA', None)] 16 | with_cuda = True 17 | 18 | this_file = os.path.dirname(os.path.realpath(__file__)) 19 | print(this_file) 20 | extra_objects = ['src/cuda/nms_kernel.cu.o'] 21 | extra_objects = [os.path.join(this_file, fname) for fname in extra_objects] 22 | 23 | ffi = create_extension( 24 | '_ext.nms', 25 | headers=headers, 26 | sources=sources, 27 | define_macros=defines, 28 | relative_to=__file__, 29 | with_cuda=with_cuda, 30 | extra_objects=extra_objects 31 | ) 32 | 33 | if __name__ == '__main__': 34 | ffi.build() 35 | -------------------------------------------------------------------------------- /modal/lib/nn/modules/unittest.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # File : unittest.py 3 | # Author : Jiayuan Mao 4 | # Email : maojiayuan@gmail.com 5 | # Date : 27/01/2018 6 | # 7 | # This file is part of Synchronized-BatchNorm-PyTorch. 8 | # https://github.com/vacancy/Synchronized-BatchNorm-PyTorch 9 | # Distributed under MIT License. 10 | 11 | import unittest 12 | 13 | import numpy as np 14 | from torch.autograd import Variable 15 | 16 | 17 | def as_numpy(v): 18 | if isinstance(v, Variable): 19 | v = v.data 20 | return v.cpu().numpy() 21 | 22 | 23 | class TorchTestCase(unittest.TestCase): 24 | def assertTensorClose(self, a, b, atol=1e-3, rtol=1e-3): 25 | npa, npb = as_numpy(a), as_numpy(b) 26 | self.assertTrue( 27 | np.allclose(npa, npb, atol=atol), 28 | 'Tensor close check failed\n{}\n{}\nadiff={}, rdiff={}'.format(a, b, np.abs(npa - npb).max(), np.abs((npa - npb) / np.fmax(npa, 1e-5)).max()) 29 | ) 30 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 apchenstu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /roialign/roi_align/build.py: -------------------------------------------------------------------------------- 1 | import os 2 | import torch 3 | from torch.utils.ffi import create_extension 4 | 5 | 6 | sources = ['src/crop_and_resize.c'] 7 | headers = ['src/crop_and_resize.h'] 8 | defines = [] 9 | with_cuda = False 10 | 11 | extra_objects = [] 12 | if torch.cuda.is_available(): 13 | print('Including CUDA code.') 14 | sources += ['src/crop_and_resize_gpu.c'] 15 | headers += ['src/crop_and_resize_gpu.h'] 16 | defines += [('WITH_CUDA', None)] 17 | extra_objects += ['src/cuda/crop_and_resize_kernel.cu.o'] 18 | with_cuda = True 19 | 20 | extra_compile_args = ['-fopenmp', '-std=c99'] 21 | 22 | this_file = os.path.dirname(os.path.realpath(__file__)) 23 | print(this_file) 24 | sources = [os.path.join(this_file, fname) for fname in sources] 25 | headers = [os.path.join(this_file, fname) for fname in headers] 26 | extra_objects = [os.path.join(this_file, fname) for fname in extra_objects] 27 | 28 | ffi = create_extension( 29 | '_ext.crop_and_resize', 30 | headers=headers, 31 | sources=sources, 32 | define_macros=defines, 33 | relative_to=__file__, 34 | with_cuda=with_cuda, 35 | extra_objects=extra_objects, 36 | extra_compile_args=extra_compile_args 37 | ) 38 | 39 | if __name__ == '__main__': 40 | ffi.build() 41 | -------------------------------------------------------------------------------- /cocoapi/README.txt: -------------------------------------------------------------------------------- 1 | COCO API - http://cocodataset.org/ 2 | 3 | COCO is a large image dataset designed for object detection, segmentation, person keypoints detection, stuff segmentation, and caption generation. This package provides Matlab, Python, and Lua APIs that assists in loading, parsing, and visualizing the annotations in COCO. Please visit http://cocodataset.org/ for more information on COCO, including for the data, paper, and tutorials. The exact format of the annotations is also described on the COCO website. The Matlab and Python APIs are complete, the Lua API provides only basic functionality. 4 | 5 | In addition to this API, please download both the COCO images and annotations in order to run the demos and use the API. Both are available on the project website. 6 | -Please download, unzip, and place the images in: coco/images/ 7 | -Please download and place the annotations in: coco/annotations/ 8 | For substantially more details on the API please see http://cocodataset.org/#download. 9 | 10 | After downloading the images and annotations, run the Matlab, Python, or Lua demos for example usage. 11 | 12 | To install: 13 | -For Matlab, add coco/MatlabApi to the Matlab path (OSX/Linux binaries provided) 14 | -For Python, run "make" under coco/PythonAPI 15 | -For Lua, run “luarocks make LuaAPI/rocks/coco-scm-1.rockspec” under coco/ 16 | -------------------------------------------------------------------------------- /evaluate/bbox.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import numpy as np 3 | 4 | 5 | def bbox_overlaps(boxes, query_boxes): 6 | """ 7 | Parameters 8 | ---------- 9 | boxes: (N, 4) ndarray or tensor or variable 10 | query_boxes: (K, 4) ndarray or tensor or variable 11 | Returns 12 | ------- 13 | overlaps: (N, K) overlap between boxes and query_boxes 14 | """ 15 | if isinstance(boxes, np.ndarray): 16 | boxes = torch.from_numpy(boxes) 17 | query_boxes = torch.from_numpy(query_boxes) 18 | out_fn = lambda x: x.numpy() # If input is ndarray, turn the overlaps back to ndarray when return 19 | else: 20 | out_fn = lambda x: x 21 | 22 | box_areas = (boxes[:, 2] - boxes[:, 0] + 1) * \ 23 | (boxes[:, 3] - boxes[:, 1] + 1) 24 | query_areas = (query_boxes[:, 2] - query_boxes[:, 0] + 1) * \ 25 | (query_boxes[:, 3] - query_boxes[:, 1] + 1) 26 | 27 | iw = (torch.min(boxes[:, 2:3], query_boxes[:, 2:3].t()) - torch.max( 28 | boxes[:, 0:1], query_boxes[:, 0:1].t()) + 1).clamp(min=0) 29 | ih = (torch.min(boxes[:, 3:4], query_boxes[:, 3:4].t()) - torch.max( 30 | boxes[:, 1:2], query_boxes[:, 1:2].t()) + 1).clamp(min=0) 31 | ua = box_areas.view(-1, 1) + query_areas.view(1, -1) - iw * ih 32 | overlaps = iw * ih / ua 33 | return out_fn(overlaps) -------------------------------------------------------------------------------- /modal/lib/utils/th.py: -------------------------------------------------------------------------------- 1 | import torch 2 | from torch.autograd import Variable 3 | import numpy as np 4 | import collections 5 | 6 | __all__ = ['as_variable', 'as_numpy', 'mark_volatile'] 7 | 8 | def as_variable(obj): 9 | if isinstance(obj, Variable): 10 | return obj 11 | if isinstance(obj, collections.Sequence): 12 | return [as_variable(v) for v in obj] 13 | elif isinstance(obj, collections.Mapping): 14 | return {k: as_variable(v) for k, v in obj.items()} 15 | else: 16 | return Variable(obj) 17 | 18 | def as_numpy(obj): 19 | if isinstance(obj, collections.Sequence): 20 | return [as_numpy(v) for v in obj] 21 | elif isinstance(obj, collections.Mapping): 22 | return {k: as_numpy(v) for k, v in obj.items()} 23 | elif isinstance(obj, Variable): 24 | return obj.data.cpu().numpy() 25 | elif torch.is_tensor(obj): 26 | return obj.cpu().numpy() 27 | else: 28 | return np.array(obj) 29 | 30 | def mark_volatile(obj): 31 | if torch.is_tensor(obj): 32 | obj = Variable(obj) 33 | if isinstance(obj, Variable): 34 | obj.no_grad = True 35 | return obj 36 | elif isinstance(obj, collections.Mapping): 37 | return {k: mark_volatile(o) for k, o in obj.items()} 38 | elif isinstance(obj, collections.Sequence): 39 | return [mark_volatile(o) for o in obj] 40 | else: 41 | return obj 42 | -------------------------------------------------------------------------------- /modal/msc_deeplab.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # coding: utf-8 3 | # 4 | # Author: Kazuto Nakashima 5 | # URL: http://kazuto1011.github.io 6 | # Created: 2018-03-26 7 | 8 | import torch 9 | import torch.nn as nn 10 | import torch.nn.functional as F 11 | 12 | 13 | class MSC(nn.Module): 14 | """ 15 | Multi-scale inputs 16 | """ 17 | 18 | def __init__(self, base, scales=None): 19 | super(MSC, self).__init__() 20 | self.base = base 21 | if scales: 22 | self.scales = scales 23 | else: 24 | self.scales = [0.5, 0.75] 25 | 26 | def forward(self, x): 27 | # Original 28 | logits = self.base(x) 29 | _, _, H, W = logits.shape 30 | interp = lambda l: F.upsample( 31 | l, size=(H, W), mode="bilinear", align_corners=False 32 | ) 33 | 34 | # Scaled 35 | logits_pyramid = [] 36 | for p in self.scales: 37 | h = F.upsample(x, size=(int(x.size(2)*p),int(x.size(3)*p)),mode="bilinear", align_corners=False) 38 | #h = F.interpolate(x, scale_factor=p, mode="bilinear", align_corners=False) 39 | logits_pyramid.append(self.base(h)) 40 | 41 | # Pixel-wise max 42 | logits_all = [logits] + [interp(l) for l in logits_pyramid] 43 | logits_max = torch.max(torch.stack(logits_all), dim=0)[0] 44 | 45 | if self.training: 46 | return [logits] + logits_pyramid + [logits_max] 47 | else: 48 | return logits_max 49 | -------------------------------------------------------------------------------- /cocoapi/license.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014, Piotr Dollar and Tsung-Yi Lin 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 2. Redistributions in binary form must reproduce the above copyright notice, 10 | this list of conditions and the following disclaimer in the documentation 11 | and/or other materials provided with the distribution. 12 | 13 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 14 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 15 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 16 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 17 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 18 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 19 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 20 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 22 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 | 24 | The views and conclusions contained in the software and documentation are those 25 | of the authors and should not be interpreted as representing official policies, 26 | either expressed or implied, of the FreeBSD Project. 27 | -------------------------------------------------------------------------------- /nms/pth_nms.py: -------------------------------------------------------------------------------- 1 | import torch 2 | from ._ext import nms 3 | import numpy as np 4 | 5 | def pth_nms(dets, thresh): 6 | """ 7 | dets has to be a tensor 8 | """ 9 | if not dets.is_cuda: 10 | x1 = dets[:, 1] 11 | y1 = dets[:, 0] 12 | x2 = dets[:, 3] 13 | y2 = dets[:, 2] 14 | scores = dets[:, 4] 15 | 16 | areas = (x2 - x1 + 1) * (y2 - y1 + 1) 17 | order = scores.sort(0, descending=True)[1] 18 | # order = torch.from_numpy(np.ascontiguousarray(scores.numpy().argsort()[::-1])).long() 19 | 20 | keep = torch.LongTensor(dets.size(0)) 21 | num_out = torch.LongTensor(1) 22 | nms.cpu_nms(keep, num_out, dets, order, areas, thresh) 23 | 24 | return keep[:num_out[0]] 25 | else: 26 | x1 = dets[:, 1] 27 | y1 = dets[:, 0] 28 | x2 = dets[:, 3] 29 | y2 = dets[:, 2] 30 | scores = dets[:, 4] 31 | 32 | dets_temp = torch.FloatTensor(dets.size()).cuda() 33 | dets_temp[:, 0] = dets[:, 1] 34 | dets_temp[:, 1] = dets[:, 0] 35 | dets_temp[:, 2] = dets[:, 3] 36 | dets_temp[:, 3] = dets[:, 2] 37 | dets_temp[:, 4] = dets[:, 4] 38 | 39 | areas = (x2 - x1 + 1) * (y2 - y1 + 1) 40 | order = scores.sort(0, descending=True)[1] 41 | # order = torch.from_numpy(np.ascontiguousarray(scores.cpu().numpy().argsort()[::-1])).long().cuda() 42 | 43 | dets = dets[order].contiguous() 44 | 45 | keep = torch.LongTensor(dets.size(0)) 46 | num_out = torch.LongTensor(1) 47 | # keep = torch.cuda.LongTensor(dets.size(0)) 48 | # num_out = torch.cuda.LongTensor(1) 49 | nms.gpu_nms(keep, num_out, dets_temp, thresh) 50 | 51 | return order[keep[:num_out[0]].cuda()].contiguous() 52 | # return order[keep[:num_out[0]]].contiguous() 53 | 54 | -------------------------------------------------------------------------------- /modal/lib/nn/modules/tests/test_numeric_batchnorm.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # File : test_numeric_batchnorm.py 3 | # Author : Jiayuan Mao 4 | # Email : maojiayuan@gmail.com 5 | # Date : 27/01/2018 6 | # 7 | # This file is part of Synchronized-BatchNorm-PyTorch. 8 | 9 | import unittest 10 | 11 | import torch 12 | import torch.nn as nn 13 | from torch.autograd import Variable 14 | 15 | from sync_batchnorm.unittest import TorchTestCase 16 | 17 | 18 | def handy_var(a, unbias=True): 19 | n = a.size(0) 20 | asum = a.sum(dim=0) 21 | as_sum = (a ** 2).sum(dim=0) # a square sum 22 | sumvar = as_sum - asum * asum / n 23 | if unbias: 24 | return sumvar / (n - 1) 25 | else: 26 | return sumvar / n 27 | 28 | 29 | class NumericTestCase(TorchTestCase): 30 | def testNumericBatchNorm(self): 31 | a = torch.rand(16, 10) 32 | bn = nn.BatchNorm2d(10, momentum=1, eps=1e-5, affine=False) 33 | bn.train() 34 | 35 | a_var1 = Variable(a, requires_grad=True) 36 | b_var1 = bn(a_var1) 37 | loss1 = b_var1.sum() 38 | loss1.backward() 39 | 40 | a_var2 = Variable(a, requires_grad=True) 41 | a_mean2 = a_var2.mean(dim=0, keepdim=True) 42 | a_std2 = torch.sqrt(handy_var(a_var2, unbias=False).clamp(min=1e-5)) 43 | # a_std2 = torch.sqrt(a_var2.var(dim=0, keepdim=True, unbiased=False) + 1e-5) 44 | b_var2 = (a_var2 - a_mean2) / a_std2 45 | loss2 = b_var2.sum() 46 | loss2.backward() 47 | 48 | self.assertTensorClose(bn.running_mean, a.mean(dim=0)) 49 | self.assertTensorClose(bn.running_var, handy_var(a)) 50 | self.assertTensorClose(a_var1.data, a_var2.data) 51 | self.assertTensorClose(b_var1.data, b_var2.data) 52 | self.assertTensorClose(a_var1.grad, a_var2.grad) 53 | 54 | 55 | if __name__ == '__main__': 56 | unittest.main() 57 | -------------------------------------------------------------------------------- /amodal_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | import skimage.io 3 | 4 | 5 | import pickle 6 | import model as modellib 7 | from modal.deeplabv2 import * 8 | from amodal_train import Amodalfig 9 | 10 | # Root directory of the project 11 | ROOT_DIR = os.getcwd() 12 | 13 | # Directory to save logs and trained model 14 | MODEL_DIR = os.path.join(ROOT_DIR, "logs") 15 | IMAGE_DIR = os.path.join(ROOT_DIR, "images") 16 | IMAGE_DIR = './datasets/coco_amodal/val2014/' 17 | AMODAL_MODEL_PATH = './checkpoints/COCOA.pth' 18 | 19 | 20 | class InferenceConfig(Amodalfig): 21 | # Set batch size to 1 since we'll be running inference on 22 | # one image at a time. Batch size = GPU_COUNT * IMAGES_PER_GPU 23 | GPU_COUNT = 1 24 | IMAGES_PER_GPU = 1 25 | DETECTION_MIN_CONFIDENCE = 0 26 | 27 | config = InferenceConfig() 28 | config.display() 29 | 30 | # Create model object. 31 | config.NUM_CLASSES = 1+1 32 | model = modellib.MaskRCNN(model_dir=MODEL_DIR, config=config) 33 | model.mask.conv1 = nn.Conv2d(439, 256, kernel_size=3, stride=1) 34 | model.mask.conv5 = nn.Conv2d(256, config.NUM_CLASSES, kernel_size=1, stride=1) 35 | model.classifier.linear_class = nn.Linear(1024, config.NUM_CLASSES) 36 | model.classifier.linear_bbox = nn.Linear(1024, config.NUM_CLASSES * 4) 37 | model.GLM_modual = DeepLabV2_ResNet101_MSC(182) 38 | model.current_epoch = 0 39 | 40 | # Load weights trained on MS-COCO 41 | model.load_weights(AMODAL_MODEL_PATH) 42 | 43 | if config.GPU_COUNT: 44 | model = model.cuda() 45 | 46 | class_names = ['BG', 'objects'] 47 | image_list = os.listdir(IMAGE_DIR) 48 | for i,item in enumerate(image_list): 49 | if item.endswith('.jpg'): 50 | print('image: ',item) 51 | image_path = os.path.join(IMAGE_DIR,item) 52 | image = skimage.io.imread(image_path) 53 | 54 | results = model.detect([image]) 55 | 56 | if len(results)==0: 57 | continue 58 | 59 | r = results[0] 60 | 61 | save_path = os.path.join('./results/', item+'.json') 62 | with open(save_path, 'wb') as output: 63 | pickle.dump(r, output) 64 | 65 | 66 | -------------------------------------------------------------------------------- /roialign/roi_align/roi_align.py: -------------------------------------------------------------------------------- 1 | import torch 2 | from torch import nn 3 | 4 | from .crop_and_resize import CropAndResizeFunction, CropAndResize 5 | 6 | 7 | class RoIAlign(nn.Module): 8 | 9 | def __init__(self, crop_height, crop_width, extrapolation_value=0, transform_fpcoor=True): 10 | super(RoIAlign, self).__init__() 11 | 12 | self.crop_height = crop_height 13 | self.crop_width = crop_width 14 | self.extrapolation_value = extrapolation_value 15 | self.transform_fpcoor = transform_fpcoor 16 | 17 | def forward(self, featuremap, boxes, box_ind): 18 | """ 19 | RoIAlign based on crop_and_resize. 20 | See more details on https://github.com/ppwwyyxx/tensorpack/blob/6d5ba6a970710eaaa14b89d24aace179eb8ee1af/examples/FasterRCNN/model.py#L301 21 | :param featuremap: NxCxHxW 22 | :param boxes: Mx4 float box with (x1, y1, x2, y2) **without normalization** 23 | :param box_ind: M 24 | :return: MxCxoHxoW 25 | """ 26 | x1, y1, x2, y2 = torch.split(boxes, 1, dim=1) 27 | image_height, image_width = featuremap.size()[2:4] 28 | 29 | if self.transform_fpcoor: 30 | spacing_w = (x2 - x1) / float(self.crop_width) 31 | spacing_h = (y2 - y1) / float(self.crop_height) 32 | 33 | nx0 = (x1 + spacing_w / 2 - 0.5) / float(image_width - 1) 34 | ny0 = (y1 + spacing_h / 2 - 0.5) / float(image_height - 1) 35 | nw = spacing_w * float(self.crop_width - 1) / float(image_width - 1) 36 | nh = spacing_h * float(self.crop_height - 1) / float(image_height - 1) 37 | 38 | boxes = torch.cat((ny0, nx0, ny0 + nh, nx0 + nw), 1) 39 | else: 40 | x1 = x1 / float(image_width - 1) 41 | x2 = x2 / float(image_width - 1) 42 | y1 = y1 / float(image_height - 1) 43 | y2 = y2 / float(image_height - 1) 44 | boxes = torch.cat((y1, x1, y2, x2), 1) 45 | 46 | boxes = boxes.detach().contiguous() 47 | box_ind = box_ind.detach() 48 | return CropAndResizeFunction(self.crop_height, self.crop_width, self.extrapolation_value)(featuremap, boxes, box_ind) 49 | -------------------------------------------------------------------------------- /modal/lib/utils/data/distributed.py: -------------------------------------------------------------------------------- 1 | import math 2 | import torch 3 | from .sampler import Sampler 4 | from torch.distributed import get_world_size, get_rank 5 | 6 | 7 | class DistributedSampler(Sampler): 8 | """Sampler that restricts data loading to a subset of the dataset. 9 | 10 | It is especially useful in conjunction with 11 | :class:`torch.nn.parallel.DistributedDataParallel`. In such case, each 12 | process can pass a DistributedSampler instance as a DataLoader sampler, 13 | and load a subset of the original dataset that is exclusive to it. 14 | 15 | .. note:: 16 | Dataset is assumed to be of constant size. 17 | 18 | Arguments: 19 | dataset: Dataset used for sampling. 20 | num_replicas (optional): Number of processes participating in 21 | distributed training. 22 | rank (optional): Rank of the current process within num_replicas. 23 | """ 24 | 25 | def __init__(self, dataset, num_replicas=None, rank=None): 26 | if num_replicas is None: 27 | num_replicas = get_world_size() 28 | if rank is None: 29 | rank = get_rank() 30 | self.dataset = dataset 31 | self.num_replicas = num_replicas 32 | self.rank = rank 33 | self.epoch = 0 34 | self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) 35 | self.total_size = self.num_samples * self.num_replicas 36 | 37 | def __iter__(self): 38 | # deterministically shuffle based on epoch 39 | g = torch.Generator() 40 | g.manual_seed(self.epoch) 41 | indices = list(torch.randperm(len(self.dataset), generator=g)) 42 | 43 | # add extra samples to make it evenly divisible 44 | indices += indices[:(self.total_size - len(indices))] 45 | assert len(indices) == self.total_size 46 | 47 | # subsample 48 | offset = self.num_samples * self.rank 49 | indices = indices[offset:offset + self.num_samples] 50 | assert len(indices) == self.num_samples 51 | 52 | return iter(indices) 53 | 54 | def __len__(self): 55 | return self.num_samples 56 | 57 | def set_epoch(self, epoch): 58 | self.epoch = epoch 59 | -------------------------------------------------------------------------------- /cocoapi/common/maskApi.h: -------------------------------------------------------------------------------- 1 | /************************************************************************** 2 | * Microsoft COCO Toolbox. version 2.0 3 | * Data, paper, and tutorials available at: http://mscoco.org/ 4 | * Code written by Piotr Dollar and Tsung-Yi Lin, 2015. 5 | * Licensed under the Simplified BSD License [see coco/license.txt] 6 | **************************************************************************/ 7 | #pragma once 8 | 9 | typedef unsigned int uint; 10 | typedef unsigned long siz; 11 | typedef unsigned char byte; 12 | typedef double* BB; 13 | typedef struct { siz h, w, m; uint *cnts; } RLE; 14 | 15 | /* Initialize/destroy RLE. */ 16 | void rleInit( RLE *R, siz h, siz w, siz m, uint *cnts ); 17 | void rleFree( RLE *R ); 18 | 19 | /* Initialize/destroy RLE array. */ 20 | void rlesInit( RLE **R, siz n ); 21 | void rlesFree( RLE **R, siz n ); 22 | 23 | /* Encode binary masks using RLE. */ 24 | void rleEncode( RLE *R, const byte *mask, siz h, siz w, siz n ); 25 | 26 | /* Decode binary masks encoded via RLE. */ 27 | void rleDecode( const RLE *R, byte *mask, siz n ); 28 | 29 | /* Compute union or intersection of encoded masks. */ 30 | void rleMerge( const RLE *R, RLE *M, siz n, int intersect ); 31 | 32 | /* Compute area of encoded masks. */ 33 | void rleArea( const RLE *R, siz n, uint *a ); 34 | 35 | /* Compute intersection over union between masks. */ 36 | void rleIou( RLE *dt, RLE *gt, siz m, siz n, byte *iscrowd, double *o ); 37 | 38 | /* Compute non-maximum suppression between bounding masks */ 39 | void rleNms( RLE *dt, siz n, uint *keep, double thr ); 40 | 41 | /* Compute intersection over union between bounding boxes. */ 42 | void bbIou( BB dt, BB gt, siz m, siz n, byte *iscrowd, double *o ); 43 | 44 | /* Compute non-maximum suppression between bounding boxes */ 45 | void bbNms( BB dt, siz n, uint *keep, double thr ); 46 | 47 | /* Get bounding boxes surrounding encoded masks. */ 48 | void rleToBbox( const RLE *R, BB bb, siz n ); 49 | 50 | /* Convert bounding boxes to encoded masks. */ 51 | void rleFrBbox( RLE *R, const BB bb, siz h, siz w, siz n ); 52 | 53 | /* Convert polygon to encoded mask. */ 54 | void rleFrPoly( RLE *R, const double *xy, siz k, siz h, siz w ); 55 | 56 | /* Get compressed string representation of encoded mask. */ 57 | char* rleToString( const RLE *R ); 58 | 59 | /* Convert from compressed string representation of encoded mask. */ 60 | void rleFrString( RLE *R, char *s, siz h, siz w ); 61 | -------------------------------------------------------------------------------- /roialign/roi_align/crop_and_resize.py: -------------------------------------------------------------------------------- 1 | import math 2 | import torch 3 | import torch.nn as nn 4 | import torch.nn.functional as F 5 | from torch.autograd import Function 6 | 7 | from ._ext import crop_and_resize as _backend 8 | 9 | 10 | class CropAndResizeFunction(Function): 11 | 12 | def __init__(self, crop_height, crop_width, extrapolation_value=0): 13 | self.crop_height = crop_height 14 | self.crop_width = crop_width 15 | self.extrapolation_value = extrapolation_value 16 | 17 | def forward(self, image, boxes, box_ind): 18 | crops = torch.zeros_like(image) 19 | 20 | if image.is_cuda: 21 | _backend.crop_and_resize_gpu_forward( 22 | image, boxes, box_ind, 23 | self.extrapolation_value, self.crop_height, self.crop_width, crops) 24 | else: 25 | _backend.crop_and_resize_forward( 26 | image, boxes, box_ind, 27 | self.extrapolation_value, self.crop_height, self.crop_width, crops) 28 | 29 | # save for backward 30 | self.im_size = image.size() 31 | self.save_for_backward(boxes, box_ind) 32 | 33 | return crops 34 | 35 | def backward(self, grad_outputs): 36 | boxes, box_ind = self.saved_tensors 37 | 38 | grad_outputs = grad_outputs.contiguous() 39 | grad_image = torch.zeros_like(grad_outputs).resize_(*self.im_size) 40 | 41 | if grad_outputs.is_cuda: 42 | _backend.crop_and_resize_gpu_backward( 43 | grad_outputs, boxes, box_ind, grad_image 44 | ) 45 | else: 46 | _backend.crop_and_resize_backward( 47 | grad_outputs, boxes, box_ind, grad_image 48 | ) 49 | 50 | return grad_image, None, None 51 | 52 | 53 | class CropAndResize(nn.Module): 54 | """ 55 | Crop and resize ported from tensorflow 56 | See more details on https://www.tensorflow.org/api_docs/python/tf/image/crop_and_resize 57 | """ 58 | 59 | def __init__(self, crop_height, crop_width, extrapolation_value=0): 60 | super(CropAndResize, self).__init__() 61 | 62 | self.crop_height = crop_height 63 | self.crop_width = crop_width 64 | self.extrapolation_value = extrapolation_value 65 | 66 | def forward(self, image, boxes, box_ind): 67 | return CropAndResizeFunction(self.crop_height, self.crop_width, self.extrapolation_value)(image, boxes, box_ind) 68 | -------------------------------------------------------------------------------- /nms/src/nms_cuda.c: -------------------------------------------------------------------------------- 1 | // ------------------------------------------------------------------ 2 | // Faster R-CNN 3 | // Copyright (c) 2015 Microsoft 4 | // Licensed under The MIT License [see fast-rcnn/LICENSE for details] 5 | // Written by Shaoqing Ren 6 | // ------------------------------------------------------------------ 7 | #include 8 | #include 9 | #include 10 | #include 11 | 12 | #include "cuda/nms_kernel.h" 13 | 14 | 15 | extern THCState *state; 16 | 17 | int gpu_nms(THLongTensor * keep, THLongTensor* num_out, THCudaTensor * boxes, float nms_overlap_thresh) { 18 | // boxes has to be sorted 19 | THArgCheck(THLongTensor_isContiguous(keep), 0, "boxes must be contiguous"); 20 | THArgCheck(THCudaTensor_isContiguous(state, boxes), 2, "boxes must be contiguous"); 21 | // Number of ROIs 22 | int boxes_num = THCudaTensor_size(state, boxes, 0); 23 | int boxes_dim = THCudaTensor_size(state, boxes, 1); 24 | 25 | float* boxes_flat = THCudaTensor_data(state, boxes); 26 | 27 | const int col_blocks = DIVUP(boxes_num, threadsPerBlock); 28 | THCudaLongTensor * mask = THCudaLongTensor_newWithSize2d(state, boxes_num, col_blocks); 29 | unsigned long long* mask_flat = THCudaLongTensor_data(state, mask); 30 | 31 | _nms(boxes_num, boxes_flat, mask_flat, nms_overlap_thresh); 32 | 33 | THLongTensor * mask_cpu = THLongTensor_newWithSize2d(boxes_num, col_blocks); 34 | THLongTensor_copyCuda(state, mask_cpu, mask); 35 | THCudaLongTensor_free(state, mask); 36 | 37 | unsigned long long * mask_cpu_flat = THLongTensor_data(mask_cpu); 38 | 39 | THLongTensor * remv_cpu = THLongTensor_newWithSize1d(col_blocks); 40 | unsigned long long* remv_cpu_flat = THLongTensor_data(remv_cpu); 41 | THLongTensor_fill(remv_cpu, 0); 42 | 43 | long * keep_flat = THLongTensor_data(keep); 44 | long num_to_keep = 0; 45 | 46 | int i, j; 47 | for (i = 0; i < boxes_num; i++) { 48 | int nblock = i / threadsPerBlock; 49 | int inblock = i % threadsPerBlock; 50 | 51 | if (!(remv_cpu_flat[nblock] & (1ULL << inblock))) { 52 | keep_flat[num_to_keep++] = i; 53 | unsigned long long *p = &mask_cpu_flat[0] + i * col_blocks; 54 | for (j = nblock; j < col_blocks; j++) { 55 | remv_cpu_flat[j] |= p[j]; 56 | } 57 | } 58 | } 59 | 60 | long * num_out_flat = THLongTensor_data(num_out); 61 | * num_out_flat = num_to_keep; 62 | 63 | THLongTensor_free(mask_cpu); 64 | THLongTensor_free(remv_cpu); 65 | 66 | return 1; 67 | } 68 | -------------------------------------------------------------------------------- /modal/deeplabv2.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # coding: utf-8 3 | # 4 | # Author: Kazuto Nakashima 5 | # URL: http://kazuto1011.github.io 6 | # Created: 2017-11-19 7 | 8 | from __future__ import absolute_import, print_function 9 | 10 | import torch 11 | import torch.nn as nn 12 | import torch.nn.functional as F 13 | from .msc_deeplab import MSC 14 | from .resnet_deeplab import _ConvBnReLU, _ResLayer, _Stem 15 | 16 | def DeepLabV2_ResNet101_MSC(n_classes): 17 | return MSC( 18 | base=DeepLabV2( 19 | n_classes=n_classes, n_blocks=[3, 4, 23, 3], atrous_rates=[6, 12, 18, 24] 20 | ), 21 | scales=[0.5, 0.75], 22 | ) 23 | 24 | class _ASPP(nn.Module): 25 | """ 26 | Atrous spatial pyramid pooling (ASPP) 27 | """ 28 | 29 | def __init__(self, in_ch, out_ch, rates): 30 | super(_ASPP, self).__init__() 31 | for i, rate in enumerate(rates): 32 | self.add_module( 33 | "c{}".format(i), 34 | nn.Conv2d(in_ch, out_ch, 3, 1, padding=rate, dilation=rate, bias=True), 35 | ) 36 | 37 | for m in self.children(): 38 | nn.init.normal_(m.weight, mean=0, std=0.01) 39 | nn.init.constant_(m.bias, 0) 40 | 41 | def forward(self, x): 42 | return sum([stage(x) for stage in self.children()]) 43 | 44 | 45 | class DeepLabV2(nn.Sequential): 46 | """ 47 | DeepLab v2: Dilated ResNet + ASPP 48 | Output stride is fixed at 8 49 | """ 50 | 51 | def __init__(self, n_classes, n_blocks, atrous_rates): 52 | super(DeepLabV2, self).__init__() 53 | ch = [64 * 2 ** p for p in range(6)] 54 | self.add_module("layer1", _Stem(ch[0])) 55 | self.add_module("layer2", _ResLayer(n_blocks[0], ch[0], ch[2], 1, 1)) 56 | self.add_module("layer3", _ResLayer(n_blocks[1], ch[2], ch[3], 2, 1)) 57 | self.add_module("layer4", _ResLayer(n_blocks[2], ch[3], ch[4], 1, 2)) 58 | self.add_module("layer5", _ResLayer(n_blocks[3], ch[4], ch[5], 1, 4)) 59 | self.add_module("aspp", _ASPP(ch[5], n_classes, atrous_rates)) 60 | 61 | def freeze_bn(self): 62 | for m in self.modules(): 63 | if isinstance(m, _ConvBnReLU.BATCH_NORM): 64 | m.eval() 65 | 66 | 67 | if __name__ == "__main__": 68 | model = DeepLabV2( 69 | n_classes=21, n_blocks=[3, 4, 23, 3], atrous_rates=[6, 12, 18, 24] 70 | ) 71 | model.eval() 72 | image = torch.randn(1, 3, 513, 513) 73 | 74 | print(model) 75 | print("input:", image.shape) 76 | print("output:", model(image).shape) 77 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | efactored from www.pytorch.org 2 | # Jack12 3 | ## PyTorch 4 | */**/__pycache__ 5 | 6 | env 7 | .circleci/scripts/COMMIT_MSG 8 | 9 | # IPython notebook checkpoints 10 | .ipynb_checkpoints 11 | 12 | # Editor temporaries 13 | *.swn 14 | *.swo 15 | *.swp 16 | *.swm 17 | *~ 18 | 19 | # macOS dir files 20 | .DS_Store 21 | 22 | ## General 23 | 24 | # Compiled Object files 25 | *.slo 26 | *.lo 27 | *.o 28 | *.cuo 29 | *.obj 30 | 31 | # Compiled Dynamic libraries 32 | # can not ignore roi align, tks to @Julian 33 | # *.so 34 | *.dylib 35 | *.dll 36 | 37 | # Compiled Static libraries 38 | *.lai 39 | *.la 40 | *.a 41 | *.lib 42 | 43 | # Compiled protocol buffers 44 | *.pb.h 45 | *.pb.cc 46 | *_pb2.py 47 | 48 | # Compiled python 49 | *.pyc 50 | *.pyd 51 | 52 | # Compiled MATLAB 53 | *.mex* 54 | 55 | # IPython notebook checkpoints 56 | .ipynb_checkpoints 57 | 58 | # Editor temporaries 59 | *.swn 60 | *.swo 61 | *.swp 62 | *~ 63 | 64 | # Sublime Text settings 65 | *.sublime-workspace 66 | *.sublime-project 67 | 68 | # Eclipse Project settings 69 | *.*project 70 | .settings 71 | 72 | # QtCreator files 73 | *.user 74 | 75 | # PyCharm files 76 | .idea 77 | 78 | # OSX dir files 79 | .DS_Store 80 | 81 | # GDB history 82 | .gdb_history 83 | 84 | ## Caffe2 85 | 86 | # build, distribute, and bins (+ python proto bindings) 87 | build 88 | build_host_protoc 89 | build_android 90 | build_ios 91 | /build_* 92 | .build_debug/* 93 | .build_release/* 94 | distribute/* 95 | *.testbin 96 | *.bin 97 | cmake_build 98 | .cmake_build 99 | gen 100 | .setuptools-cmake-build 101 | .pytest_cache 102 | aten/build/* 103 | 104 | # Bram 105 | plsdontbreak 106 | 107 | # Generated documentation 108 | docs/_site 109 | docs/gathered 110 | _site 111 | doxygen 112 | docs/dev 113 | 114 | # LevelDB files 115 | *.sst 116 | *.ldb 117 | LOCK 118 | CURRENT 119 | MANIFEST-* 120 | 121 | # generated version file 122 | caffe2/version.py 123 | 124 | # setup.py intermediates 125 | .eggs 126 | caffe2.egg-info 127 | 128 | # Atom/Watchman required file 129 | .watchmanconfig 130 | 131 | # Files generated by CLion 132 | cmake-build-debug 133 | 134 | # Files generated by ctags 135 | CTAGS 136 | tags 137 | TAGS 138 | 139 | # BEGIN NOT-CLEAN-FILES (setup.py handles this marker. Do not change.) 140 | # 141 | # Below files are not deleted by "setup.py clean". 142 | 143 | # Visual Studio Code files 144 | .vscode 145 | .vs 146 | 147 | 148 | # Files generated when a patch is rejected 149 | *.orig 150 | *.rej 151 | 152 | # for amodal segmentation 153 | # we choose not to upload something too big 154 | # datasets 155 | /datasets/ 156 | !/datasets/.gitkeep 157 | # pytorch model 158 | *.pth 159 | -------------------------------------------------------------------------------- /roialign/roi_align/src/crop_and_resize_gpu.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include "cuda/crop_and_resize_kernel.h" 3 | 4 | extern THCState *state; 5 | 6 | 7 | void crop_and_resize_gpu_forward( 8 | THCudaTensor * image, 9 | THCudaTensor * boxes, // [y1, x1, y2, x2] 10 | THCudaIntTensor * box_index, // range in [0, batch_size) 11 | const float extrapolation_value, 12 | const int crop_height, 13 | const int crop_width, 14 | THCudaTensor * crops 15 | ) { 16 | const int batch_size = THCudaTensor_size(state, image, 0); 17 | const int depth = THCudaTensor_size(state, image, 1); 18 | const int image_height = THCudaTensor_size(state, image, 2); 19 | const int image_width = THCudaTensor_size(state, image, 3); 20 | 21 | const int num_boxes = THCudaTensor_size(state, boxes, 0); 22 | 23 | // init output space 24 | THCudaTensor_resize4d(state, crops, num_boxes, depth, crop_height, crop_width); 25 | THCudaTensor_zero(state, crops); 26 | 27 | cudaStream_t stream = THCState_getCurrentStream(state); 28 | CropAndResizeLaucher( 29 | THCudaTensor_data(state, image), 30 | THCudaTensor_data(state, boxes), 31 | THCudaIntTensor_data(state, box_index), 32 | num_boxes, batch_size, image_height, image_width, 33 | crop_height, crop_width, depth, extrapolation_value, 34 | THCudaTensor_data(state, crops), 35 | stream 36 | ); 37 | } 38 | 39 | 40 | void crop_and_resize_gpu_backward( 41 | THCudaTensor * grads, 42 | THCudaTensor * boxes, // [y1, x1, y2, x2] 43 | THCudaIntTensor * box_index, // range in [0, batch_size) 44 | THCudaTensor * grads_image // resize to [bsize, c, hc, wc] 45 | ) { 46 | // shape 47 | const int batch_size = THCudaTensor_size(state, grads_image, 0); 48 | const int depth = THCudaTensor_size(state, grads_image, 1); 49 | const int image_height = THCudaTensor_size(state, grads_image, 2); 50 | const int image_width = THCudaTensor_size(state, grads_image, 3); 51 | 52 | const int num_boxes = THCudaTensor_size(state, grads, 0); 53 | const int crop_height = THCudaTensor_size(state, grads, 2); 54 | const int crop_width = THCudaTensor_size(state, grads, 3); 55 | 56 | // init output space 57 | THCudaTensor_zero(state, grads_image); 58 | 59 | cudaStream_t stream = THCState_getCurrentStream(state); 60 | CropAndResizeBackpropImageLaucher( 61 | THCudaTensor_data(state, grads), 62 | THCudaTensor_data(state, boxes), 63 | THCudaIntTensor_data(state, box_index), 64 | num_boxes, batch_size, image_height, image_width, 65 | crop_height, crop_width, depth, 66 | THCudaTensor_data(state, grads_image), 67 | stream 68 | ); 69 | } -------------------------------------------------------------------------------- /nms/src/nms.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int cpu_nms(THLongTensor * keep_out, THLongTensor * num_out, THFloatTensor * boxes, THLongTensor * order, THFloatTensor * areas, float nms_overlap_thresh) { 5 | // boxes has to be sorted 6 | THArgCheck(THLongTensor_isContiguous(keep_out), 0, "keep_out must be contiguous"); 7 | THArgCheck(THLongTensor_isContiguous(boxes), 2, "boxes must be contiguous"); 8 | THArgCheck(THLongTensor_isContiguous(order), 3, "order must be contiguous"); 9 | THArgCheck(THLongTensor_isContiguous(areas), 4, "areas must be contiguous"); 10 | // Number of ROIs 11 | long boxes_num = THFloatTensor_size(boxes, 0); 12 | long boxes_dim = THFloatTensor_size(boxes, 1); 13 | 14 | long * keep_out_flat = THLongTensor_data(keep_out); 15 | float * boxes_flat = THFloatTensor_data(boxes); 16 | long * order_flat = THLongTensor_data(order); 17 | float * areas_flat = THFloatTensor_data(areas); 18 | 19 | THByteTensor* suppressed = THByteTensor_newWithSize1d(boxes_num); 20 | THByteTensor_fill(suppressed, 0); 21 | unsigned char * suppressed_flat = THByteTensor_data(suppressed); 22 | 23 | // nominal indices 24 | int i, j; 25 | // sorted indices 26 | int _i, _j; 27 | // temp variables for box i's (the box currently under consideration) 28 | float ix1, iy1, ix2, iy2, iarea; 29 | // variables for computing overlap with box j (lower scoring box) 30 | float xx1, yy1, xx2, yy2; 31 | float w, h; 32 | float inter, ovr; 33 | 34 | long num_to_keep = 0; 35 | for (_i=0; _i < boxes_num; ++_i) { 36 | i = order_flat[_i]; 37 | if (suppressed_flat[i] == 1) { 38 | continue; 39 | } 40 | keep_out_flat[num_to_keep++] = i; 41 | ix1 = boxes_flat[i * boxes_dim]; 42 | iy1 = boxes_flat[i * boxes_dim + 1]; 43 | ix2 = boxes_flat[i * boxes_dim + 2]; 44 | iy2 = boxes_flat[i * boxes_dim + 3]; 45 | iarea = areas_flat[i]; 46 | for (_j = _i + 1; _j < boxes_num; ++_j) { 47 | j = order_flat[_j]; 48 | if (suppressed_flat[j] == 1) { 49 | continue; 50 | } 51 | xx1 = fmaxf(ix1, boxes_flat[j * boxes_dim]); 52 | yy1 = fmaxf(iy1, boxes_flat[j * boxes_dim + 1]); 53 | xx2 = fminf(ix2, boxes_flat[j * boxes_dim + 2]); 54 | yy2 = fminf(iy2, boxes_flat[j * boxes_dim + 3]); 55 | w = fmaxf(0.0, xx2 - xx1 + 1); 56 | h = fmaxf(0.0, yy2 - yy1 + 1); 57 | inter = w * h; 58 | ovr = inter / (iarea + areas_flat[j] - inter); 59 | if (ovr >= nms_overlap_thresh) { 60 | suppressed_flat[j] = 1; 61 | } 62 | } 63 | } 64 | 65 | long *num_out_flat = THLongTensor_data(num_out); 66 | *num_out_flat = num_to_keep; 67 | THByteTensor_free(suppressed); 68 | return 1; 69 | } -------------------------------------------------------------------------------- /nms/src/cuda/nms_kernel.cu: -------------------------------------------------------------------------------- 1 | // ------------------------------------------------------------------ 2 | // Faster R-CNN 3 | // Copyright (c) 2015 Microsoft 4 | // Licensed under The MIT License [see fast-rcnn/LICENSE for details] 5 | // Written by Shaoqing Ren 6 | // ------------------------------------------------------------------ 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | 11 | #include 12 | #include 13 | #include 14 | #include "nms_kernel.h" 15 | 16 | __device__ inline float devIoU(float const * const a, float const * const b) { 17 | float left = fmaxf(a[0], b[0]), right = fminf(a[2], b[2]); 18 | float top = fmaxf(a[1], b[1]), bottom = fminf(a[3], b[3]); 19 | float width = fmaxf(right - left + 1, 0.f), height = fmaxf(bottom - top + 1, 0.f); 20 | float interS = width * height; 21 | float Sa = (a[2] - a[0] + 1) * (a[3] - a[1] + 1); 22 | float Sb = (b[2] - b[0] + 1) * (b[3] - b[1] + 1); 23 | return interS / (Sa + Sb - interS); 24 | } 25 | 26 | __global__ void nms_kernel(const int n_boxes, const float nms_overlap_thresh, 27 | const float *dev_boxes, unsigned long long *dev_mask) { 28 | const int row_start = blockIdx.y; 29 | const int col_start = blockIdx.x; 30 | 31 | // if (row_start > col_start) return; 32 | 33 | const int row_size = 34 | fminf(n_boxes - row_start * threadsPerBlock, threadsPerBlock); 35 | const int col_size = 36 | fminf(n_boxes - col_start * threadsPerBlock, threadsPerBlock); 37 | 38 | __shared__ float block_boxes[threadsPerBlock * 5]; 39 | if (threadIdx.x < col_size) { 40 | block_boxes[threadIdx.x * 5 + 0] = 41 | dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 0]; 42 | block_boxes[threadIdx.x * 5 + 1] = 43 | dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 1]; 44 | block_boxes[threadIdx.x * 5 + 2] = 45 | dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 2]; 46 | block_boxes[threadIdx.x * 5 + 3] = 47 | dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 3]; 48 | block_boxes[threadIdx.x * 5 + 4] = 49 | dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 4]; 50 | } 51 | __syncthreads(); 52 | 53 | if (threadIdx.x < row_size) { 54 | const int cur_box_idx = threadsPerBlock * row_start + threadIdx.x; 55 | const float *cur_box = dev_boxes + cur_box_idx * 5; 56 | int i = 0; 57 | unsigned long long t = 0; 58 | int start = 0; 59 | if (row_start == col_start) { 60 | start = threadIdx.x + 1; 61 | } 62 | for (i = start; i < col_size; i++) { 63 | if (devIoU(cur_box, block_boxes + i * 5) > nms_overlap_thresh) { 64 | t |= 1ULL << i; 65 | } 66 | } 67 | const int col_blocks = DIVUP(n_boxes, threadsPerBlock); 68 | dev_mask[cur_box_idx * col_blocks + col_start] = t; 69 | } 70 | } 71 | 72 | 73 | void _nms(int boxes_num, float * boxes_dev, 74 | unsigned long long * mask_dev, float nms_overlap_thresh) { 75 | 76 | dim3 blocks(DIVUP(boxes_num, threadsPerBlock), 77 | DIVUP(boxes_num, threadsPerBlock)); 78 | dim3 threads(threadsPerBlock); 79 | nms_kernel<<>>(boxes_num, 80 | nms_overlap_thresh, 81 | boxes_dev, 82 | mask_dev); 83 | } 84 | 85 | #ifdef __cplusplus 86 | } 87 | #endif 88 | -------------------------------------------------------------------------------- /modal/lib/nn/modules/replicate.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # File : replicate.py 3 | # Author : Jiayuan Mao 4 | # Email : maojiayuan@gmail.com 5 | # Date : 27/01/2018 6 | # 7 | # This file is part of Synchronized-BatchNorm-PyTorch. 8 | # https://github.com/vacancy/Synchronized-BatchNorm-PyTorch 9 | # Distributed under MIT License. 10 | 11 | import functools 12 | 13 | from torch.nn.parallel.data_parallel import DataParallel 14 | 15 | __all__ = [ 16 | 'CallbackContext', 17 | 'execute_replication_callbacks', 18 | 'DataParallelWithCallback', 19 | 'patch_replication_callback' 20 | ] 21 | 22 | 23 | class CallbackContext(object): 24 | pass 25 | 26 | 27 | def execute_replication_callbacks(modules): 28 | """ 29 | Execute an replication callback `__data_parallel_replicate__` on each module created by original replication. 30 | 31 | The callback will be invoked with arguments `__data_parallel_replicate__(ctx, copy_id)` 32 | 33 | Note that, as all modules are isomorphism, we assign each sub-module with a context 34 | (shared among multiple copies of this module on different devices). 35 | Through this context, different copies can share some information. 36 | 37 | We guarantee that the callback on the master copy (the first copy) will be called ahead of calling the callback 38 | of any slave copies. 39 | """ 40 | master_copy = modules[0] 41 | nr_modules = len(list(master_copy.modules())) 42 | ctxs = [CallbackContext() for _ in range(nr_modules)] 43 | 44 | for i, module in enumerate(modules): 45 | for j, m in enumerate(module.modules()): 46 | if hasattr(m, '__data_parallel_replicate__'): 47 | m.__data_parallel_replicate__(ctxs[j], i) 48 | 49 | 50 | class DataParallelWithCallback(DataParallel): 51 | """ 52 | Data Parallel with a replication callback. 53 | 54 | An replication callback `__data_parallel_replicate__` of each module will be invoked after being created by 55 | original `replicate` function. 56 | The callback will be invoked with arguments `__data_parallel_replicate__(ctx, copy_id)` 57 | 58 | Examples: 59 | > sync_bn = SynchronizedBatchNorm1d(10, eps=1e-5, affine=False) 60 | > sync_bn = DataParallelWithCallback(sync_bn, device_ids=[0, 1]) 61 | # sync_bn.__data_parallel_replicate__ will be invoked. 62 | """ 63 | 64 | def replicate(self, module, device_ids): 65 | modules = super(DataParallelWithCallback, self).replicate(module, device_ids) 66 | execute_replication_callbacks(modules) 67 | return modules 68 | 69 | 70 | def patch_replication_callback(data_parallel): 71 | """ 72 | Monkey-patch an existing `DataParallel` object. Add the replication callback. 73 | Useful when you have customized `DataParallel` implementation. 74 | 75 | Examples: 76 | > sync_bn = SynchronizedBatchNorm1d(10, eps=1e-5, affine=False) 77 | > sync_bn = DataParallel(sync_bn, device_ids=[0, 1]) 78 | > patch_replication_callback(sync_bn) 79 | # this is equivalent to 80 | > sync_bn = SynchronizedBatchNorm1d(10, eps=1e-5, affine=False) 81 | > sync_bn = DataParallelWithCallback(sync_bn, device_ids=[0, 1]) 82 | """ 83 | 84 | assert isinstance(data_parallel, DataParallel) 85 | 86 | old_replicate = data_parallel.replicate 87 | 88 | @functools.wraps(old_replicate) 89 | def new_replicate(module, device_ids): 90 | modules = old_replicate(module, device_ids) 91 | execute_replication_callbacks(modules) 92 | return modules 93 | 94 | data_parallel.replicate = new_replicate 95 | -------------------------------------------------------------------------------- /modal/lib/nn/parallel/data_parallel.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf8 -*- 2 | 3 | import torch.cuda as cuda 4 | import torch.nn as nn 5 | import torch 6 | import collections 7 | from torch.nn.parallel._functions import Gather 8 | 9 | 10 | __all__ = ['UserScatteredDataParallel', 'user_scattered_collate', 'async_copy_to'] 11 | 12 | 13 | def async_copy_to(obj, dev, main_stream=None): 14 | if torch.is_tensor(obj): 15 | v = obj.cuda(dev, non_blocking=True) 16 | if main_stream is not None: 17 | v.data.record_stream(main_stream) 18 | return v 19 | elif isinstance(obj, collections.Mapping): 20 | return {k: async_copy_to(o, dev, main_stream) for k, o in obj.items()} 21 | elif isinstance(obj, collections.Sequence): 22 | return [async_copy_to(o, dev, main_stream) for o in obj] 23 | else: 24 | return obj 25 | 26 | 27 | def dict_gather(outputs, target_device, dim=0): 28 | """ 29 | Gathers variables from different GPUs on a specified device 30 | (-1 means the CPU), with dictionary support. 31 | """ 32 | def gather_map(outputs): 33 | out = outputs[0] 34 | if torch.is_tensor(out): 35 | # MJY(20180330) HACK:: force nr_dims > 0 36 | if out.dim() == 0: 37 | outputs = [o.unsqueeze(0) for o in outputs] 38 | return Gather.apply(target_device, dim, *outputs) 39 | elif out is None: 40 | return None 41 | elif isinstance(out, collections.Mapping): 42 | return {k: gather_map([o[k] for o in outputs]) for k in out} 43 | elif isinstance(out, collections.Sequence): 44 | return type(out)(map(gather_map, zip(*outputs))) 45 | return gather_map(outputs) 46 | 47 | 48 | class DictGatherDataParallel(nn.DataParallel): 49 | def gather(self, outputs, output_device): 50 | return dict_gather(outputs, output_device, dim=self.dim) 51 | 52 | 53 | class UserScatteredDataParallel(DictGatherDataParallel): 54 | def scatter(self, inputs, kwargs, device_ids): 55 | assert len(inputs) == 1 56 | inputs = inputs[0] 57 | inputs = _async_copy_stream(inputs, device_ids) 58 | inputs = [[i] for i in inputs] 59 | assert len(kwargs) == 0 60 | kwargs = [{} for _ in range(len(inputs))] 61 | 62 | return inputs, kwargs 63 | 64 | 65 | def user_scattered_collate(batch): 66 | return batch 67 | 68 | 69 | def _async_copy(inputs, device_ids): 70 | nr_devs = len(device_ids) 71 | assert type(inputs) in (tuple, list) 72 | assert len(inputs) == nr_devs 73 | 74 | outputs = [] 75 | for i, dev in zip(inputs, device_ids): 76 | with cuda.device(dev): 77 | outputs.append(async_copy_to(i, dev)) 78 | 79 | return tuple(outputs) 80 | 81 | 82 | def _async_copy_stream(inputs, device_ids): 83 | nr_devs = len(device_ids) 84 | assert type(inputs) in (tuple, list) 85 | assert len(inputs) == nr_devs 86 | 87 | outputs = [] 88 | streams = [_get_stream(d) for d in device_ids] 89 | for i, dev, stream in zip(inputs, device_ids, streams): 90 | with cuda.device(dev): 91 | main_stream = cuda.current_stream() 92 | with cuda.stream(stream): 93 | outputs.append(async_copy_to(i, dev, main_stream=main_stream)) 94 | main_stream.wait_stream(stream) 95 | 96 | return outputs 97 | 98 | 99 | """Adapted from: torch/nn/parallel/_functions.py""" 100 | # background streams used for copying 101 | _streams = None 102 | 103 | 104 | def _get_stream(device): 105 | """Gets a background stream for copying between CPU and GPU""" 106 | global _streams 107 | if device == -1: 108 | return None 109 | if _streams is None: 110 | _streams = [None] * cuda.device_count() 111 | if _streams[device] is None: _streams[device] = cuda.Stream(device) 112 | return _streams[device] 113 | -------------------------------------------------------------------------------- /modal/lib/utils/data/dataset.py: -------------------------------------------------------------------------------- 1 | import bisect 2 | import warnings 3 | 4 | from torch._utils import _accumulate 5 | from torch import randperm 6 | 7 | 8 | class Dataset(object): 9 | """An abstract class representing a Dataset. 10 | 11 | All other datasets should subclass it. All subclasses should override 12 | ``__len__``, that provides the size of the dataset, and ``__getitem__``, 13 | supporting integer indexing in range from 0 to len(self) exclusive. 14 | """ 15 | 16 | def __getitem__(self, index): 17 | raise NotImplementedError 18 | 19 | def __len__(self): 20 | raise NotImplementedError 21 | 22 | def __add__(self, other): 23 | return ConcatDataset([self, other]) 24 | 25 | 26 | class TensorDataset(Dataset): 27 | """Dataset wrapping data and target tensors. 28 | 29 | Each sample will be retrieved by indexing both tensors along the first 30 | dimension. 31 | 32 | Arguments: 33 | data_tensor (Tensor): contains sample data. 34 | target_tensor (Tensor): contains sample targets (labels). 35 | """ 36 | 37 | def __init__(self, data_tensor, target_tensor): 38 | assert data_tensor.size(0) == target_tensor.size(0) 39 | self.data_tensor = data_tensor 40 | self.target_tensor = target_tensor 41 | 42 | def __getitem__(self, index): 43 | return self.data_tensor[index], self.target_tensor[index] 44 | 45 | def __len__(self): 46 | return self.data_tensor.size(0) 47 | 48 | 49 | class ConcatDataset(Dataset): 50 | """ 51 | Dataset to concatenate multiple datasets. 52 | Purpose: useful to assemble different existing datasets, possibly 53 | large-scale datasets as the concatenation operation is done in an 54 | on-the-fly manner. 55 | 56 | Arguments: 57 | datasets (iterable): List of datasets to be concatenated 58 | """ 59 | 60 | @staticmethod 61 | def cumsum(sequence): 62 | r, s = [], 0 63 | for e in sequence: 64 | l = len(e) 65 | r.append(l + s) 66 | s += l 67 | return r 68 | 69 | def __init__(self, datasets): 70 | super(ConcatDataset, self).__init__() 71 | assert len(datasets) > 0, 'datasets should not be an empty iterable' 72 | self.datasets = list(datasets) 73 | self.cumulative_sizes = self.cumsum(self.datasets) 74 | 75 | def __len__(self): 76 | return self.cumulative_sizes[-1] 77 | 78 | def __getitem__(self, idx): 79 | dataset_idx = bisect.bisect_right(self.cumulative_sizes, idx) 80 | if dataset_idx == 0: 81 | sample_idx = idx 82 | else: 83 | sample_idx = idx - self.cumulative_sizes[dataset_idx - 1] 84 | return self.datasets[dataset_idx][sample_idx] 85 | 86 | @property 87 | def cummulative_sizes(self): 88 | warnings.warn("cummulative_sizes attribute is renamed to " 89 | "cumulative_sizes", DeprecationWarning, stacklevel=2) 90 | return self.cumulative_sizes 91 | 92 | 93 | class Subset(Dataset): 94 | def __init__(self, dataset, indices): 95 | self.dataset = dataset 96 | self.indices = indices 97 | 98 | def __getitem__(self, idx): 99 | return self.dataset[self.indices[idx]] 100 | 101 | def __len__(self): 102 | return len(self.indices) 103 | 104 | 105 | def random_split(dataset, lengths): 106 | """ 107 | Randomly split a dataset into non-overlapping new datasets of given lengths 108 | ds 109 | 110 | Arguments: 111 | dataset (Dataset): Dataset to be split 112 | lengths (iterable): lengths of splits to be produced 113 | """ 114 | if sum(lengths) != len(dataset): 115 | raise ValueError("Sum of input lengths does not equal the length of the input dataset!") 116 | 117 | indices = randperm(sum(lengths)) 118 | return [Subset(dataset, indices[offset - length:offset]) for offset, length in zip(_accumulate(lengths), lengths)] 119 | -------------------------------------------------------------------------------- /modal/lib/nn/modules/tests/test_sync_batchnorm.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # File : test_sync_batchnorm.py 3 | # Author : Jiayuan Mao 4 | # Email : maojiayuan@gmail.com 5 | # Date : 27/01/2018 6 | # 7 | # This file is part of Synchronized-BatchNorm-PyTorch. 8 | 9 | import unittest 10 | 11 | import torch 12 | import torch.nn as nn 13 | from torch.autograd import Variable 14 | 15 | from sync_batchnorm import SynchronizedBatchNorm1d, SynchronizedBatchNorm2d, DataParallelWithCallback 16 | from sync_batchnorm.unittest import TorchTestCase 17 | 18 | 19 | def handy_var(a, unbias=True): 20 | n = a.size(0) 21 | asum = a.sum(dim=0) 22 | as_sum = (a ** 2).sum(dim=0) # a square sum 23 | sumvar = as_sum - asum * asum / n 24 | if unbias: 25 | return sumvar / (n - 1) 26 | else: 27 | return sumvar / n 28 | 29 | 30 | def _find_bn(module): 31 | for m in module.modules(): 32 | if isinstance(m, (nn.BatchNorm1d, nn.BatchNorm2d, SynchronizedBatchNorm1d, SynchronizedBatchNorm2d)): 33 | return m 34 | 35 | 36 | class SyncTestCase(TorchTestCase): 37 | def _syncParameters(self, bn1, bn2): 38 | bn1.reset_parameters() 39 | bn2.reset_parameters() 40 | if bn1.affine and bn2.affine: 41 | bn2.weight.data.copy_(bn1.weight.data) 42 | bn2.bias.data.copy_(bn1.bias.data) 43 | 44 | def _checkBatchNormResult(self, bn1, bn2, input, is_train, cuda=False): 45 | """Check the forward and backward for the customized batch normalization.""" 46 | bn1.train(mode=is_train) 47 | bn2.train(mode=is_train) 48 | 49 | if cuda: 50 | input = input.cuda() 51 | 52 | self._syncParameters(_find_bn(bn1), _find_bn(bn2)) 53 | 54 | input1 = Variable(input, requires_grad=True) 55 | output1 = bn1(input1) 56 | output1.sum().backward() 57 | input2 = Variable(input, requires_grad=True) 58 | output2 = bn2(input2) 59 | output2.sum().backward() 60 | 61 | self.assertTensorClose(input1.data, input2.data) 62 | self.assertTensorClose(output1.data, output2.data) 63 | self.assertTensorClose(input1.grad, input2.grad) 64 | self.assertTensorClose(_find_bn(bn1).running_mean, _find_bn(bn2).running_mean) 65 | self.assertTensorClose(_find_bn(bn1).running_var, _find_bn(bn2).running_var) 66 | 67 | def testSyncBatchNormNormalTrain(self): 68 | bn = nn.BatchNorm1d(10) 69 | sync_bn = SynchronizedBatchNorm1d(10) 70 | 71 | self._checkBatchNormResult(bn, sync_bn, torch.rand(16, 10), True) 72 | 73 | def testSyncBatchNormNormalEval(self): 74 | bn = nn.BatchNorm1d(10) 75 | sync_bn = SynchronizedBatchNorm1d(10) 76 | 77 | self._checkBatchNormResult(bn, sync_bn, torch.rand(16, 10), False) 78 | 79 | def testSyncBatchNormSyncTrain(self): 80 | bn = nn.BatchNorm1d(10, eps=1e-5, affine=False) 81 | sync_bn = SynchronizedBatchNorm1d(10, eps=1e-5, affine=False) 82 | sync_bn = DataParallelWithCallback(sync_bn, device_ids=[0, 1]) 83 | 84 | bn.cuda() 85 | sync_bn.cuda() 86 | 87 | self._checkBatchNormResult(bn, sync_bn, torch.rand(16, 10), True, cuda=True) 88 | 89 | def testSyncBatchNormSyncEval(self): 90 | bn = nn.BatchNorm1d(10, eps=1e-5, affine=False) 91 | sync_bn = SynchronizedBatchNorm1d(10, eps=1e-5, affine=False) 92 | sync_bn = DataParallelWithCallback(sync_bn, device_ids=[0, 1]) 93 | 94 | bn.cuda() 95 | sync_bn.cuda() 96 | 97 | self._checkBatchNormResult(bn, sync_bn, torch.rand(16, 10), False, cuda=True) 98 | 99 | def testSyncBatchNorm2DSyncTrain(self): 100 | bn = nn.BatchNorm2d(10) 101 | sync_bn = SynchronizedBatchNorm2d(10) 102 | sync_bn = DataParallelWithCallback(sync_bn, device_ids=[0, 1]) 103 | 104 | bn.cuda() 105 | sync_bn.cuda() 106 | 107 | self._checkBatchNormResult(bn, sync_bn, torch.rand(16, 10, 16, 16), True, cuda=True) 108 | 109 | 110 | if __name__ == '__main__': 111 | unittest.main() 112 | -------------------------------------------------------------------------------- /cocoapi/common/gason.h: -------------------------------------------------------------------------------- 1 | // https://github.com/vivkin/gason - pulled January 10, 2016 2 | #pragma once 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | enum JsonTag { 9 | JSON_NUMBER = 0, 10 | JSON_STRING, 11 | JSON_ARRAY, 12 | JSON_OBJECT, 13 | JSON_TRUE, 14 | JSON_FALSE, 15 | JSON_NULL = 0xF 16 | }; 17 | 18 | struct JsonNode; 19 | 20 | #define JSON_VALUE_PAYLOAD_MASK 0x00007FFFFFFFFFFFULL 21 | #define JSON_VALUE_NAN_MASK 0x7FF8000000000000ULL 22 | #define JSON_VALUE_TAG_MASK 0xF 23 | #define JSON_VALUE_TAG_SHIFT 47 24 | 25 | union JsonValue { 26 | uint64_t ival; 27 | double fval; 28 | 29 | JsonValue(double x) 30 | : fval(x) { 31 | } 32 | JsonValue(JsonTag tag = JSON_NULL, void *payload = nullptr) { 33 | assert((uintptr_t)payload <= JSON_VALUE_PAYLOAD_MASK); 34 | ival = JSON_VALUE_NAN_MASK | ((uint64_t)tag << JSON_VALUE_TAG_SHIFT) | (uintptr_t)payload; 35 | } 36 | bool isDouble() const { 37 | return (int64_t)ival <= (int64_t)JSON_VALUE_NAN_MASK; 38 | } 39 | JsonTag getTag() const { 40 | return isDouble() ? JSON_NUMBER : JsonTag((ival >> JSON_VALUE_TAG_SHIFT) & JSON_VALUE_TAG_MASK); 41 | } 42 | uint64_t getPayload() const { 43 | assert(!isDouble()); 44 | return ival & JSON_VALUE_PAYLOAD_MASK; 45 | } 46 | double toNumber() const { 47 | assert(getTag() == JSON_NUMBER); 48 | return fval; 49 | } 50 | char *toString() const { 51 | assert(getTag() == JSON_STRING); 52 | return (char *)getPayload(); 53 | } 54 | JsonNode *toNode() const { 55 | assert(getTag() == JSON_ARRAY || getTag() == JSON_OBJECT); 56 | return (JsonNode *)getPayload(); 57 | } 58 | }; 59 | 60 | struct JsonNode { 61 | JsonValue value; 62 | JsonNode *next; 63 | char *key; 64 | }; 65 | 66 | struct JsonIterator { 67 | JsonNode *p; 68 | 69 | void operator++() { 70 | p = p->next; 71 | } 72 | bool operator!=(const JsonIterator &x) const { 73 | return p != x.p; 74 | } 75 | JsonNode *operator*() const { 76 | return p; 77 | } 78 | JsonNode *operator->() const { 79 | return p; 80 | } 81 | }; 82 | 83 | inline JsonIterator begin(JsonValue o) { 84 | return JsonIterator{o.toNode()}; 85 | } 86 | inline JsonIterator end(JsonValue) { 87 | return JsonIterator{nullptr}; 88 | } 89 | 90 | #define JSON_ERRNO_MAP(XX) \ 91 | XX(OK, "ok") \ 92 | XX(BAD_NUMBER, "bad number") \ 93 | XX(BAD_STRING, "bad string") \ 94 | XX(BAD_IDENTIFIER, "bad identifier") \ 95 | XX(STACK_OVERFLOW, "stack overflow") \ 96 | XX(STACK_UNDERFLOW, "stack underflow") \ 97 | XX(MISMATCH_BRACKET, "mismatch bracket") \ 98 | XX(UNEXPECTED_CHARACTER, "unexpected character") \ 99 | XX(UNQUOTED_KEY, "unquoted key") \ 100 | XX(BREAKING_BAD, "breaking bad") \ 101 | XX(ALLOCATION_FAILURE, "allocation failure") 102 | 103 | enum JsonErrno { 104 | #define XX(no, str) JSON_##no, 105 | JSON_ERRNO_MAP(XX) 106 | #undef XX 107 | }; 108 | 109 | const char *jsonStrError(int err); 110 | 111 | class JsonAllocator { 112 | struct Zone { 113 | Zone *next; 114 | size_t used; 115 | } *head = nullptr; 116 | 117 | public: 118 | JsonAllocator() = default; 119 | JsonAllocator(const JsonAllocator &) = delete; 120 | JsonAllocator &operator=(const JsonAllocator &) = delete; 121 | JsonAllocator(JsonAllocator &&x) : head(x.head) { 122 | x.head = nullptr; 123 | } 124 | JsonAllocator &operator=(JsonAllocator &&x) { 125 | head = x.head; 126 | x.head = nullptr; 127 | return *this; 128 | } 129 | ~JsonAllocator() { 130 | deallocate(); 131 | } 132 | void *allocate(size_t size); 133 | void deallocate(); 134 | }; 135 | 136 | int jsonParse(char *str, char **endptr, JsonValue *value, JsonAllocator &allocator); 137 | -------------------------------------------------------------------------------- /evaluate/evaluate.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | from evaluate.bbox import bbox_overlaps 3 | 4 | def evaluate_recall(roidb, thresholds=None, 5 | area='all', 6 | limit=None): 7 | """Evaluate detection proposal recall metrics. 8 | Returns: 9 | results: dictionary of results with keys 10 | 'ar': average recall 11 | 'recalls': vector recalls at each IoU overlap threshold 12 | 'thresholds': vector of IoU overlap thresholds 13 | 'gt_overlaps': vector of all ground-truth overlaps 14 | """ 15 | # Record max overlap value for each gt box 16 | # Return vector of overlap values 17 | areas = { 18 | 'all': 0, 19 | 'small': 1, 20 | 'medium': 2, 21 | 'large': 3, 22 | '96-128': 4, 23 | '128-256': 5, 24 | '256-512': 6, 25 | '512-inf': 7 26 | } 27 | area_ranges = [ 28 | [0 ** 2, 1e5 ** 2], # all 29 | [0 ** 2, 32 ** 2], # small 30 | [32 ** 2, 96 ** 2], # medium 31 | [96 ** 2, 1e5 ** 2], # large 32 | [96 ** 2, 128 ** 2], # 96-128 33 | [128 ** 2, 256 ** 2], # 128-256 34 | [256 ** 2, 512 ** 2], # 256-512 35 | [512 ** 2, 1e5 ** 2], # 512-inf 36 | ] 37 | assert area in areas, 'unknown area range: {}'.format(area) 38 | area_range = area_ranges[areas[area]] 39 | gt_overlaps = np.zeros(0) 40 | num_pos = 0 41 | for i in range(len(roidb)): 42 | # Checking for max_overlaps == 1 avoids including crowd annotations 43 | # (...pretty hacking :/) 44 | # max_gt_overlaps = roidb[i]['gt_overlaps'].toarray().max(axis=1) 45 | # gt_inds = np.where((roidb[i]['gt_classes'] > 0) & 46 | # (max_gt_overlaps == 1))[0] 47 | 48 | gt_inds = np.where(roidb[i]['gt_classes'].view(-1) > 0) 49 | gt_boxes = roidb[i]['boxes'][:,gt_inds].squeeze().view((-1,4)) 50 | gt_areas = roidb[i]['seg_areas'][:,0,gt_inds].squeeze() 51 | # valid_gt_inds = np.where((gt_areas >= area_range[0]) & 52 | # (gt_areas <= area_range[1]))[0] 53 | # gt_boxes = gt_boxes[valid_gt_inds, :] 54 | num_pos += len(gt_inds[0]) 55 | 56 | 57 | boxes = roidb[i]['mrcnn_bbox'] 58 | 59 | if boxes.shape[0] == 0: 60 | continue 61 | if limit is not None and boxes.shape[0] > limit: 62 | boxes = boxes[:limit, :] 63 | 64 | 65 | overlaps = bbox_overlaps(boxes, gt_boxes) 66 | 67 | _gt_overlaps = np.zeros((gt_boxes.shape[0])) 68 | for j in range(gt_boxes.shape[0]): 69 | # find which proposal box maximally covers each gt box 70 | # argmax_overlaps = overlaps.argmax(dim=0) 71 | # and get the iou amount of coverage for each gt box 72 | max_overlaps,argmax_overlaps = overlaps.max(dim=0) 73 | # find which gt box is 'best' covered (i.e. 'best' = most iou) 74 | gt_ind = max_overlaps.argmax() 75 | gt_ovr = max_overlaps.max() 76 | assert (gt_ovr >= 0) 77 | # find the proposal box that covers the best covered gt box 78 | box_ind = argmax_overlaps[gt_ind] 79 | # record the iou coverage of this gt box 80 | _gt_overlaps[j] = overlaps[box_ind, gt_ind] 81 | assert (_gt_overlaps[j] == gt_ovr) 82 | # mark the proposal box and the gt box as used 83 | overlaps[box_ind, :] = -1 84 | overlaps[:, gt_ind] = -1 85 | # append recorded iou coverage level 86 | 87 | gt_overlaps = np.hstack((gt_overlaps, _gt_overlaps)) 88 | 89 | gt_overlaps = np.sort(gt_overlaps) 90 | if thresholds is None: 91 | step = 0.05 92 | thresholds = np.arange(0.5, 0.95 + 1e-5, step) 93 | recalls = np.zeros_like(thresholds) 94 | # compute recall for each iou threshold 95 | for i, t in enumerate(thresholds): 96 | recalls[i] = (gt_overlaps >= t).sum() / float(num_pos) 97 | # ar = 2 * np.trapz(recalls, thresholds) 98 | ar = recalls.mean() 99 | return { 100 | 'ar': ar, 101 | 'recalls': recalls, 102 | 'thresholds': thresholds, 103 | 'gt_overlaps': gt_overlaps} -------------------------------------------------------------------------------- /modal/lib/utils/data/sampler.py: -------------------------------------------------------------------------------- 1 | import torch 2 | 3 | 4 | class Sampler(object): 5 | """Base class for all Samplers. 6 | 7 | Every Sampler subclass has to provide an __iter__ method, providing a way 8 | to iterate over indices of dataset elements, and a __len__ method that 9 | returns the length of the returned iterators. 10 | """ 11 | 12 | def __init__(self, data_source): 13 | pass 14 | 15 | def __iter__(self): 16 | raise NotImplementedError 17 | 18 | def __len__(self): 19 | raise NotImplementedError 20 | 21 | 22 | class SequentialSampler(Sampler): 23 | """Samples elements sequentially, always in the same order. 24 | 25 | Arguments: 26 | data_source (Dataset): dataset to sample from 27 | """ 28 | 29 | def __init__(self, data_source): 30 | self.data_source = data_source 31 | 32 | def __iter__(self): 33 | return iter(range(len(self.data_source))) 34 | 35 | def __len__(self): 36 | return len(self.data_source) 37 | 38 | 39 | class RandomSampler(Sampler): 40 | """Samples elements randomly, without replacement. 41 | 42 | Arguments: 43 | data_source (Dataset): dataset to sample from 44 | """ 45 | 46 | def __init__(self, data_source): 47 | self.data_source = data_source 48 | 49 | def __iter__(self): 50 | return iter(torch.randperm(len(self.data_source)).long()) 51 | 52 | def __len__(self): 53 | return len(self.data_source) 54 | 55 | 56 | class SubsetRandomSampler(Sampler): 57 | """Samples elements randomly from a given list of indices, without replacement. 58 | 59 | Arguments: 60 | indices (list): a list of indices 61 | """ 62 | 63 | def __init__(self, indices): 64 | self.indices = indices 65 | 66 | def __iter__(self): 67 | return (self.indices[i] for i in torch.randperm(len(self.indices))) 68 | 69 | def __len__(self): 70 | return len(self.indices) 71 | 72 | 73 | class WeightedRandomSampler(Sampler): 74 | """Samples elements from [0,..,len(weights)-1] with given probabilities (weights). 75 | 76 | Arguments: 77 | weights (list) : a list of weights, not necessary summing up to one 78 | num_samples (int): number of samples to draw 79 | replacement (bool): if ``True``, samples are drawn with replacement. 80 | If not, they are drawn without replacement, which means that when a 81 | sample index is drawn for a row, it cannot be drawn again for that row. 82 | """ 83 | 84 | def __init__(self, weights, num_samples, replacement=True): 85 | self.weights = torch.DoubleTensor(weights) 86 | self.num_samples = num_samples 87 | self.replacement = replacement 88 | 89 | def __iter__(self): 90 | return iter(torch.multinomial(self.weights, self.num_samples, self.replacement)) 91 | 92 | def __len__(self): 93 | return self.num_samples 94 | 95 | 96 | class BatchSampler(object): 97 | """Wraps another sampler to yield a mini-batch of indices. 98 | 99 | Args: 100 | sampler (Sampler): Base sampler. 101 | batch_size (int): Size of mini-batch. 102 | drop_last (bool): If ``True``, the sampler will drop the last batch if 103 | its size would be less than ``batch_size`` 104 | 105 | Example: 106 | >>> list(BatchSampler(range(10), batch_size=3, drop_last=False)) 107 | [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]] 108 | >>> list(BatchSampler(range(10), batch_size=3, drop_last=True)) 109 | [[0, 1, 2], [3, 4, 5], [6, 7, 8]] 110 | """ 111 | 112 | def __init__(self, sampler, batch_size, drop_last): 113 | self.sampler = sampler 114 | self.batch_size = batch_size 115 | self.drop_last = drop_last 116 | 117 | def __iter__(self): 118 | batch = [] 119 | for idx in self.sampler: 120 | batch.append(idx) 121 | if len(batch) == self.batch_size: 122 | yield batch 123 | batch = [] 124 | if len(batch) > 0 and not self.drop_last: 125 | yield batch 126 | 127 | def __len__(self): 128 | if self.drop_last: 129 | return len(self.sampler) // self.batch_size 130 | else: 131 | return (len(self.sampler) + self.batch_size - 1) // self.batch_size 132 | -------------------------------------------------------------------------------- /modal/resnet_deeplab.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # coding: utf-8 3 | # 4 | # Author: Kazuto Nakashima 5 | # URL: http://kazuto1011.github.io 6 | # Created: 2017-11-19 7 | 8 | from __future__ import absolute_import, print_function 9 | 10 | from collections import OrderedDict 11 | 12 | import torch 13 | import torch.nn as nn 14 | import torch.nn.functional as F 15 | 16 | try: 17 | from encoding.nn import SyncBatchNorm 18 | 19 | _BATCH_NORM = SyncBatchNorm 20 | except: 21 | _BATCH_NORM = nn.BatchNorm2d 22 | 23 | _BOTTLENECK_EXPANSION = 4 24 | 25 | 26 | class _ConvBnReLU(nn.Sequential): 27 | """ 28 | Cascade of 2D convolution, batch norm, and ReLU. 29 | """ 30 | 31 | BATCH_NORM = _BATCH_NORM 32 | 33 | def __init__( 34 | self, in_ch, out_ch, kernel_size, stride, padding, dilation, relu=True 35 | ): 36 | super(_ConvBnReLU, self).__init__() 37 | self.add_module( 38 | "conv", 39 | nn.Conv2d( 40 | in_ch, out_ch, kernel_size, stride, padding, dilation, bias=False 41 | ), 42 | ) 43 | self.add_module("bn", _BATCH_NORM(out_ch, eps=1e-5, momentum=0.999)) 44 | 45 | if relu: 46 | self.add_module("relu", nn.ReLU()) 47 | 48 | 49 | class _Bottleneck(nn.Module): 50 | """ 51 | Bottleneck block of MSRA ResNet. 52 | """ 53 | 54 | def __init__(self, in_ch, out_ch, stride, dilation, downsample): 55 | super(_Bottleneck, self).__init__() 56 | mid_ch = out_ch // _BOTTLENECK_EXPANSION 57 | self.reduce = _ConvBnReLU(in_ch, mid_ch, 1, stride, 0, 1, True) 58 | self.conv3x3 = _ConvBnReLU(mid_ch, mid_ch, 3, 1, dilation, dilation, True) 59 | self.increase = _ConvBnReLU(mid_ch, out_ch, 1, 1, 0, 1, False) 60 | self.shortcut = ( 61 | _ConvBnReLU(in_ch, out_ch, 1, stride, 0, 1, False) 62 | if downsample 63 | else lambda x: x # identity 64 | ) 65 | 66 | def forward(self, x): 67 | h = self.reduce(x) 68 | h = self.conv3x3(h) 69 | h = self.increase(h) 70 | h += self.shortcut(x) 71 | return F.relu(h) 72 | 73 | 74 | class _ResLayer(nn.Sequential): 75 | """ 76 | Residual layer with multi grids 77 | """ 78 | 79 | def __init__(self, n_layers, in_ch, out_ch, stride, dilation, multi_grids=None): 80 | super(_ResLayer, self).__init__() 81 | 82 | if multi_grids is None: 83 | multi_grids = [1 for _ in range(n_layers)] 84 | else: 85 | assert n_layers == len(multi_grids) 86 | 87 | # Downsampling is only in the first block 88 | for i in range(n_layers): 89 | self.add_module( 90 | "block{}".format(i + 1), 91 | _Bottleneck( 92 | in_ch=(in_ch if i == 0 else out_ch), 93 | out_ch=out_ch, 94 | stride=(stride if i == 0 else 1), 95 | dilation=dilation * multi_grids[i], 96 | downsample=(True if i == 0 else False), 97 | ), 98 | ) 99 | 100 | 101 | class _Stem(nn.Sequential): 102 | """ 103 | The 1st Residual Layer. 104 | Note that the max pooling is different from both MSRA and FAIR ResNet. 105 | """ 106 | 107 | def __init__(self, out_ch): 108 | super(_Stem, self).__init__() 109 | self.add_module("conv1", _ConvBnReLU(3, out_ch, 7, 2, 3, 1)) 110 | self.add_module("pool", nn.MaxPool2d(3, 2, 1, ceil_mode=True)) 111 | 112 | 113 | class _Flatten(nn.Module): 114 | def forward(self, x): 115 | return x.view(x.size(0), -1) 116 | 117 | 118 | class ResNet(nn.Sequential): 119 | def __init__(self, n_classes, n_blocks): 120 | super(ResNet, self).__init__() 121 | ch = [64 * 2 ** p for p in range(6)] 122 | self.add_module("layer1", _Stem(ch[0])) 123 | self.add_module("layer2", _ResLayer(n_blocks[0], ch[0], ch[2], 1, 1)) 124 | self.add_module("layer3", _ResLayer(n_blocks[1], ch[2], ch[3], 2, 1)) 125 | self.add_module("layer4", _ResLayer(n_blocks[2], ch[3], ch[4], 2, 1)) 126 | self.add_module("layer5", _ResLayer(n_blocks[3], ch[4], ch[5], 2, 1)) 127 | self.add_module("pool5", nn.AdaptiveAvgPool2d(1)) 128 | self.add_module("flatten", _Flatten()) 129 | self.add_module("fc", nn.Linear(ch[5], n_classes)) 130 | 131 | 132 | if __name__ == "__main__": 133 | model = ResNet(n_classes=1000, n_blocks=[3, 4, 23, 3]) 134 | model.eval() 135 | image = torch.randn(1, 3, 224, 224) 136 | 137 | print(model) 138 | print("input:", image.shape) 139 | print("output:", model(image).shape) 140 | -------------------------------------------------------------------------------- /modal/lib/nn/modules/comm.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # File : comm.py 3 | # Author : Jiayuan Mao 4 | # Email : maojiayuan@gmail.com 5 | # Date : 27/01/2018 6 | # 7 | # This file is part of Synchronized-BatchNorm-PyTorch. 8 | # https://github.com/vacancy/Synchronized-BatchNorm-PyTorch 9 | # Distributed under MIT License. 10 | 11 | import queue 12 | import collections 13 | import threading 14 | 15 | __all__ = ['FutureResult', 'SlavePipe', 'SyncMaster'] 16 | 17 | 18 | class FutureResult(object): 19 | """A thread-safe future implementation. Used only as one-to-one pipe.""" 20 | 21 | def __init__(self): 22 | self._result = None 23 | self._lock = threading.Lock() 24 | self._cond = threading.Condition(self._lock) 25 | 26 | def put(self, result): 27 | with self._lock: 28 | assert self._result is None, 'Previous result has\'t been fetched.' 29 | self._result = result 30 | self._cond.notify() 31 | 32 | def get(self): 33 | with self._lock: 34 | if self._result is None: 35 | self._cond.wait() 36 | 37 | res = self._result 38 | self._result = None 39 | return res 40 | 41 | 42 | _MasterRegistry = collections.namedtuple('MasterRegistry', ['result']) 43 | _SlavePipeBase = collections.namedtuple('_SlavePipeBase', ['identifier', 'queue', 'result']) 44 | 45 | 46 | class SlavePipe(_SlavePipeBase): 47 | """Pipe for master-slave communication.""" 48 | 49 | def run_slave(self, msg): 50 | self.queue.put((self.identifier, msg)) 51 | ret = self.result.get() 52 | self.queue.put(True) 53 | return ret 54 | 55 | 56 | class SyncMaster(object): 57 | """An abstract `SyncMaster` object. 58 | 59 | - During the replication, as the data parallel will trigger an callback of each module, all slave devices should 60 | call `register(id)` and obtain an `SlavePipe` to communicate with the master. 61 | - During the forward pass, master device invokes `run_master`, all messages from slave devices will be collected, 62 | and passed to a registered callback. 63 | - After receiving the messages, the master device should gather the information and determine to message passed 64 | back to each slave devices. 65 | """ 66 | 67 | def __init__(self, master_callback): 68 | """ 69 | 70 | Args: 71 | master_callback: a callback to be invoked after having collected messages from slave devices. 72 | """ 73 | self._master_callback = master_callback 74 | self._queue = queue.Queue() 75 | self._registry = collections.OrderedDict() 76 | self._activated = False 77 | 78 | def register_slave(self, identifier): 79 | """ 80 | Register an slave device. 81 | 82 | Args: 83 | identifier: an identifier, usually is the device id. 84 | 85 | Returns: a `SlavePipe` object which can be used to communicate with the master device. 86 | 87 | """ 88 | if self._activated: 89 | assert self._queue.empty(), 'Queue is not clean before next initialization.' 90 | self._activated = False 91 | self._registry.clear() 92 | future = FutureResult() 93 | self._registry[identifier] = _MasterRegistry(future) 94 | return SlavePipe(identifier, self._queue, future) 95 | 96 | def run_master(self, master_msg): 97 | """ 98 | Main entry for the master device in each forward pass. 99 | The messages were first collected from each devices (including the master device), and then 100 | an callback will be invoked to compute the message to be sent back to each devices 101 | (including the master device). 102 | 103 | Args: 104 | master_msg: the message that the master want to send to itself. This will be placed as the first 105 | message when calling `master_callback`. For detailed usage, see `_SynchronizedBatchNorm` for an example. 106 | 107 | Returns: the message to be sent back to the master device. 108 | 109 | """ 110 | self._activated = True 111 | 112 | intermediates = [(0, master_msg)] 113 | for i in range(self.nr_slaves): 114 | intermediates.append(self._queue.get()) 115 | 116 | results = self._master_callback(intermediates) 117 | assert results[0][0] == 0, 'The first result should belongs to the master.' 118 | 119 | for i, res in results: 120 | if i == 0: 121 | continue 122 | self._registry[i].result.put(res) 123 | 124 | for i in range(self.nr_slaves): 125 | assert self._queue.get() is True 126 | 127 | return results[0][1] 128 | 129 | @property 130 | def nr_slaves(self): 131 | return len(self._registry) 132 | -------------------------------------------------------------------------------- /cocoapi/PythonAPI/pycocotools/mask.py: -------------------------------------------------------------------------------- 1 | __author__ = 'tsungyi' 2 | 3 | import pycocotools._mask as _mask 4 | 5 | # Interface for manipulating masks stored in RLE format. 6 | # 7 | # RLE is a simple yet efficient format for storing binary masks. RLE 8 | # first divides a vector (or vectorized image) into a series of piecewise 9 | # constant regions and then for each piece simply stores the length of 10 | # that piece. For example, given M=[0 0 1 1 1 0 1] the RLE counts would 11 | # be [2 3 1 1], or for M=[1 1 1 1 1 1 0] the counts would be [0 6 1] 12 | # (note that the odd counts are always the numbers of zeros). Instead of 13 | # storing the counts directly, additional compression is achieved with a 14 | # variable bitrate representation based on a common scheme called LEB128. 15 | # 16 | # Compression is greatest given large piecewise constant regions. 17 | # Specifically, the size of the RLE is proportional to the number of 18 | # *boundaries* in M (or for an image the number of boundaries in the y 19 | # direction). Assuming fairly simple shapes, the RLE representation is 20 | # O(sqrt(n)) where n is number of pixels in the object. Hence space usage 21 | # is substantially lower, especially for large simple objects (large n). 22 | # 23 | # Many common operations on masks can be computed directly using the RLE 24 | # (without need for decoding). This includes computations such as area, 25 | # union, intersection, etc. All of these operations are linear in the 26 | # size of the RLE, in other words they are O(sqrt(n)) where n is the area 27 | # of the object. Computing these operations on the original mask is O(n). 28 | # Thus, using the RLE can result in substantial computational savings. 29 | # 30 | # The following API functions are defined: 31 | # encode - Encode binary masks using RLE. 32 | # decode - Decode binary masks encoded via RLE. 33 | # merge - Compute union or intersection of encoded masks. 34 | # iou - Compute intersection over union between masks. 35 | # area - Compute area of encoded masks. 36 | # toBbox - Get bounding boxes surrounding encoded masks. 37 | # frPyObjects - Convert polygon, bbox, and uncompressed RLE to encoded RLE mask. 38 | # 39 | # Usage: 40 | # Rs = encode( masks ) 41 | # masks = decode( Rs ) 42 | # R = merge( Rs, intersect=false ) 43 | # o = iou( dt, gt, iscrowd ) 44 | # a = area( Rs ) 45 | # bbs = toBbox( Rs ) 46 | # Rs = frPyObjects( [pyObjects], h, w ) 47 | # 48 | # In the API the following formats are used: 49 | # Rs - [dict] Run-length encoding of binary masks 50 | # R - dict Run-length encoding of binary mask 51 | # masks - [hxwxn] Binary mask(s) (must have type np.ndarray(dtype=uint8) in column-major order) 52 | # iscrowd - [nx1] list of np.ndarray. 1 indicates corresponding gt image has crowd region to ignore 53 | # bbs - [nx4] Bounding box(es) stored as [x y w h] 54 | # poly - Polygon stored as [[x1 y1 x2 y2...],[x1 y1 ...],...] (2D list) 55 | # dt,gt - May be either bounding boxes or encoded masks 56 | # Both poly and bbs are 0-indexed (bbox=[0 0 1 1] encloses first pixel). 57 | # 58 | # Finally, a note about the intersection over union (iou) computation. 59 | # The standard iou of a ground truth (gt) and detected (dt) object is 60 | # iou(gt,dt) = area(intersect(gt,dt)) / area(union(gt,dt)) 61 | # For "crowd" regions, we use a modified criteria. If a gt object is 62 | # marked as "iscrowd", we allow a dt to match any subregion of the gt. 63 | # Choosing gt' in the crowd gt that best matches the dt can be done using 64 | # gt'=intersect(dt,gt). Since by definition union(gt',dt)=dt, computing 65 | # iou(gt,dt,iscrowd) = iou(gt',dt) = area(intersect(gt,dt)) / area(dt) 66 | # For crowd gt regions we use this modified criteria above for the iou. 67 | # 68 | # To compile run "python setup.py build_ext --inplace" 69 | # Please do not contact us for help with compiling. 70 | # 71 | # Microsoft COCO Toolbox. version 2.0 72 | # Data, paper, and tutorials available at: http://mscoco.org/ 73 | # Code written by Piotr Dollar and Tsung-Yi Lin, 2015. 74 | # Licensed under the Simplified BSD License [see coco/license.txt] 75 | 76 | iou = _mask.iou 77 | merge = _mask.merge 78 | frPyObjects = _mask.frPyObjects 79 | 80 | def encode(bimask): 81 | if len(bimask.shape) == 3: 82 | return _mask.encode(bimask) 83 | elif len(bimask.shape) == 2: 84 | h, w = bimask.shape 85 | return _mask.encode(bimask.reshape((h, w, 1), order='F'))[0] 86 | 87 | def decode(rleObjs): 88 | if type(rleObjs) == list: 89 | return _mask.decode(rleObjs) 90 | else: 91 | return _mask.decode([rleObjs])[:,:,0] 92 | 93 | def area(rleObjs): 94 | if type(rleObjs) == list: 95 | return _mask.area(rleObjs) 96 | else: 97 | return _mask.area([rleObjs])[0] 98 | 99 | def toBbox(rleObjs): 100 | if type(rleObjs) == list: 101 | return _mask.toBbox(rleObjs) 102 | else: 103 | return _mask.toBbox([rleObjs])[0] --------------------------------------------------------------------------------