├── .gitignore ├── README.md ├── cfg.py ├── datasets ├── UAV dataset.ipynb ├── UAV123_selected.tar.gz ├── UAV123_selected │ ├── car1.txt │ ├── car12.txt │ ├── car14.txt │ ├── car16.txt │ ├── car17.txt │ ├── car18.txt │ ├── car2.txt │ ├── car3.txt │ ├── car4.txt │ ├── car5.txt │ ├── car8.txt │ ├── car9.txt │ ├── person1.txt │ ├── person10.txt │ ├── person12.txt │ ├── person13.txt │ ├── person14.txt │ ├── person15.txt │ ├── person16.txt │ ├── person17.txt │ ├── person18.txt │ ├── person19.txt │ ├── person2.txt │ ├── person20.txt │ ├── person22.txt │ ├── person23.txt │ ├── person3.txt │ ├── person4.txt │ ├── person5.txt │ ├── person6.txt │ ├── person7.txt │ └── person8.txt ├── VOC dataset.ipynb ├── combine_hd5.py ├── lisa_traffic_light.py ├── okutama_to_hd5.py ├── uav123_to_hd5.py └── voc_to_hdf5.py ├── font ├── FiraMono-Medium.otf └── SIL Open Font License.txt ├── images ├── dayClip1--01080.png ├── dayClip1--01081.png ├── dayClip1--01082.png ├── dayClip1--01083.png ├── dayClip1--01084.png ├── dayClip1--01085.png ├── dayClip1--01086.png ├── dayClip1--01087.png ├── dayClip1--01088.png ├── dayClip1--01089.png ├── dayClip1--01090.png ├── dayClip1--01091.png ├── dayClip1--01092.png ├── dayClip1--01093.png ├── dayClip1--01094.png ├── dayClip1--01095.png ├── dayClip1--01096.png ├── dayClip1--01097.png ├── dayClip1--01098.png ├── dayClip1--01099.png ├── dayClip1--01100.png ├── dayClip1--01101.png ├── dayClip1--01102.png ├── dayClip1--01103.png ├── dayClip1--01104.png ├── dayClip1--01105.png ├── dayClip1--01106.png ├── dayClip1--01107.png ├── dayClip1--01108.png ├── dayClip1--01109.png ├── dayClip1--01110.png ├── dayClip1--01111.png ├── dayClip1--01112.png ├── dayClip1--01113.png ├── dayClip1--01114.png ├── dayClip1--01115.png ├── dayClip1--01116.png ├── dayClip1--01117.png ├── dayClip1--01118.png └── dayClip1--01119.png ├── mobiledet ├── __init__.py ├── models │ ├── __init__.py │ ├── keras_darknet19.py │ ├── keras_mobilenet.py │ └── keras_yolo.py └── utils │ ├── __init__.py │ ├── anchor_boxes.py │ ├── box.py │ ├── cfg.py │ ├── draw_boxes.py │ └── utils.py ├── model_data ├── drone_classes.txt ├── lisa_anchors.txt ├── lisa_classes.txt ├── pascal_anchors.txt ├── pascal_classes.txt └── uav123_anchors.txt ├── recall_precision.py ├── retrain_yolo.py ├── test_yolo.py ├── train_overfit.py └── weights ├── fine_tune_parking_lot.1.h5 └── mobilenet_s3_best.FalseFalse.h5 /.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__/ 2 | 3 | 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # MobileDet 2 | MobileNet and YOLOv2 based real-time Person and Vehicle detector. 3 | The final verion of model is called: YOLOv2-MobileNet_Shallow_3Scales 4 | This model can run up to 10fps on NVIDIA TX2 platform 5 | 6 | 7 | ## Dependencies 8 | Keras 9 | Tensorflow 10 | scikit-learn 11 | Numpy 12 | h5py 13 | Pillow 14 | Python 3 15 | opencv-python 16 | 17 | ## UAV123 dataset 18 | ### Test with UAV123 video sequences 19 | * 0. Download the UAV123 dataset zip file from [link](https://drive.google.com/file/d/0B6sQMCU1i4NbZmFlQmJBVDlLRDg/edit). It is about 4.4G. 20 | Unzip it into /data/UAV123/ folder. 21 | Download the pre-processed UAV123 dataset from [link](https://drive.google.com/open?id=1_y_T5dEq-jclesTNxQR-MK3cWR8YmQAR) and placed it under '~/data' folder. 22 | * 1. Download weights from this google drive [link to UAV123 weights](https://drive.google.com/open?id=1dUjdlRjuWyvyMQKuaF6X9RExKBIRedJt) and place the unzipped folder to 'MobileDet/weights_uav123' 23 | * 2. Modify the cfg.py as below to configure the model as YOLOv2-MobileNet_Shallow_3Scales 24 | ```python 25 | FEATURE_EXTRACTOR = 'mobilenet' 26 | SHALLOW_DETECTOR = True 27 | USE_X0_FEATURE = True 28 | ``` 29 | * 3. Run below sample script to use the model to detect objects from UAV123 images 30 | 31 | ```python 32 | python test_yolo.py -m weights_uav123/mobilenet_s3_best.TrueTrue.h5 -t ~/data/UAV123/UAV123_10fps/data_seq/UAV123_10fps/bike3 -o ~/Videos/bike3 -iou 0.6 -s 0.6 33 | ``` 34 | * 4. Run below sample script to use calculate the recall and precision of Test group UAV123 dataset 35 | ```python 36 | python recall_precision.py -m weights_uav123/mobilenet_s3_best.TrueTrue.h5 -d ~/data/uav123.hdf5 -a model_data/uav123_anchors.txt -iou 0.6 -s 0.6 37 | ``` 38 | 39 | ### Retrain with other dataset 40 | ## Pre-process dataset 41 | * 1. To retrain with other dataset, it is required to write a parse script to convert the dataset into HDF5 format. This project has python script for dataset: UAV123, VOC and Okutama Action datasets 42 | * 2. After creating the HDF5 dataset, it is required to use the 'anchor_boxes.py' to run k-means method to generate a few prior anchor boxes for this dataset 43 | * 3. After above two steps, use 'retrain_yolo.py' to retrain the new dataset 44 | 45 | 46 | 47 | ### YAD2K 48 | This project is based on: https://github.com/allanzelener/YAD2K 49 | 50 | 51 | -------------------------------------------------------------------------------- /cfg.py: -------------------------------------------------------------------------------- 1 | ''' 2 | Main configuration file for YOLOv2 Project. 3 | Modify every time one would like to train on a new dataset 4 | ''' 5 | import numpy as np 6 | 7 | # If a feature extractor performed 5 max-pooling --> Image resolution being reduced 2^5 = 32 times 8 | # Most current state-of-the-art models have max-pooling layers (Jan, 2018) 9 | # FEATURE_EXTRACTOR = 'darknet19' 10 | FEATURE_EXTRACTOR = 'mobilenet' 11 | # Number of classes, always 2 (Person and Vehicle) 12 | 13 | N_CLASSES = 4 14 | # Number of anchor boxes 15 | N_ANCHORS = 5 16 | # Training batch size, adjust this value based on hardware 17 | BATCH_SIZE = 4 18 | # Model input size 19 | IMAGE_H = 608 # image height 20 | IMAGE_W = 608 # image width 21 | 22 | # SHALLOW_DETECTOR is to control how many ConvNet blocks we have in the network 23 | SHALLOW_DETECTOR = False 24 | # USE_X0_FEATURE is to control how many scales of feature maps used for detection 25 | USE_X0_FEATURE = False 26 | 27 | # Default anchor boxes for COCO dataset 28 | # YOLO_ANCHORS = np.array( 29 | # ((0.57273, 0.677385), (1.87446, 2.06253), (3.33843, 5.47434), 30 | # (7.88282, 3.52778), (9.77052, 9.16828))) 31 | 32 | # Each max-pooling layer will shrink the input by half 33 | # The origional YOLOv2 contains 5 ConvNet blocks and each includes one max-pooling, 34 | # therefore the feature map size will be 1/32 35 | # IF the SHALLOW_DETECTOR is true, the customized YOLOv2 contains 4 ConvNet blocks, 36 | # therefore the feature map size will be 1/16 37 | if SHALLOW_DETECTOR: 38 | SHRINK_FACTOR = 16 39 | else: 40 | SHRINK_FACTOR = 32 41 | 42 | FEAT_H = IMAGE_H // SHRINK_FACTOR 43 | FEAT_W = IMAGE_W // SHRINK_FACTOR 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /datasets/UAV123_selected.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/datasets/UAV123_selected.tar.gz -------------------------------------------------------------------------------- /datasets/UAV123_selected/car1.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car12.txt: -------------------------------------------------------------------------------- 1 | 000040.jpg 2 | 000041.jpg 3 | 000042.jpg 4 | 000043.jpg 5 | 000047.jpg 6 | 000048.jpg 7 | 000049.jpg 8 | 000050.jpg 9 | 000051.jpg 10 | 000052.jpg 11 | 000053.jpg 12 | 000054.jpg 13 | 000055.jpg 14 | 000056.jpg 15 | 000057.jpg 16 | 000058.jpg 17 | 000059.jpg 18 | 000061.jpg 19 | 000062.jpg 20 | 000065.jpg 21 | 000066.jpg 22 | 000067.jpg 23 | 000068.jpg 24 | 000071.jpg 25 | 000072.jpg 26 | 000073.jpg 27 | 000074.jpg 28 | 000076.jpg 29 | 000077.jpg 30 | 000078.jpg 31 | 000079.jpg 32 | 000080.jpg 33 | 000081.jpg 34 | 000082.jpg 35 | 000083.jpg 36 | 000084.jpg 37 | 000085.jpg 38 | 000086.jpg 39 | 000087.jpg 40 | 000088.jpg 41 | 000090.jpg 42 | 000091.jpg 43 | 000092.jpg 44 | 000093.jpg 45 | 000094.jpg 46 | 000095.jpg 47 | 000096.jpg 48 | 000097.jpg 49 | 000098.jpg 50 | 000099.jpg 51 | 000100.jpg 52 | 000101.jpg 53 | 000102.jpg 54 | 000103.jpg 55 | 000104.jpg 56 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car14.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000233.jpg 234 | 000234.jpg 235 | 000235.jpg 236 | 000236.jpg 237 | 000237.jpg 238 | 000238.jpg 239 | 000239.jpg 240 | 000240.jpg 241 | 000241.jpg 242 | 000242.jpg 243 | 000243.jpg 244 | 000244.jpg 245 | 000245.jpg 246 | 000246.jpg 247 | 000247.jpg 248 | 000248.jpg 249 | 000249.jpg 250 | 000250.jpg 251 | 000251.jpg 252 | 000252.jpg 253 | 000253.jpg 254 | 000254.jpg 255 | 000255.jpg 256 | 000256.jpg 257 | 000257.jpg 258 | 000258.jpg 259 | 000259.jpg 260 | 000260.jpg 261 | 000261.jpg 262 | 000262.jpg 263 | 000263.jpg 264 | 000264.jpg 265 | 000265.jpg 266 | 000266.jpg 267 | 000267.jpg 268 | 000268.jpg 269 | 000269.jpg 270 | 000270.jpg 271 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car16.txt: -------------------------------------------------------------------------------- 1 | 000049.jpg 2 | 000050.jpg 3 | 000051.jpg 4 | 000052.jpg 5 | 000053.jpg 6 | 000054.jpg 7 | 000055.jpg 8 | 000056.jpg 9 | 000057.jpg 10 | 000058.jpg 11 | 000059.jpg 12 | 000060.jpg 13 | 000061.jpg 14 | 000062.jpg 15 | 000063.jpg 16 | 000064.jpg 17 | 000065.jpg 18 | 000066.jpg 19 | 000067.jpg 20 | 000068.jpg 21 | 000069.jpg 22 | 000070.jpg 23 | 000071.jpg 24 | 000072.jpg 25 | 000073.jpg 26 | 000074.jpg 27 | 000075.jpg 28 | 000076.jpg 29 | 000077.jpg 30 | 000078.jpg 31 | 000079.jpg 32 | 000080.jpg 33 | 000081.jpg 34 | 000082.jpg 35 | 000083.jpg 36 | 000084.jpg 37 | 000085.jpg 38 | 000086.jpg 39 | 000087.jpg 40 | 000088.jpg 41 | 000089.jpg 42 | 000090.jpg 43 | 000091.jpg 44 | 000092.jpg 45 | 000093.jpg 46 | 000094.jpg 47 | 000095.jpg 48 | 000096.jpg 49 | 000097.jpg 50 | 000098.jpg 51 | 000099.jpg 52 | 000100.jpg 53 | 000101.jpg 54 | 000102.jpg 55 | 000103.jpg 56 | 000104.jpg 57 | 000105.jpg 58 | 000106.jpg 59 | 000107.jpg 60 | 000108.jpg 61 | 000109.jpg 62 | 000110.jpg 63 | 000129.jpg 64 | 000130.jpg 65 | 000131.jpg 66 | 000132.jpg 67 | 000133.jpg 68 | 000134.jpg 69 | 000135.jpg 70 | 000136.jpg 71 | 000137.jpg 72 | 000138.jpg 73 | 000139.jpg 74 | 000140.jpg 75 | 000141.jpg 76 | 000142.jpg 77 | 000143.jpg 78 | 000144.jpg 79 | 000145.jpg 80 | 000146.jpg 81 | 000147.jpg 82 | 000148.jpg 83 | 000149.jpg 84 | 000150.jpg 85 | 000151.jpg 86 | 000152.jpg 87 | 000153.jpg 88 | 000154.jpg 89 | 000155.jpg 90 | 000156.jpg 91 | 000157.jpg 92 | 000158.jpg 93 | 000159.jpg 94 | 000160.jpg 95 | 000161.jpg 96 | 000162.jpg 97 | 000163.jpg 98 | 000164.jpg 99 | 000165.jpg 100 | 000166.jpg 101 | 000167.jpg 102 | 000168.jpg 103 | 000169.jpg 104 | 000170.jpg 105 | 000171.jpg 106 | 000172.jpg 107 | 000173.jpg 108 | 000174.jpg 109 | 000175.jpg 110 | 000176.jpg 111 | 000177.jpg 112 | 000178.jpg 113 | 000179.jpg 114 | 000180.jpg 115 | 000181.jpg 116 | 000182.jpg 117 | 000183.jpg 118 | 000184.jpg 119 | 000185.jpg 120 | 000186.jpg 121 | 000187.jpg 122 | 000188.jpg 123 | 000189.jpg 124 | 000190.jpg 125 | 000191.jpg 126 | 000192.jpg 127 | 000193.jpg 128 | 000194.jpg 129 | 000195.jpg 130 | 000196.jpg 131 | 000197.jpg 132 | 000198.jpg 133 | 000199.jpg 134 | 000200.jpg 135 | 000201.jpg 136 | 000202.jpg 137 | 000203.jpg 138 | 000204.jpg 139 | 000205.jpg 140 | 000206.jpg 141 | 000207.jpg 142 | 000208.jpg 143 | 000209.jpg 144 | 000210.jpg 145 | 000211.jpg 146 | 000212.jpg 147 | 000213.jpg 148 | 000214.jpg 149 | 000215.jpg 150 | 000216.jpg 151 | 000217.jpg 152 | 000218.jpg 153 | 000219.jpg 154 | 000220.jpg 155 | 000221.jpg 156 | 000222.jpg 157 | 000223.jpg 158 | 000224.jpg 159 | 000225.jpg 160 | 000226.jpg 161 | 000227.jpg 162 | 000228.jpg 163 | 000229.jpg 164 | 000230.jpg 165 | 000231.jpg 166 | 000232.jpg 167 | 000233.jpg 168 | 000234.jpg 169 | 000235.jpg 170 | 000236.jpg 171 | 000237.jpg 172 | 000238.jpg 173 | 000239.jpg 174 | 000240.jpg 175 | 000241.jpg 176 | 000242.jpg 177 | 000243.jpg 178 | 000244.jpg 179 | 000245.jpg 180 | 000246.jpg 181 | 000247.jpg 182 | 000248.jpg 183 | 000249.jpg 184 | 000250.jpg 185 | 000251.jpg 186 | 000252.jpg 187 | 000253.jpg 188 | 000254.jpg 189 | 000255.jpg 190 | 000256.jpg 191 | 000257.jpg 192 | 000258.jpg 193 | 000259.jpg 194 | 000260.jpg 195 | 000261.jpg 196 | 000262.jpg 197 | 000263.jpg 198 | 000264.jpg 199 | 000265.jpg 200 | 000266.jpg 201 | 000267.jpg 202 | 000268.jpg 203 | 000269.jpg 204 | 000270.jpg 205 | 000271.jpg 206 | 000272.jpg 207 | 000273.jpg 208 | 000274.jpg 209 | 000275.jpg 210 | 000276.jpg 211 | 000277.jpg 212 | 000278.jpg 213 | 000279.jpg 214 | 000280.jpg 215 | 000281.jpg 216 | 000282.jpg 217 | 000283.jpg 218 | 000284.jpg 219 | 000285.jpg 220 | 000286.jpg 221 | 000287.jpg 222 | 000288.jpg 223 | 000289.jpg 224 | 000290.jpg 225 | 000291.jpg 226 | 000292.jpg 227 | 000293.jpg 228 | 000294.jpg 229 | 000295.jpg 230 | 000296.jpg 231 | 000297.jpg 232 | 000298.jpg 233 | 000299.jpg 234 | 000300.jpg 235 | 000301.jpg 236 | 000302.jpg 237 | 000303.jpg 238 | 000304.jpg 239 | 000305.jpg 240 | 000306.jpg 241 | 000307.jpg 242 | 000308.jpg 243 | 000309.jpg 244 | 000310.jpg 245 | 000311.jpg 246 | 000312.jpg 247 | 000313.jpg 248 | 000314.jpg 249 | 000315.jpg 250 | 000316.jpg 251 | 000317.jpg 252 | 000318.jpg 253 | 000319.jpg 254 | 000320.jpg 255 | 000321.jpg 256 | 000322.jpg 257 | 000323.jpg 258 | 000324.jpg 259 | 000325.jpg 260 | 000326.jpg 261 | 000327.jpg 262 | 000328.jpg 263 | 000329.jpg 264 | 000330.jpg 265 | 000331.jpg 266 | 000332.jpg 267 | 000333.jpg 268 | 000334.jpg 269 | 000335.jpg 270 | 000336.jpg 271 | 000337.jpg 272 | 000338.jpg 273 | 000339.jpg 274 | 000340.jpg 275 | 000341.jpg 276 | 000342.jpg 277 | 000343.jpg 278 | 000344.jpg 279 | 000345.jpg 280 | 000346.jpg 281 | 000347.jpg 282 | 000348.jpg 283 | 000349.jpg 284 | 000350.jpg 285 | 000351.jpg 286 | 000352.jpg 287 | 000353.jpg 288 | 000354.jpg 289 | 000355.jpg 290 | 000356.jpg 291 | 000357.jpg 292 | 000358.jpg 293 | 000359.jpg 294 | 000360.jpg 295 | 000361.jpg 296 | 000362.jpg 297 | 000363.jpg 298 | 000364.jpg 299 | 000365.jpg 300 | 000366.jpg 301 | 000367.jpg 302 | 000368.jpg 303 | 000369.jpg 304 | 000370.jpg 305 | 000371.jpg 306 | 000372.jpg 307 | 000373.jpg 308 | 000374.jpg 309 | 000375.jpg 310 | 000376.jpg 311 | 000377.jpg 312 | 000378.jpg 313 | 000379.jpg 314 | 000380.jpg 315 | 000381.jpg 316 | 000382.jpg 317 | 000383.jpg 318 | 000384.jpg 319 | 000385.jpg 320 | 000386.jpg 321 | 000387.jpg 322 | 000388.jpg 323 | 000389.jpg 324 | 000391.jpg 325 | 000392.jpg 326 | 000393.jpg 327 | 000394.jpg 328 | 000395.jpg 329 | 000396.jpg 330 | 000397.jpg 331 | 000398.jpg 332 | 000399.jpg 333 | 000419.jpg 334 | 000420.jpg 335 | 000421.jpg 336 | 000422.jpg 337 | 000423.jpg 338 | 000424.jpg 339 | 000425.jpg 340 | 000426.jpg 341 | 000427.jpg 342 | 000428.jpg 343 | 000429.jpg 344 | 000430.jpg 345 | 000431.jpg 346 | 000432.jpg 347 | 000433.jpg 348 | 000434.jpg 349 | 000435.jpg 350 | 000436.jpg 351 | 000437.jpg 352 | 000438.jpg 353 | 000439.jpg 354 | 000440.jpg 355 | 000441.jpg 356 | 000442.jpg 357 | 000443.jpg 358 | 000444.jpg 359 | 000445.jpg 360 | 000446.jpg 361 | 000447.jpg 362 | 000448.jpg 363 | 000449.jpg 364 | 000450.jpg 365 | 000451.jpg 366 | 000452.jpg 367 | 000453.jpg 368 | 000454.jpg 369 | 000455.jpg 370 | 000456.jpg 371 | 000457.jpg 372 | 000458.jpg 373 | 000459.jpg 374 | 000460.jpg 375 | 000461.jpg 376 | 000462.jpg 377 | 000463.jpg 378 | 000464.jpg 379 | 000465.jpg 380 | 000466.jpg 381 | 000467.jpg 382 | 000468.jpg 383 | 000469.jpg 384 | 000470.jpg 385 | 000471.jpg 386 | 000472.jpg 387 | 000473.jpg 388 | 000474.jpg 389 | 000475.jpg 390 | 000476.jpg 391 | 000477.jpg 392 | 000478.jpg 393 | 000479.jpg 394 | 000480.jpg 395 | 000481.jpg 396 | 000482.jpg 397 | 000483.jpg 398 | 000484.jpg 399 | 000485.jpg 400 | 000486.jpg 401 | 000487.jpg 402 | 000488.jpg 403 | 000490.jpg 404 | 000491.jpg 405 | 000492.jpg 406 | 000493.jpg 407 | 000494.jpg 408 | 000495.jpg 409 | 000496.jpg 410 | 000497.jpg 411 | 000498.jpg 412 | 000499.jpg 413 | 000500.jpg 414 | 000501.jpg 415 | 000502.jpg 416 | 000503.jpg 417 | 000504.jpg 418 | 000505.jpg 419 | 000506.jpg 420 | 000507.jpg 421 | 000508.jpg 422 | 000509.jpg 423 | 000510.jpg 424 | 000511.jpg 425 | 000512.jpg 426 | 000513.jpg 427 | 000514.jpg 428 | 000515.jpg 429 | 000516.jpg 430 | 000517.jpg 431 | 000518.jpg 432 | 000554.jpg 433 | 000555.jpg 434 | 000556.jpg 435 | 000557.jpg 436 | 000558.jpg 437 | 000559.jpg 438 | 000560.jpg 439 | 000561.jpg 440 | 000562.jpg 441 | 000563.jpg 442 | 000564.jpg 443 | 000565.jpg 444 | 000566.jpg 445 | 000567.jpg 446 | 000568.jpg 447 | 000569.jpg 448 | 000570.jpg 449 | 000571.jpg 450 | 000572.jpg 451 | 000573.jpg 452 | 000574.jpg 453 | 000575.jpg 454 | 000576.jpg 455 | 000577.jpg 456 | 000578.jpg 457 | 000579.jpg 458 | 000580.jpg 459 | 000581.jpg 460 | 000582.jpg 461 | 000583.jpg 462 | 000584.jpg 463 | 000585.jpg 464 | 000586.jpg 465 | 000587.jpg 466 | 000588.jpg 467 | 000589.jpg 468 | 000590.jpg 469 | 000591.jpg 470 | 000592.jpg 471 | 000593.jpg 472 | 000594.jpg 473 | 000595.jpg 474 | 000596.jpg 475 | 000597.jpg 476 | 000598.jpg 477 | 000599.jpg 478 | 000600.jpg 479 | 000601.jpg 480 | 000602.jpg 481 | 000603.jpg 482 | 000604.jpg 483 | 000605.jpg 484 | 000606.jpg 485 | 000607.jpg 486 | 000608.jpg 487 | 000609.jpg 488 | 000610.jpg 489 | 000611.jpg 490 | 000612.jpg 491 | 000613.jpg 492 | 000614.jpg 493 | 000615.jpg 494 | 000616.jpg 495 | 000617.jpg 496 | 000618.jpg 497 | 000619.jpg 498 | 000620.jpg 499 | 000621.jpg 500 | 000622.jpg 501 | 000623.jpg 502 | 000624.jpg 503 | 000625.jpg 504 | 000626.jpg 505 | 000627.jpg 506 | 000628.jpg 507 | 000629.jpg 508 | 000630.jpg 509 | 000631.jpg 510 | 000632.jpg 511 | 000633.jpg 512 | 000634.jpg 513 | 000635.jpg 514 | 000636.jpg 515 | 000637.jpg 516 | 000638.jpg 517 | 000639.jpg 518 | 000640.jpg 519 | 000641.jpg 520 | 000642.jpg 521 | 000643.jpg 522 | 000644.jpg 523 | 000645.jpg 524 | 000646.jpg 525 | 000647.jpg 526 | 000648.jpg 527 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car17.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000124.jpg 110 | 000125.jpg 111 | 000126.jpg 112 | 000127.jpg 113 | 000128.jpg 114 | 000129.jpg 115 | 000130.jpg 116 | 000131.jpg 117 | 000132.jpg 118 | 000133.jpg 119 | 000134.jpg 120 | 000135.jpg 121 | 000136.jpg 122 | 000137.jpg 123 | 000138.jpg 124 | 000139.jpg 125 | 000140.jpg 126 | 000141.jpg 127 | 000142.jpg 128 | 000143.jpg 129 | 000144.jpg 130 | 000145.jpg 131 | 000146.jpg 132 | 000147.jpg 133 | 000148.jpg 134 | 000149.jpg 135 | 000150.jpg 136 | 000151.jpg 137 | 000152.jpg 138 | 000153.jpg 139 | 000154.jpg 140 | 000155.jpg 141 | 000156.jpg 142 | 000157.jpg 143 | 000158.jpg 144 | 000159.jpg 145 | 000160.jpg 146 | 000161.jpg 147 | 000162.jpg 148 | 000163.jpg 149 | 000164.jpg 150 | 000165.jpg 151 | 000166.jpg 152 | 000167.jpg 153 | 000168.jpg 154 | 000169.jpg 155 | 000170.jpg 156 | 000171.jpg 157 | 000172.jpg 158 | 000173.jpg 159 | 000174.jpg 160 | 000175.jpg 161 | 000176.jpg 162 | 000177.jpg 163 | 000178.jpg 164 | 000179.jpg 165 | 000180.jpg 166 | 000181.jpg 167 | 000182.jpg 168 | 000183.jpg 169 | 000184.jpg 170 | 000185.jpg 171 | 000186.jpg 172 | 000187.jpg 173 | 000188.jpg 174 | 000189.jpg 175 | 000190.jpg 176 | 000191.jpg 177 | 000192.jpg 178 | 000193.jpg 179 | 000194.jpg 180 | 000195.jpg 181 | 000196.jpg 182 | 000197.jpg 183 | 000198.jpg 184 | 000199.jpg 185 | 000200.jpg 186 | 000201.jpg 187 | 000202.jpg 188 | 000203.jpg 189 | 000204.jpg 190 | 000205.jpg 191 | 000206.jpg 192 | 000207.jpg 193 | 000208.jpg 194 | 000209.jpg 195 | 000210.jpg 196 | 000211.jpg 197 | 000212.jpg 198 | 000213.jpg 199 | 000214.jpg 200 | 000215.jpg 201 | 000216.jpg 202 | 000217.jpg 203 | 000218.jpg 204 | 000219.jpg 205 | 000220.jpg 206 | 000221.jpg 207 | 000222.jpg 208 | 000223.jpg 209 | 000224.jpg 210 | 000225.jpg 211 | 000226.jpg 212 | 000227.jpg 213 | 000228.jpg 214 | 000229.jpg 215 | 000230.jpg 216 | 000231.jpg 217 | 000232.jpg 218 | 000233.jpg 219 | 000234.jpg 220 | 000235.jpg 221 | 000236.jpg 222 | 000237.jpg 223 | 000238.jpg 224 | 000239.jpg 225 | 000240.jpg 226 | 000241.jpg 227 | 000242.jpg 228 | 000243.jpg 229 | 000244.jpg 230 | 000245.jpg 231 | 000246.jpg 232 | 000247.jpg 233 | 000248.jpg 234 | 000249.jpg 235 | 000250.jpg 236 | 000251.jpg 237 | 000252.jpg 238 | 000253.jpg 239 | 000254.jpg 240 | 000255.jpg 241 | 000256.jpg 242 | 000257.jpg 243 | 000258.jpg 244 | 000259.jpg 245 | 000260.jpg 246 | 000261.jpg 247 | 000262.jpg 248 | 000263.jpg 249 | 000264.jpg 250 | 000265.jpg 251 | 000266.jpg 252 | 000267.jpg 253 | 000268.jpg 254 | 000269.jpg 255 | 000270.jpg 256 | 000271.jpg 257 | 000272.jpg 258 | 000273.jpg 259 | 000274.jpg 260 | 000275.jpg 261 | 000276.jpg 262 | 000277.jpg 263 | 000278.jpg 264 | 000279.jpg 265 | 000280.jpg 266 | 000281.jpg 267 | 000282.jpg 268 | 000283.jpg 269 | 000284.jpg 270 | 000285.jpg 271 | 000286.jpg 272 | 000287.jpg 273 | 000288.jpg 274 | 000289.jpg 275 | 000290.jpg 276 | 000291.jpg 277 | 000292.jpg 278 | 000293.jpg 279 | 000294.jpg 280 | 000295.jpg 281 | 000296.jpg 282 | 000297.jpg 283 | 000298.jpg 284 | 000299.jpg 285 | 000300.jpg 286 | 000301.jpg 287 | 000302.jpg 288 | 000303.jpg 289 | 000304.jpg 290 | 000305.jpg 291 | 000306.jpg 292 | 000307.jpg 293 | 000308.jpg 294 | 000309.jpg 295 | 000310.jpg 296 | 000311.jpg 297 | 000312.jpg 298 | 000313.jpg 299 | 000314.jpg 300 | 000315.jpg 301 | 000316.jpg 302 | 000317.jpg 303 | 000318.jpg 304 | 000319.jpg 305 | 000320.jpg 306 | 000321.jpg 307 | 000322.jpg 308 | 000323.jpg 309 | 000324.jpg 310 | 000325.jpg 311 | 000326.jpg 312 | 000327.jpg 313 | 000328.jpg 314 | 000329.jpg 315 | 000330.jpg 316 | 000331.jpg 317 | 000332.jpg 318 | 000333.jpg 319 | 000334.jpg 320 | 000335.jpg 321 | 000336.jpg 322 | 000337.jpg 323 | 000338.jpg 324 | 000339.jpg 325 | 000340.jpg 326 | 000341.jpg 327 | 000342.jpg 328 | 000343.jpg 329 | 000344.jpg 330 | 000345.jpg 331 | 000346.jpg 332 | 000347.jpg 333 | 000348.jpg 334 | 000349.jpg 335 | 000350.jpg 336 | 000351.jpg 337 | 000352.jpg 338 | 000353.jpg 339 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car18.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000146.jpg 53 | 000147.jpg 54 | 000148.jpg 55 | 000149.jpg 56 | 000150.jpg 57 | 000151.jpg 58 | 000152.jpg 59 | 000153.jpg 60 | 000154.jpg 61 | 000155.jpg 62 | 000156.jpg 63 | 000157.jpg 64 | 000158.jpg 65 | 000159.jpg 66 | 000160.jpg 67 | 000161.jpg 68 | 000162.jpg 69 | 000163.jpg 70 | 000164.jpg 71 | 000165.jpg 72 | 000166.jpg 73 | 000167.jpg 74 | 000168.jpg 75 | 000169.jpg 76 | 000170.jpg 77 | 000171.jpg 78 | 000172.jpg 79 | 000173.jpg 80 | 000174.jpg 81 | 000175.jpg 82 | 000176.jpg 83 | 000177.jpg 84 | 000178.jpg 85 | 000179.jpg 86 | 000180.jpg 87 | 000181.jpg 88 | 000182.jpg 89 | 000183.jpg 90 | 000184.jpg 91 | 000185.jpg 92 | 000186.jpg 93 | 000187.jpg 94 | 000188.jpg 95 | 000189.jpg 96 | 000190.jpg 97 | 000191.jpg 98 | 000192.jpg 99 | 000193.jpg 100 | 000194.jpg 101 | 000195.jpg 102 | 000196.jpg 103 | 000197.jpg 104 | 000198.jpg 105 | 000199.jpg 106 | 000200.jpg 107 | 000201.jpg 108 | 000202.jpg 109 | 000203.jpg 110 | 000204.jpg 111 | 000205.jpg 112 | 000206.jpg 113 | 000207.jpg 114 | 000208.jpg 115 | 000209.jpg 116 | 000210.jpg 117 | 000211.jpg 118 | 000212.jpg 119 | 000213.jpg 120 | 000214.jpg 121 | 000215.jpg 122 | 000216.jpg 123 | 000217.jpg 124 | 000218.jpg 125 | 000219.jpg 126 | 000220.jpg 127 | 000221.jpg 128 | 000222.jpg 129 | 000223.jpg 130 | 000224.jpg 131 | 000225.jpg 132 | 000226.jpg 133 | 000227.jpg 134 | 000228.jpg 135 | 000229.jpg 136 | 000230.jpg 137 | 000231.jpg 138 | 000232.jpg 139 | 000233.jpg 140 | 000234.jpg 141 | 000235.jpg 142 | 000236.jpg 143 | 000237.jpg 144 | 000238.jpg 145 | 000239.jpg 146 | 000240.jpg 147 | 000241.jpg 148 | 000242.jpg 149 | 000243.jpg 150 | 000244.jpg 151 | 000245.jpg 152 | 000246.jpg 153 | 000247.jpg 154 | 000248.jpg 155 | 000249.jpg 156 | 000250.jpg 157 | 000251.jpg 158 | 000252.jpg 159 | 000253.jpg 160 | 000254.jpg 161 | 000255.jpg 162 | 000256.jpg 163 | 000257.jpg 164 | 000258.jpg 165 | 000259.jpg 166 | 000260.jpg 167 | 000261.jpg 168 | 000262.jpg 169 | 000263.jpg 170 | 000264.jpg 171 | 000265.jpg 172 | 000266.jpg 173 | 000267.jpg 174 | 000268.jpg 175 | 000269.jpg 176 | 000270.jpg 177 | 000271.jpg 178 | 000272.jpg 179 | 000273.jpg 180 | 000274.jpg 181 | 000275.jpg 182 | 000276.jpg 183 | 000277.jpg 184 | 000278.jpg 185 | 000279.jpg 186 | 000280.jpg 187 | 000281.jpg 188 | 000282.jpg 189 | 000283.jpg 190 | 000284.jpg 191 | 000285.jpg 192 | 000286.jpg 193 | 000287.jpg 194 | 000288.jpg 195 | 000289.jpg 196 | 000290.jpg 197 | 000291.jpg 198 | 000292.jpg 199 | 000293.jpg 200 | 000294.jpg 201 | 000295.jpg 202 | 000296.jpg 203 | 000297.jpg 204 | 000298.jpg 205 | 000299.jpg 206 | 000300.jpg 207 | 000301.jpg 208 | 000302.jpg 209 | 000303.jpg 210 | 000304.jpg 211 | 000305.jpg 212 | 000306.jpg 213 | 000307.jpg 214 | 000308.jpg 215 | 000309.jpg 216 | 000310.jpg 217 | 000311.jpg 218 | 000312.jpg 219 | 000313.jpg 220 | 000314.jpg 221 | 000315.jpg 222 | 000316.jpg 223 | 000317.jpg 224 | 000318.jpg 225 | 000319.jpg 226 | 000320.jpg 227 | 000321.jpg 228 | 000322.jpg 229 | 000323.jpg 230 | 000324.jpg 231 | 000325.jpg 232 | 000326.jpg 233 | 000327.jpg 234 | 000328.jpg 235 | 000329.jpg 236 | 000330.jpg 237 | 000331.jpg 238 | 000332.jpg 239 | 000333.jpg 240 | 000334.jpg 241 | 000335.jpg 242 | 000336.jpg 243 | 000337.jpg 244 | 000338.jpg 245 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car2.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000192.jpg 190 | 000193.jpg 191 | 000194.jpg 192 | 000195.jpg 193 | 000196.jpg 194 | 000197.jpg 195 | 000198.jpg 196 | 000199.jpg 197 | 000200.jpg 198 | 000201.jpg 199 | 000202.jpg 200 | 000203.jpg 201 | 000204.jpg 202 | 000205.jpg 203 | 000206.jpg 204 | 000207.jpg 205 | 000208.jpg 206 | 000209.jpg 207 | 000210.jpg 208 | 000211.jpg 209 | 000212.jpg 210 | 000213.jpg 211 | 000214.jpg 212 | 000215.jpg 213 | 000216.jpg 214 | 000217.jpg 215 | 000218.jpg 216 | 000219.jpg 217 | 000220.jpg 218 | 000221.jpg 219 | 000222.jpg 220 | 000223.jpg 221 | 000224.jpg 222 | 000225.jpg 223 | 000226.jpg 224 | 000227.jpg 225 | 000228.jpg 226 | 000229.jpg 227 | 000230.jpg 228 | 000231.jpg 229 | 000232.jpg 230 | 000233.jpg 231 | 000234.jpg 232 | 000235.jpg 233 | 000236.jpg 234 | 000237.jpg 235 | 000238.jpg 236 | 000239.jpg 237 | 000240.jpg 238 | 000241.jpg 239 | 000242.jpg 240 | 000243.jpg 241 | 000244.jpg 242 | 000245.jpg 243 | 000246.jpg 244 | 000247.jpg 245 | 000248.jpg 246 | 000249.jpg 247 | 000250.jpg 248 | 000251.jpg 249 | 000252.jpg 250 | 000253.jpg 251 | 000254.jpg 252 | 000255.jpg 253 | 000256.jpg 254 | 000257.jpg 255 | 000258.jpg 256 | 000259.jpg 257 | 000260.jpg 258 | 000261.jpg 259 | 000262.jpg 260 | 000263.jpg 261 | 000264.jpg 262 | 000265.jpg 263 | 000266.jpg 264 | 000267.jpg 265 | 000268.jpg 266 | 000269.jpg 267 | 000270.jpg 268 | 000271.jpg 269 | 000272.jpg 270 | 000273.jpg 271 | 000274.jpg 272 | 000275.jpg 273 | 000276.jpg 274 | 000277.jpg 275 | 000278.jpg 276 | 000279.jpg 277 | 000280.jpg 278 | 000281.jpg 279 | 000282.jpg 280 | 000283.jpg 281 | 000284.jpg 282 | 000285.jpg 283 | 000286.jpg 284 | 000287.jpg 285 | 000288.jpg 286 | 000289.jpg 287 | 000290.jpg 288 | 000291.jpg 289 | 000292.jpg 290 | 000293.jpg 291 | 000294.jpg 292 | 000295.jpg 293 | 000296.jpg 294 | 000297.jpg 295 | 000298.jpg 296 | 000299.jpg 297 | 000300.jpg 298 | 000301.jpg 299 | 000302.jpg 300 | 000303.jpg 301 | 000304.jpg 302 | 000305.jpg 303 | 000306.jpg 304 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car3.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000294.jpg 41 | 000563.jpg 42 | 000564.jpg 43 | 000565.jpg 44 | 000566.jpg 45 | 000567.jpg 46 | 000568.jpg 47 | 000569.jpg 48 | 000570.jpg 49 | 000571.jpg 50 | 000572.jpg 51 | 000573.jpg 52 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car4.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car5.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000233.jpg 234 | 000234.jpg 235 | 000235.jpg 236 | 000236.jpg 237 | 000237.jpg 238 | 000238.jpg 239 | 000239.jpg 240 | 000240.jpg 241 | 000241.jpg 242 | 000242.jpg 243 | 000243.jpg 244 | 000244.jpg 245 | 000245.jpg 246 | 000246.jpg 247 | 000247.jpg 248 | 000248.jpg 249 | 000249.jpg 250 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car8.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000233.jpg 234 | 000234.jpg 235 | 000235.jpg 236 | 000409.jpg 237 | 000410.jpg 238 | 000411.jpg 239 | 000412.jpg 240 | 000413.jpg 241 | 000414.jpg 242 | 000415.jpg 243 | 000416.jpg 244 | 000417.jpg 245 | 000418.jpg 246 | 000419.jpg 247 | 000420.jpg 248 | 000421.jpg 249 | 000422.jpg 250 | 000423.jpg 251 | 000424.jpg 252 | 000425.jpg 253 | 000426.jpg 254 | 000427.jpg 255 | 000428.jpg 256 | 000429.jpg 257 | 000430.jpg 258 | 000431.jpg 259 | 000432.jpg 260 | 000433.jpg 261 | 000434.jpg 262 | 000435.jpg 263 | 000436.jpg 264 | 000437.jpg 265 | 000438.jpg 266 | 000439.jpg 267 | 000440.jpg 268 | 000441.jpg 269 | 000442.jpg 270 | 000443.jpg 271 | 000444.jpg 272 | 000445.jpg 273 | 000446.jpg 274 | 000447.jpg 275 | 000448.jpg 276 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/car9.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000225.jpg 76 | 000623.jpg 77 | 000624.jpg 78 | 000625.jpg 79 | 000626.jpg 80 | 000627.jpg 81 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person1.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000233.jpg 234 | 000234.jpg 235 | 000235.jpg 236 | 000236.jpg 237 | 000237.jpg 238 | 000238.jpg 239 | 000239.jpg 240 | 000240.jpg 241 | 000241.jpg 242 | 000242.jpg 243 | 000243.jpg 244 | 000244.jpg 245 | 000245.jpg 246 | 000246.jpg 247 | 000247.jpg 248 | 000248.jpg 249 | 000249.jpg 250 | 000250.jpg 251 | 000251.jpg 252 | 000252.jpg 253 | 000253.jpg 254 | 000254.jpg 255 | 000255.jpg 256 | 000256.jpg 257 | 000257.jpg 258 | 000258.jpg 259 | 000259.jpg 260 | 000260.jpg 261 | 000261.jpg 262 | 000262.jpg 263 | 000263.jpg 264 | 000264.jpg 265 | 000265.jpg 266 | 000266.jpg 267 | 000267.jpg 268 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person10.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000093.jpg 70 | 000094.jpg 71 | 000095.jpg 72 | 000096.jpg 73 | 000097.jpg 74 | 000098.jpg 75 | 000099.jpg 76 | 000100.jpg 77 | 000101.jpg 78 | 000102.jpg 79 | 000103.jpg 80 | 000104.jpg 81 | 000105.jpg 82 | 000106.jpg 83 | 000107.jpg 84 | 000108.jpg 85 | 000109.jpg 86 | 000110.jpg 87 | 000111.jpg 88 | 000112.jpg 89 | 000113.jpg 90 | 000114.jpg 91 | 000115.jpg 92 | 000116.jpg 93 | 000117.jpg 94 | 000118.jpg 95 | 000119.jpg 96 | 000120.jpg 97 | 000121.jpg 98 | 000122.jpg 99 | 000123.jpg 100 | 000124.jpg 101 | 000125.jpg 102 | 000126.jpg 103 | 000127.jpg 104 | 000128.jpg 105 | 000129.jpg 106 | 000130.jpg 107 | 000131.jpg 108 | 000132.jpg 109 | 000133.jpg 110 | 000134.jpg 111 | 000135.jpg 112 | 000136.jpg 113 | 000137.jpg 114 | 000138.jpg 115 | 000139.jpg 116 | 000140.jpg 117 | 000141.jpg 118 | 000142.jpg 119 | 000143.jpg 120 | 000144.jpg 121 | 000145.jpg 122 | 000146.jpg 123 | 000147.jpg 124 | 000148.jpg 125 | 000149.jpg 126 | 000150.jpg 127 | 000151.jpg 128 | 000152.jpg 129 | 000153.jpg 130 | 000154.jpg 131 | 000155.jpg 132 | 000156.jpg 133 | 000157.jpg 134 | 000158.jpg 135 | 000159.jpg 136 | 000160.jpg 137 | 000161.jpg 138 | 000162.jpg 139 | 000163.jpg 140 | 000164.jpg 141 | 000165.jpg 142 | 000166.jpg 143 | 000167.jpg 144 | 000168.jpg 145 | 000169.jpg 146 | 000170.jpg 147 | 000171.jpg 148 | 000172.jpg 149 | 000173.jpg 150 | 000174.jpg 151 | 000175.jpg 152 | 000176.jpg 153 | 000332.jpg 154 | 000333.jpg 155 | 000334.jpg 156 | 000335.jpg 157 | 000336.jpg 158 | 000337.jpg 159 | 000338.jpg 160 | 000339.jpg 161 | 000340.jpg 162 | 000341.jpg 163 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person12.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000233.jpg 234 | 000234.jpg 235 | 000235.jpg 236 | 000236.jpg 237 | 000237.jpg 238 | 000238.jpg 239 | 000239.jpg 240 | 000240.jpg 241 | 000241.jpg 242 | 000242.jpg 243 | 000243.jpg 244 | 000244.jpg 245 | 000245.jpg 246 | 000246.jpg 247 | 000247.jpg 248 | 000248.jpg 249 | 000249.jpg 250 | 000250.jpg 251 | 000251.jpg 252 | 000252.jpg 253 | 000253.jpg 254 | 000254.jpg 255 | 000255.jpg 256 | 000256.jpg 257 | 000257.jpg 258 | 000258.jpg 259 | 000259.jpg 260 | 000260.jpg 261 | 000261.jpg 262 | 000262.jpg 263 | 000263.jpg 264 | 000264.jpg 265 | 000265.jpg 266 | 000266.jpg 267 | 000267.jpg 268 | 000268.jpg 269 | 000269.jpg 270 | 000270.jpg 271 | 000271.jpg 272 | 000272.jpg 273 | 000273.jpg 274 | 000274.jpg 275 | 000275.jpg 276 | 000276.jpg 277 | 000277.jpg 278 | 000278.jpg 279 | 000279.jpg 280 | 000280.jpg 281 | 000281.jpg 282 | 000282.jpg 283 | 000283.jpg 284 | 000284.jpg 285 | 000285.jpg 286 | 000286.jpg 287 | 000287.jpg 288 | 000288.jpg 289 | 000289.jpg 290 | 000290.jpg 291 | 000291.jpg 292 | 000292.jpg 293 | 000293.jpg 294 | 000294.jpg 295 | 000295.jpg 296 | 000296.jpg 297 | 000297.jpg 298 | 000298.jpg 299 | 000299.jpg 300 | 000300.jpg 301 | 000301.jpg 302 | 000302.jpg 303 | 000303.jpg 304 | 000304.jpg 305 | 000305.jpg 306 | 000306.jpg 307 | 000307.jpg 308 | 000308.jpg 309 | 000332.jpg 310 | 000333.jpg 311 | 000334.jpg 312 | 000335.jpg 313 | 000336.jpg 314 | 000337.jpg 315 | 000338.jpg 316 | 000339.jpg 317 | 000340.jpg 318 | 000341.jpg 319 | 000342.jpg 320 | 000343.jpg 321 | 000344.jpg 322 | 000345.jpg 323 | 000346.jpg 324 | 000347.jpg 325 | 000348.jpg 326 | 000349.jpg 327 | 000350.jpg 328 | 000351.jpg 329 | 000352.jpg 330 | 000353.jpg 331 | 000354.jpg 332 | 000355.jpg 333 | 000356.jpg 334 | 000357.jpg 335 | 000358.jpg 336 | 000359.jpg 337 | 000360.jpg 338 | 000361.jpg 339 | 000362.jpg 340 | 000363.jpg 341 | 000364.jpg 342 | 000365.jpg 343 | 000366.jpg 344 | 000367.jpg 345 | 000368.jpg 346 | 000369.jpg 347 | 000370.jpg 348 | 000371.jpg 349 | 000372.jpg 350 | 000373.jpg 351 | 000374.jpg 352 | 000375.jpg 353 | 000376.jpg 354 | 000377.jpg 355 | 000378.jpg 356 | 000379.jpg 357 | 000380.jpg 358 | 000381.jpg 359 | 000382.jpg 360 | 000383.jpg 361 | 000384.jpg 362 | 000385.jpg 363 | 000386.jpg 364 | 000387.jpg 365 | 000388.jpg 366 | 000389.jpg 367 | 000390.jpg 368 | 000391.jpg 369 | 000392.jpg 370 | 000393.jpg 371 | 000394.jpg 372 | 000395.jpg 373 | 000396.jpg 374 | 000397.jpg 375 | 000398.jpg 376 | 000399.jpg 377 | 000400.jpg 378 | 000401.jpg 379 | 000402.jpg 380 | 000403.jpg 381 | 000404.jpg 382 | 000405.jpg 383 | 000406.jpg 384 | 000407.jpg 385 | 000408.jpg 386 | 000409.jpg 387 | 000410.jpg 388 | 000411.jpg 389 | 000412.jpg 390 | 000413.jpg 391 | 000414.jpg 392 | 000430.jpg 393 | 000431.jpg 394 | 000432.jpg 395 | 000433.jpg 396 | 000434.jpg 397 | 000435.jpg 398 | 000436.jpg 399 | 000437.jpg 400 | 000438.jpg 401 | 000439.jpg 402 | 000440.jpg 403 | 000441.jpg 404 | 000442.jpg 405 | 000443.jpg 406 | 000444.jpg 407 | 000445.jpg 408 | 000446.jpg 409 | 000447.jpg 410 | 000448.jpg 411 | 000449.jpg 412 | 000450.jpg 413 | 000451.jpg 414 | 000452.jpg 415 | 000453.jpg 416 | 000454.jpg 417 | 000455.jpg 418 | 000456.jpg 419 | 000457.jpg 420 | 000458.jpg 421 | 000459.jpg 422 | 000460.jpg 423 | 000461.jpg 424 | 000462.jpg 425 | 000463.jpg 426 | 000464.jpg 427 | 000465.jpg 428 | 000466.jpg 429 | 000467.jpg 430 | 000468.jpg 431 | 000469.jpg 432 | 000470.jpg 433 | 000471.jpg 434 | 000472.jpg 435 | 000473.jpg 436 | 000474.jpg 437 | 000475.jpg 438 | 000476.jpg 439 | 000477.jpg 440 | 000478.jpg 441 | 000479.jpg 442 | 000480.jpg 443 | 000481.jpg 444 | 000482.jpg 445 | 000483.jpg 446 | 000484.jpg 447 | 000485.jpg 448 | 000486.jpg 449 | 000487.jpg 450 | 000488.jpg 451 | 000489.jpg 452 | 000490.jpg 453 | 000491.jpg 454 | 000492.jpg 455 | 000493.jpg 456 | 000494.jpg 457 | 000495.jpg 458 | 000496.jpg 459 | 000497.jpg 460 | 000498.jpg 461 | 000499.jpg 462 | 000500.jpg 463 | 000501.jpg 464 | 000502.jpg 465 | 000503.jpg 466 | 000504.jpg 467 | 000505.jpg 468 | 000506.jpg 469 | 000507.jpg 470 | 000508.jpg 471 | 000509.jpg 472 | 000510.jpg 473 | 000511.jpg 474 | 000512.jpg 475 | 000513.jpg 476 | 000514.jpg 477 | 000515.jpg 478 | 000516.jpg 479 | 000517.jpg 480 | 000518.jpg 481 | 000519.jpg 482 | 000520.jpg 483 | 000521.jpg 484 | 000522.jpg 485 | 000523.jpg 486 | 000524.jpg 487 | 000525.jpg 488 | 000526.jpg 489 | 000527.jpg 490 | 000528.jpg 491 | 000529.jpg 492 | 000530.jpg 493 | 000531.jpg 494 | 000532.jpg 495 | 000533.jpg 496 | 000534.jpg 497 | 000535.jpg 498 | 000536.jpg 499 | 000537.jpg 500 | 000538.jpg 501 | 000539.jpg 502 | 000540.jpg 503 | 000541.jpg 504 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person13.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person14.txt: -------------------------------------------------------------------------------- 1 | 000108.jpg 2 | 000109.jpg 3 | 000110.jpg 4 | 000111.jpg 5 | 000112.jpg 6 | 000113.jpg 7 | 000114.jpg 8 | 000115.jpg 9 | 000116.jpg 10 | 000117.jpg 11 | 000118.jpg 12 | 000119.jpg 13 | 000120.jpg 14 | 000121.jpg 15 | 000122.jpg 16 | 000123.jpg 17 | 000124.jpg 18 | 000125.jpg 19 | 000126.jpg 20 | 000127.jpg 21 | 000128.jpg 22 | 000129.jpg 23 | 000130.jpg 24 | 000131.jpg 25 | 000132.jpg 26 | 000133.jpg 27 | 000134.jpg 28 | 000135.jpg 29 | 000136.jpg 30 | 000137.jpg 31 | 000138.jpg 32 | 000139.jpg 33 | 000140.jpg 34 | 000141.jpg 35 | 000142.jpg 36 | 000143.jpg 37 | 000144.jpg 38 | 000145.jpg 39 | 000146.jpg 40 | 000147.jpg 41 | 000148.jpg 42 | 000149.jpg 43 | 000150.jpg 44 | 000151.jpg 45 | 000152.jpg 46 | 000153.jpg 47 | 000154.jpg 48 | 000155.jpg 49 | 000156.jpg 50 | 000157.jpg 51 | 000158.jpg 52 | 000159.jpg 53 | 000160.jpg 54 | 000161.jpg 55 | 000162.jpg 56 | 000163.jpg 57 | 000164.jpg 58 | 000165.jpg 59 | 000166.jpg 60 | 000167.jpg 61 | 000168.jpg 62 | 000169.jpg 63 | 000170.jpg 64 | 000171.jpg 65 | 000172.jpg 66 | 000173.jpg 67 | 000174.jpg 68 | 000175.jpg 69 | 000176.jpg 70 | 000177.jpg 71 | 000178.jpg 72 | 000179.jpg 73 | 000180.jpg 74 | 000181.jpg 75 | 000182.jpg 76 | 000183.jpg 77 | 000184.jpg 78 | 000185.jpg 79 | 000186.jpg 80 | 000187.jpg 81 | 000188.jpg 82 | 000189.jpg 83 | 000190.jpg 84 | 000191.jpg 85 | 000192.jpg 86 | 000193.jpg 87 | 000194.jpg 88 | 000195.jpg 89 | 000196.jpg 90 | 000197.jpg 91 | 000198.jpg 92 | 000199.jpg 93 | 000200.jpg 94 | 000201.jpg 95 | 000202.jpg 96 | 000203.jpg 97 | 000204.jpg 98 | 000205.jpg 99 | 000206.jpg 100 | 000207.jpg 101 | 000208.jpg 102 | 000209.jpg 103 | 000210.jpg 104 | 000211.jpg 105 | 000212.jpg 106 | 000213.jpg 107 | 000214.jpg 108 | 000215.jpg 109 | 000216.jpg 110 | 000217.jpg 111 | 000218.jpg 112 | 000219.jpg 113 | 000220.jpg 114 | 000221.jpg 115 | 000222.jpg 116 | 000223.jpg 117 | 000224.jpg 118 | 000225.jpg 119 | 000226.jpg 120 | 000227.jpg 121 | 000228.jpg 122 | 000229.jpg 123 | 000230.jpg 124 | 000231.jpg 125 | 000232.jpg 126 | 000233.jpg 127 | 000234.jpg 128 | 000235.jpg 129 | 000236.jpg 130 | 000237.jpg 131 | 000238.jpg 132 | 000239.jpg 133 | 000240.jpg 134 | 000241.jpg 135 | 000242.jpg 136 | 000243.jpg 137 | 000244.jpg 138 | 000245.jpg 139 | 000246.jpg 140 | 000247.jpg 141 | 000248.jpg 142 | 000249.jpg 143 | 000250.jpg 144 | 000251.jpg 145 | 000252.jpg 146 | 000253.jpg 147 | 000254.jpg 148 | 000255.jpg 149 | 000256.jpg 150 | 000257.jpg 151 | 000258.jpg 152 | 000259.jpg 153 | 000260.jpg 154 | 000261.jpg 155 | 000262.jpg 156 | 000263.jpg 157 | 000264.jpg 158 | 000265.jpg 159 | 000266.jpg 160 | 000267.jpg 161 | 000268.jpg 162 | 000269.jpg 163 | 000270.jpg 164 | 000271.jpg 165 | 000272.jpg 166 | 000273.jpg 167 | 000274.jpg 168 | 000275.jpg 169 | 000276.jpg 170 | 000277.jpg 171 | 000278.jpg 172 | 000279.jpg 173 | 000280.jpg 174 | 000281.jpg 175 | 000282.jpg 176 | 000283.jpg 177 | 000284.jpg 178 | 000285.jpg 179 | 000286.jpg 180 | 000287.jpg 181 | 000288.jpg 182 | 000289.jpg 183 | 000290.jpg 184 | 000291.jpg 185 | 000292.jpg 186 | 000293.jpg 187 | 000294.jpg 188 | 000295.jpg 189 | 000296.jpg 190 | 000297.jpg 191 | 000298.jpg 192 | 000299.jpg 193 | 000300.jpg 194 | 000301.jpg 195 | 000302.jpg 196 | 000303.jpg 197 | 000304.jpg 198 | 000305.jpg 199 | 000306.jpg 200 | 000307.jpg 201 | 000308.jpg 202 | 000309.jpg 203 | 000310.jpg 204 | 000311.jpg 205 | 000312.jpg 206 | 000313.jpg 207 | 000314.jpg 208 | 000315.jpg 209 | 000316.jpg 210 | 000317.jpg 211 | 000318.jpg 212 | 000319.jpg 213 | 000320.jpg 214 | 000321.jpg 215 | 000322.jpg 216 | 000323.jpg 217 | 000324.jpg 218 | 000325.jpg 219 | 000326.jpg 220 | 000327.jpg 221 | 000328.jpg 222 | 000329.jpg 223 | 000330.jpg 224 | 000331.jpg 225 | 000332.jpg 226 | 000333.jpg 227 | 000334.jpg 228 | 000335.jpg 229 | 000336.jpg 230 | 000337.jpg 231 | 000338.jpg 232 | 000339.jpg 233 | 000340.jpg 234 | 000341.jpg 235 | 000342.jpg 236 | 000343.jpg 237 | 000344.jpg 238 | 000345.jpg 239 | 000346.jpg 240 | 000347.jpg 241 | 000348.jpg 242 | 000349.jpg 243 | 000350.jpg 244 | 000351.jpg 245 | 000352.jpg 246 | 000353.jpg 247 | 000354.jpg 248 | 000355.jpg 249 | 000356.jpg 250 | 000357.jpg 251 | 000358.jpg 252 | 000359.jpg 253 | 000360.jpg 254 | 000361.jpg 255 | 000362.jpg 256 | 000363.jpg 257 | 000364.jpg 258 | 000365.jpg 259 | 000366.jpg 260 | 000367.jpg 261 | 000368.jpg 262 | 000369.jpg 263 | 000370.jpg 264 | 000371.jpg 265 | 000372.jpg 266 | 000373.jpg 267 | 000374.jpg 268 | 000375.jpg 269 | 000376.jpg 270 | 000377.jpg 271 | 000378.jpg 272 | 000379.jpg 273 | 000380.jpg 274 | 000381.jpg 275 | 000382.jpg 276 | 000383.jpg 277 | 000384.jpg 278 | 000385.jpg 279 | 000386.jpg 280 | 000387.jpg 281 | 000388.jpg 282 | 000389.jpg 283 | 000390.jpg 284 | 000391.jpg 285 | 000392.jpg 286 | 000393.jpg 287 | 000394.jpg 288 | 000395.jpg 289 | 000396.jpg 290 | 000397.jpg 291 | 000398.jpg 292 | 000399.jpg 293 | 000400.jpg 294 | 000401.jpg 295 | 000402.jpg 296 | 000403.jpg 297 | 000404.jpg 298 | 000405.jpg 299 | 000406.jpg 300 | 000407.jpg 301 | 000408.jpg 302 | 000409.jpg 303 | 000410.jpg 304 | 000411.jpg 305 | 000412.jpg 306 | 000413.jpg 307 | 000414.jpg 308 | 000415.jpg 309 | 000416.jpg 310 | 000417.jpg 311 | 000418.jpg 312 | 000419.jpg 313 | 000420.jpg 314 | 000421.jpg 315 | 000422.jpg 316 | 000423.jpg 317 | 000424.jpg 318 | 000425.jpg 319 | 000426.jpg 320 | 000427.jpg 321 | 000428.jpg 322 | 000429.jpg 323 | 000430.jpg 324 | 000431.jpg 325 | 000432.jpg 326 | 000433.jpg 327 | 000434.jpg 328 | 000435.jpg 329 | 000436.jpg 330 | 000437.jpg 331 | 000438.jpg 332 | 000439.jpg 333 | 000440.jpg 334 | 000441.jpg 335 | 000442.jpg 336 | 000443.jpg 337 | 000444.jpg 338 | 000445.jpg 339 | 000446.jpg 340 | 000447.jpg 341 | 000448.jpg 342 | 000449.jpg 343 | 000450.jpg 344 | 000451.jpg 345 | 000452.jpg 346 | 000453.jpg 347 | 000454.jpg 348 | 000455.jpg 349 | 000456.jpg 350 | 000457.jpg 351 | 000458.jpg 352 | 000459.jpg 353 | 000460.jpg 354 | 000461.jpg 355 | 000462.jpg 356 | 000463.jpg 357 | 000464.jpg 358 | 000465.jpg 359 | 000466.jpg 360 | 000467.jpg 361 | 000468.jpg 362 | 000469.jpg 363 | 000470.jpg 364 | 000471.jpg 365 | 000472.jpg 366 | 000473.jpg 367 | 000474.jpg 368 | 000475.jpg 369 | 000476.jpg 370 | 000477.jpg 371 | 000478.jpg 372 | 000479.jpg 373 | 000480.jpg 374 | 000481.jpg 375 | 000482.jpg 376 | 000483.jpg 377 | 000484.jpg 378 | 000485.jpg 379 | 000486.jpg 380 | 000487.jpg 381 | 000488.jpg 382 | 000489.jpg 383 | 000490.jpg 384 | 000491.jpg 385 | 000492.jpg 386 | 000493.jpg 387 | 000494.jpg 388 | 000495.jpg 389 | 000496.jpg 390 | 000497.jpg 391 | 000498.jpg 392 | 000499.jpg 393 | 000500.jpg 394 | 000501.jpg 395 | 000502.jpg 396 | 000503.jpg 397 | 000504.jpg 398 | 000505.jpg 399 | 000506.jpg 400 | 000507.jpg 401 | 000508.jpg 402 | 000509.jpg 403 | 000510.jpg 404 | 000511.jpg 405 | 000512.jpg 406 | 000513.jpg 407 | 000514.jpg 408 | 000515.jpg 409 | 000516.jpg 410 | 000517.jpg 411 | 000518.jpg 412 | 000519.jpg 413 | 000520.jpg 414 | 000521.jpg 415 | 000522.jpg 416 | 000523.jpg 417 | 000524.jpg 418 | 000525.jpg 419 | 000526.jpg 420 | 000527.jpg 421 | 000528.jpg 422 | 000529.jpg 423 | 000530.jpg 424 | 000531.jpg 425 | 000532.jpg 426 | 000533.jpg 427 | 000534.jpg 428 | 000535.jpg 429 | 000536.jpg 430 | 000537.jpg 431 | 000538.jpg 432 | 000539.jpg 433 | 000540.jpg 434 | 000541.jpg 435 | 000542.jpg 436 | 000543.jpg 437 | 000544.jpg 438 | 000545.jpg 439 | 000546.jpg 440 | 000547.jpg 441 | 000548.jpg 442 | 000549.jpg 443 | 000550.jpg 444 | 000551.jpg 445 | 000552.jpg 446 | 000553.jpg 447 | 000554.jpg 448 | 000555.jpg 449 | 000556.jpg 450 | 000557.jpg 451 | 000558.jpg 452 | 000559.jpg 453 | 000560.jpg 454 | 000561.jpg 455 | 000562.jpg 456 | 000563.jpg 457 | 000564.jpg 458 | 000565.jpg 459 | 000566.jpg 460 | 000567.jpg 461 | 000568.jpg 462 | 000569.jpg 463 | 000570.jpg 464 | 000571.jpg 465 | 000572.jpg 466 | 000573.jpg 467 | 000574.jpg 468 | 000575.jpg 469 | 000576.jpg 470 | 000577.jpg 471 | 000578.jpg 472 | 000579.jpg 473 | 000580.jpg 474 | 000581.jpg 475 | 000582.jpg 476 | 000583.jpg 477 | 000584.jpg 478 | 000585.jpg 479 | 000586.jpg 480 | 000587.jpg 481 | 000588.jpg 482 | 000589.jpg 483 | 000590.jpg 484 | 000591.jpg 485 | 000592.jpg 486 | 000593.jpg 487 | 000594.jpg 488 | 000595.jpg 489 | 000596.jpg 490 | 000597.jpg 491 | 000598.jpg 492 | 000599.jpg 493 | 000600.jpg 494 | 000601.jpg 495 | 000602.jpg 496 | 000603.jpg 497 | 000604.jpg 498 | 000605.jpg 499 | 000606.jpg 500 | 000607.jpg 501 | 000608.jpg 502 | 000609.jpg 503 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person15.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000184.jpg 3 | 000185.jpg 4 | 000186.jpg 5 | 000187.jpg 6 | 000188.jpg 7 | 000189.jpg 8 | 000190.jpg 9 | 000191.jpg 10 | 000192.jpg 11 | 000193.jpg 12 | 000194.jpg 13 | 000195.jpg 14 | 000196.jpg 15 | 000197.jpg 16 | 000198.jpg 17 | 000199.jpg 18 | 000200.jpg 19 | 000201.jpg 20 | 000202.jpg 21 | 000203.jpg 22 | 000204.jpg 23 | 000205.jpg 24 | 000206.jpg 25 | 000207.jpg 26 | 000208.jpg 27 | 000209.jpg 28 | 000210.jpg 29 | 000211.jpg 30 | 000212.jpg 31 | 000213.jpg 32 | 000214.jpg 33 | 000215.jpg 34 | 000216.jpg 35 | 000217.jpg 36 | 000218.jpg 37 | 000219.jpg 38 | 000220.jpg 39 | 000221.jpg 40 | 000222.jpg 41 | 000223.jpg 42 | 000224.jpg 43 | 000225.jpg 44 | 000226.jpg 45 | 000227.jpg 46 | 000228.jpg 47 | 000229.jpg 48 | 000230.jpg 49 | 000231.jpg 50 | 000232.jpg 51 | 000233.jpg 52 | 000234.jpg 53 | 000235.jpg 54 | 000236.jpg 55 | 000237.jpg 56 | 000238.jpg 57 | 000239.jpg 58 | 000240.jpg 59 | 000241.jpg 60 | 000242.jpg 61 | 000243.jpg 62 | 000244.jpg 63 | 000245.jpg 64 | 000246.jpg 65 | 000247.jpg 66 | 000248.jpg 67 | 000249.jpg 68 | 000250.jpg 69 | 000251.jpg 70 | 000252.jpg 71 | 000253.jpg 72 | 000254.jpg 73 | 000255.jpg 74 | 000256.jpg 75 | 000257.jpg 76 | 000258.jpg 77 | 000259.jpg 78 | 000260.jpg 79 | 000261.jpg 80 | 000262.jpg 81 | 000263.jpg 82 | 000264.jpg 83 | 000265.jpg 84 | 000266.jpg 85 | 000267.jpg 86 | 000268.jpg 87 | 000269.jpg 88 | 000270.jpg 89 | 000271.jpg 90 | 000272.jpg 91 | 000273.jpg 92 | 000274.jpg 93 | 000275.jpg 94 | 000276.jpg 95 | 000277.jpg 96 | 000278.jpg 97 | 000432.jpg 98 | 000433.jpg 99 | 000434.jpg 100 | 000435.jpg 101 | 000436.jpg 102 | 000437.jpg 103 | 000438.jpg 104 | 000439.jpg 105 | 000440.jpg 106 | 000441.jpg 107 | 000442.jpg 108 | 000443.jpg 109 | 000444.jpg 110 | 000445.jpg 111 | 000446.jpg 112 | 000447.jpg 113 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person16.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000082.jpg 49 | 000083.jpg 50 | 000084.jpg 51 | 000085.jpg 52 | 000086.jpg 53 | 000087.jpg 54 | 000088.jpg 55 | 000089.jpg 56 | 000090.jpg 57 | 000091.jpg 58 | 000092.jpg 59 | 000093.jpg 60 | 000094.jpg 61 | 000095.jpg 62 | 000096.jpg 63 | 000097.jpg 64 | 000098.jpg 65 | 000099.jpg 66 | 000100.jpg 67 | 000101.jpg 68 | 000102.jpg 69 | 000103.jpg 70 | 000104.jpg 71 | 000105.jpg 72 | 000106.jpg 73 | 000107.jpg 74 | 000108.jpg 75 | 000109.jpg 76 | 000110.jpg 77 | 000111.jpg 78 | 000112.jpg 79 | 000113.jpg 80 | 000114.jpg 81 | 000115.jpg 82 | 000116.jpg 83 | 000117.jpg 84 | 000118.jpg 85 | 000119.jpg 86 | 000120.jpg 87 | 000121.jpg 88 | 000122.jpg 89 | 000123.jpg 90 | 000124.jpg 91 | 000125.jpg 92 | 000126.jpg 93 | 000127.jpg 94 | 000128.jpg 95 | 000129.jpg 96 | 000130.jpg 97 | 000131.jpg 98 | 000132.jpg 99 | 000133.jpg 100 | 000134.jpg 101 | 000135.jpg 102 | 000136.jpg 103 | 000137.jpg 104 | 000138.jpg 105 | 000139.jpg 106 | 000140.jpg 107 | 000141.jpg 108 | 000142.jpg 109 | 000143.jpg 110 | 000144.jpg 111 | 000145.jpg 112 | 000146.jpg 113 | 000147.jpg 114 | 000148.jpg 115 | 000149.jpg 116 | 000150.jpg 117 | 000151.jpg 118 | 000152.jpg 119 | 000153.jpg 120 | 000154.jpg 121 | 000155.jpg 122 | 000156.jpg 123 | 000157.jpg 124 | 000158.jpg 125 | 000159.jpg 126 | 000160.jpg 127 | 000161.jpg 128 | 000162.jpg 129 | 000163.jpg 130 | 000164.jpg 131 | 000165.jpg 132 | 000166.jpg 133 | 000167.jpg 134 | 000168.jpg 135 | 000169.jpg 136 | 000170.jpg 137 | 000171.jpg 138 | 000172.jpg 139 | 000173.jpg 140 | 000174.jpg 141 | 000175.jpg 142 | 000176.jpg 143 | 000177.jpg 144 | 000178.jpg 145 | 000179.jpg 146 | 000180.jpg 147 | 000181.jpg 148 | 000182.jpg 149 | 000183.jpg 150 | 000184.jpg 151 | 000185.jpg 152 | 000186.jpg 153 | 000187.jpg 154 | 000188.jpg 155 | 000189.jpg 156 | 000190.jpg 157 | 000191.jpg 158 | 000192.jpg 159 | 000193.jpg 160 | 000194.jpg 161 | 000195.jpg 162 | 000196.jpg 163 | 000197.jpg 164 | 000198.jpg 165 | 000199.jpg 166 | 000200.jpg 167 | 000201.jpg 168 | 000202.jpg 169 | 000203.jpg 170 | 000204.jpg 171 | 000223.jpg 172 | 000224.jpg 173 | 000225.jpg 174 | 000226.jpg 175 | 000227.jpg 176 | 000228.jpg 177 | 000229.jpg 178 | 000230.jpg 179 | 000231.jpg 180 | 000232.jpg 181 | 000233.jpg 182 | 000234.jpg 183 | 000235.jpg 184 | 000236.jpg 185 | 000237.jpg 186 | 000238.jpg 187 | 000239.jpg 188 | 000240.jpg 189 | 000241.jpg 190 | 000242.jpg 191 | 000243.jpg 192 | 000244.jpg 193 | 000245.jpg 194 | 000246.jpg 195 | 000247.jpg 196 | 000248.jpg 197 | 000249.jpg 198 | 000250.jpg 199 | 000251.jpg 200 | 000252.jpg 201 | 000253.jpg 202 | 000254.jpg 203 | 000255.jpg 204 | 000256.jpg 205 | 000257.jpg 206 | 000258.jpg 207 | 000259.jpg 208 | 000260.jpg 209 | 000261.jpg 210 | 000262.jpg 211 | 000263.jpg 212 | 000264.jpg 213 | 000265.jpg 214 | 000266.jpg 215 | 000267.jpg 216 | 000268.jpg 217 | 000269.jpg 218 | 000270.jpg 219 | 000271.jpg 220 | 000272.jpg 221 | 000273.jpg 222 | 000274.jpg 223 | 000275.jpg 224 | 000276.jpg 225 | 000277.jpg 226 | 000278.jpg 227 | 000279.jpg 228 | 000280.jpg 229 | 000281.jpg 230 | 000282.jpg 231 | 000283.jpg 232 | 000284.jpg 233 | 000285.jpg 234 | 000286.jpg 235 | 000287.jpg 236 | 000288.jpg 237 | 000289.jpg 238 | 000290.jpg 239 | 000291.jpg 240 | 000292.jpg 241 | 000293.jpg 242 | 000294.jpg 243 | 000295.jpg 244 | 000296.jpg 245 | 000297.jpg 246 | 000298.jpg 247 | 000299.jpg 248 | 000300.jpg 249 | 000301.jpg 250 | 000302.jpg 251 | 000303.jpg 252 | 000304.jpg 253 | 000305.jpg 254 | 000306.jpg 255 | 000307.jpg 256 | 000308.jpg 257 | 000309.jpg 258 | 000310.jpg 259 | 000311.jpg 260 | 000312.jpg 261 | 000313.jpg 262 | 000314.jpg 263 | 000315.jpg 264 | 000316.jpg 265 | 000317.jpg 266 | 000318.jpg 267 | 000319.jpg 268 | 000320.jpg 269 | 000321.jpg 270 | 000322.jpg 271 | 000323.jpg 272 | 000324.jpg 273 | 000325.jpg 274 | 000326.jpg 275 | 000327.jpg 276 | 000328.jpg 277 | 000329.jpg 278 | 000330.jpg 279 | 000331.jpg 280 | 000332.jpg 281 | 000333.jpg 282 | 000334.jpg 283 | 000335.jpg 284 | 000336.jpg 285 | 000337.jpg 286 | 000338.jpg 287 | 000339.jpg 288 | 000340.jpg 289 | 000341.jpg 290 | 000342.jpg 291 | 000343.jpg 292 | 000344.jpg 293 | 000345.jpg 294 | 000346.jpg 295 | 000347.jpg 296 | 000348.jpg 297 | 000349.jpg 298 | 000350.jpg 299 | 000351.jpg 300 | 000352.jpg 301 | 000353.jpg 302 | 000354.jpg 303 | 000355.jpg 304 | 000356.jpg 305 | 000357.jpg 306 | 000358.jpg 307 | 000359.jpg 308 | 000360.jpg 309 | 000361.jpg 310 | 000362.jpg 311 | 000363.jpg 312 | 000364.jpg 313 | 000365.jpg 314 | 000366.jpg 315 | 000367.jpg 316 | 000368.jpg 317 | 000369.jpg 318 | 000370.jpg 319 | 000371.jpg 320 | 000372.jpg 321 | 000373.jpg 322 | 000374.jpg 323 | 000375.jpg 324 | 000376.jpg 325 | 000377.jpg 326 | 000378.jpg 327 | 000379.jpg 328 | 000380.jpg 329 | 000381.jpg 330 | 000382.jpg 331 | 000383.jpg 332 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person17.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000205.jpg 192 | 000206.jpg 193 | 000207.jpg 194 | 000208.jpg 195 | 000209.jpg 196 | 000210.jpg 197 | 000211.jpg 198 | 000212.jpg 199 | 000213.jpg 200 | 000214.jpg 201 | 000215.jpg 202 | 000216.jpg 203 | 000217.jpg 204 | 000218.jpg 205 | 000219.jpg 206 | 000220.jpg 207 | 000221.jpg 208 | 000222.jpg 209 | 000223.jpg 210 | 000224.jpg 211 | 000225.jpg 212 | 000226.jpg 213 | 000227.jpg 214 | 000228.jpg 215 | 000229.jpg 216 | 000230.jpg 217 | 000231.jpg 218 | 000232.jpg 219 | 000233.jpg 220 | 000234.jpg 221 | 000235.jpg 222 | 000236.jpg 223 | 000237.jpg 224 | 000238.jpg 225 | 000239.jpg 226 | 000240.jpg 227 | 000241.jpg 228 | 000242.jpg 229 | 000243.jpg 230 | 000244.jpg 231 | 000245.jpg 232 | 000246.jpg 233 | 000247.jpg 234 | 000248.jpg 235 | 000249.jpg 236 | 000250.jpg 237 | 000251.jpg 238 | 000252.jpg 239 | 000253.jpg 240 | 000254.jpg 241 | 000255.jpg 242 | 000256.jpg 243 | 000257.jpg 244 | 000258.jpg 245 | 000259.jpg 246 | 000260.jpg 247 | 000261.jpg 248 | 000262.jpg 249 | 000263.jpg 250 | 000264.jpg 251 | 000265.jpg 252 | 000266.jpg 253 | 000267.jpg 254 | 000268.jpg 255 | 000269.jpg 256 | 000270.jpg 257 | 000271.jpg 258 | 000272.jpg 259 | 000273.jpg 260 | 000274.jpg 261 | 000275.jpg 262 | 000276.jpg 263 | 000277.jpg 264 | 000278.jpg 265 | 000279.jpg 266 | 000280.jpg 267 | 000281.jpg 268 | 000282.jpg 269 | 000283.jpg 270 | 000284.jpg 271 | 000285.jpg 272 | 000286.jpg 273 | 000287.jpg 274 | 000288.jpg 275 | 000289.jpg 276 | 000290.jpg 277 | 000291.jpg 278 | 000292.jpg 279 | 000293.jpg 280 | 000294.jpg 281 | 000295.jpg 282 | 000296.jpg 283 | 000297.jpg 284 | 000298.jpg 285 | 000299.jpg 286 | 000300.jpg 287 | 000301.jpg 288 | 000302.jpg 289 | 000303.jpg 290 | 000304.jpg 291 | 000305.jpg 292 | 000306.jpg 293 | 000307.jpg 294 | 000308.jpg 295 | 000309.jpg 296 | 000310.jpg 297 | 000311.jpg 298 | 000312.jpg 299 | 000313.jpg 300 | 000314.jpg 301 | 000315.jpg 302 | 000316.jpg 303 | 000317.jpg 304 | 000318.jpg 305 | 000319.jpg 306 | 000320.jpg 307 | 000321.jpg 308 | 000322.jpg 309 | 000323.jpg 310 | 000324.jpg 311 | 000325.jpg 312 | 000326.jpg 313 | 000327.jpg 314 | 000328.jpg 315 | 000329.jpg 316 | 000330.jpg 317 | 000331.jpg 318 | 000332.jpg 319 | 000333.jpg 320 | 000334.jpg 321 | 000335.jpg 322 | 000336.jpg 323 | 000337.jpg 324 | 000338.jpg 325 | 000339.jpg 326 | 000340.jpg 327 | 000341.jpg 328 | 000342.jpg 329 | 000343.jpg 330 | 000344.jpg 331 | 000345.jpg 332 | 000346.jpg 333 | 000347.jpg 334 | 000348.jpg 335 | 000349.jpg 336 | 000350.jpg 337 | 000351.jpg 338 | 000352.jpg 339 | 000353.jpg 340 | 000354.jpg 341 | 000355.jpg 342 | 000356.jpg 343 | 000357.jpg 344 | 000358.jpg 345 | 000359.jpg 346 | 000360.jpg 347 | 000361.jpg 348 | 000362.jpg 349 | 000363.jpg 350 | 000364.jpg 351 | 000365.jpg 352 | 000366.jpg 353 | 000367.jpg 354 | 000368.jpg 355 | 000369.jpg 356 | 000370.jpg 357 | 000371.jpg 358 | 000372.jpg 359 | 000373.jpg 360 | 000374.jpg 361 | 000375.jpg 362 | 000376.jpg 363 | 000377.jpg 364 | 000378.jpg 365 | 000379.jpg 366 | 000380.jpg 367 | 000381.jpg 368 | 000382.jpg 369 | 000383.jpg 370 | 000384.jpg 371 | 000385.jpg 372 | 000386.jpg 373 | 000387.jpg 374 | 000388.jpg 375 | 000389.jpg 376 | 000390.jpg 377 | 000391.jpg 378 | 000392.jpg 379 | 000393.jpg 380 | 000394.jpg 381 | 000395.jpg 382 | 000396.jpg 383 | 000397.jpg 384 | 000398.jpg 385 | 000399.jpg 386 | 000400.jpg 387 | 000401.jpg 388 | 000402.jpg 389 | 000403.jpg 390 | 000404.jpg 391 | 000405.jpg 392 | 000406.jpg 393 | 000407.jpg 394 | 000408.jpg 395 | 000409.jpg 396 | 000410.jpg 397 | 000411.jpg 398 | 000412.jpg 399 | 000413.jpg 400 | 000414.jpg 401 | 000415.jpg 402 | 000416.jpg 403 | 000417.jpg 404 | 000418.jpg 405 | 000419.jpg 406 | 000420.jpg 407 | 000421.jpg 408 | 000422.jpg 409 | 000423.jpg 410 | 000424.jpg 411 | 000425.jpg 412 | 000426.jpg 413 | 000427.jpg 414 | 000428.jpg 415 | 000429.jpg 416 | 000430.jpg 417 | 000431.jpg 418 | 000432.jpg 419 | 000433.jpg 420 | 000434.jpg 421 | 000435.jpg 422 | 000436.jpg 423 | 000437.jpg 424 | 000438.jpg 425 | 000439.jpg 426 | 000440.jpg 427 | 000441.jpg 428 | 000442.jpg 429 | 000443.jpg 430 | 000444.jpg 431 | 000445.jpg 432 | 000446.jpg 433 | 000447.jpg 434 | 000448.jpg 435 | 000449.jpg 436 | 000450.jpg 437 | 000451.jpg 438 | 000452.jpg 439 | 000453.jpg 440 | 000454.jpg 441 | 000455.jpg 442 | 000456.jpg 443 | 000457.jpg 444 | 000458.jpg 445 | 000459.jpg 446 | 000460.jpg 447 | 000461.jpg 448 | 000462.jpg 449 | 000463.jpg 450 | 000464.jpg 451 | 000465.jpg 452 | 000466.jpg 453 | 000467.jpg 454 | 000468.jpg 455 | 000482.jpg 456 | 000483.jpg 457 | 000484.jpg 458 | 000485.jpg 459 | 000486.jpg 460 | 000487.jpg 461 | 000488.jpg 462 | 000489.jpg 463 | 000490.jpg 464 | 000491.jpg 465 | 000492.jpg 466 | 000493.jpg 467 | 000494.jpg 468 | 000495.jpg 469 | 000496.jpg 470 | 000497.jpg 471 | 000498.jpg 472 | 000499.jpg 473 | 000500.jpg 474 | 000501.jpg 475 | 000502.jpg 476 | 000503.jpg 477 | 000504.jpg 478 | 000505.jpg 479 | 000506.jpg 480 | 000507.jpg 481 | 000508.jpg 482 | 000509.jpg 483 | 000510.jpg 484 | 000511.jpg 485 | 000512.jpg 486 | 000513.jpg 487 | 000514.jpg 488 | 000515.jpg 489 | 000516.jpg 490 | 000517.jpg 491 | 000518.jpg 492 | 000519.jpg 493 | 000520.jpg 494 | 000521.jpg 495 | 000522.jpg 496 | 000523.jpg 497 | 000524.jpg 498 | 000525.jpg 499 | 000526.jpg 500 | 000527.jpg 501 | 000528.jpg 502 | 000529.jpg 503 | 000530.jpg 504 | 000531.jpg 505 | 000532.jpg 506 | 000533.jpg 507 | 000534.jpg 508 | 000535.jpg 509 | 000536.jpg 510 | 000537.jpg 511 | 000538.jpg 512 | 000539.jpg 513 | 000540.jpg 514 | 000541.jpg 515 | 000542.jpg 516 | 000543.jpg 517 | 000544.jpg 518 | 000557.jpg 519 | 000558.jpg 520 | 000559.jpg 521 | 000560.jpg 522 | 000561.jpg 523 | 000562.jpg 524 | 000563.jpg 525 | 000564.jpg 526 | 000565.jpg 527 | 000566.jpg 528 | 000567.jpg 529 | 000568.jpg 530 | 000569.jpg 531 | 000570.jpg 532 | 000571.jpg 533 | 000572.jpg 534 | 000573.jpg 535 | 000574.jpg 536 | 000575.jpg 537 | 000576.jpg 538 | 000577.jpg 539 | 000578.jpg 540 | 000579.jpg 541 | 000580.jpg 542 | 000581.jpg 543 | 000582.jpg 544 | 000583.jpg 545 | 000584.jpg 546 | 000585.jpg 547 | 000586.jpg 548 | 000587.jpg 549 | 000588.jpg 550 | 000589.jpg 551 | 000590.jpg 552 | 000591.jpg 553 | 000592.jpg 554 | 000593.jpg 555 | 000594.jpg 556 | 000595.jpg 557 | 000596.jpg 558 | 000597.jpg 559 | 000598.jpg 560 | 000599.jpg 561 | 000600.jpg 562 | 000601.jpg 563 | 000602.jpg 564 | 000603.jpg 565 | 000604.jpg 566 | 000605.jpg 567 | 000606.jpg 568 | 000607.jpg 569 | 000608.jpg 570 | 000609.jpg 571 | 000610.jpg 572 | 000611.jpg 573 | 000612.jpg 574 | 000613.jpg 575 | 000614.jpg 576 | 000615.jpg 577 | 000616.jpg 578 | 000617.jpg 579 | 000618.jpg 580 | 000619.jpg 581 | 000620.jpg 582 | 000621.jpg 583 | 000622.jpg 584 | 000623.jpg 585 | 000624.jpg 586 | 000625.jpg 587 | 000626.jpg 588 | 000627.jpg 589 | 000628.jpg 590 | 000629.jpg 591 | 000630.jpg 592 | 000631.jpg 593 | 000632.jpg 594 | 000633.jpg 595 | 000634.jpg 596 | 000635.jpg 597 | 000636.jpg 598 | 000637.jpg 599 | 000638.jpg 600 | 000639.jpg 601 | 000640.jpg 602 | 000641.jpg 603 | 000642.jpg 604 | 000643.jpg 605 | 000644.jpg 606 | 000645.jpg 607 | 000646.jpg 608 | 000647.jpg 609 | 000648.jpg 610 | 000649.jpg 611 | 000650.jpg 612 | 000651.jpg 613 | 000652.jpg 614 | 000653.jpg 615 | 000654.jpg 616 | 000655.jpg 617 | 000656.jpg 618 | 000657.jpg 619 | 000658.jpg 620 | 000659.jpg 621 | 000660.jpg 622 | 000661.jpg 623 | 000662.jpg 624 | 000663.jpg 625 | 000664.jpg 626 | 000665.jpg 627 | 000666.jpg 628 | 000667.jpg 629 | 000668.jpg 630 | 000669.jpg 631 | 000670.jpg 632 | 000671.jpg 633 | 000672.jpg 634 | 000673.jpg 635 | 000674.jpg 636 | 000675.jpg 637 | 000676.jpg 638 | 000677.jpg 639 | 000678.jpg 640 | 000679.jpg 641 | 000680.jpg 642 | 000681.jpg 643 | 000682.jpg 644 | 000683.jpg 645 | 000684.jpg 646 | 000685.jpg 647 | 000686.jpg 648 | 000687.jpg 649 | 000688.jpg 650 | 000689.jpg 651 | 000690.jpg 652 | 000691.jpg 653 | 000692.jpg 654 | 000693.jpg 655 | 000694.jpg 656 | 000695.jpg 657 | 000696.jpg 658 | 000697.jpg 659 | 000698.jpg 660 | 000699.jpg 661 | 000700.jpg 662 | 000701.jpg 663 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person18.txt: -------------------------------------------------------------------------------- 1 | 000116.jpg 2 | 000117.jpg 3 | 000118.jpg 4 | 000119.jpg 5 | 000120.jpg 6 | 000121.jpg 7 | 000122.jpg 8 | 000123.jpg 9 | 000124.jpg 10 | 000125.jpg 11 | 000274.jpg 12 | 000275.jpg 13 | 000276.jpg 14 | 000277.jpg 15 | 000278.jpg 16 | 000279.jpg 17 | 000280.jpg 18 | 000281.jpg 19 | 000282.jpg 20 | 000283.jpg 21 | 000284.jpg 22 | 000285.jpg 23 | 000286.jpg 24 | 000287.jpg 25 | 000288.jpg 26 | 000289.jpg 27 | 000290.jpg 28 | 000291.jpg 29 | 000292.jpg 30 | 000293.jpg 31 | 000294.jpg 32 | 000295.jpg 33 | 000296.jpg 34 | 000297.jpg 35 | 000298.jpg 36 | 000299.jpg 37 | 000300.jpg 38 | 000301.jpg 39 | 000302.jpg 40 | 000303.jpg 41 | 000304.jpg 42 | 000305.jpg 43 | 000306.jpg 44 | 000307.jpg 45 | 000308.jpg 46 | 000309.jpg 47 | 000310.jpg 48 | 000311.jpg 49 | 000312.jpg 50 | 000313.jpg 51 | 000314.jpg 52 | 000315.jpg 53 | 000316.jpg 54 | 000317.jpg 55 | 000318.jpg 56 | 000319.jpg 57 | 000320.jpg 58 | 000321.jpg 59 | 000322.jpg 60 | 000323.jpg 61 | 000324.jpg 62 | 000325.jpg 63 | 000326.jpg 64 | 000327.jpg 65 | 000328.jpg 66 | 000329.jpg 67 | 000330.jpg 68 | 000331.jpg 69 | 000332.jpg 70 | 000333.jpg 71 | 000334.jpg 72 | 000335.jpg 73 | 000336.jpg 74 | 000337.jpg 75 | 000338.jpg 76 | 000339.jpg 77 | 000340.jpg 78 | 000341.jpg 79 | 000342.jpg 80 | 000343.jpg 81 | 000344.jpg 82 | 000345.jpg 83 | 000346.jpg 84 | 000347.jpg 85 | 000348.jpg 86 | 000349.jpg 87 | 000350.jpg 88 | 000351.jpg 89 | 000352.jpg 90 | 000353.jpg 91 | 000354.jpg 92 | 000355.jpg 93 | 000356.jpg 94 | 000357.jpg 95 | 000358.jpg 96 | 000359.jpg 97 | 000360.jpg 98 | 000361.jpg 99 | 000362.jpg 100 | 000363.jpg 101 | 000364.jpg 102 | 000365.jpg 103 | 000366.jpg 104 | 000367.jpg 105 | 000368.jpg 106 | 000369.jpg 107 | 000370.jpg 108 | 000371.jpg 109 | 000372.jpg 110 | 000373.jpg 111 | 000374.jpg 112 | 000375.jpg 113 | 000376.jpg 114 | 000377.jpg 115 | 000378.jpg 116 | 000379.jpg 117 | 000380.jpg 118 | 000381.jpg 119 | 000382.jpg 120 | 000383.jpg 121 | 000384.jpg 122 | 000385.jpg 123 | 000386.jpg 124 | 000387.jpg 125 | 000388.jpg 126 | 000389.jpg 127 | 000390.jpg 128 | 000391.jpg 129 | 000392.jpg 130 | 000393.jpg 131 | 000394.jpg 132 | 000395.jpg 133 | 000396.jpg 134 | 000397.jpg 135 | 000398.jpg 136 | 000399.jpg 137 | 000400.jpg 138 | 000401.jpg 139 | 000402.jpg 140 | 000403.jpg 141 | 000404.jpg 142 | 000405.jpg 143 | 000406.jpg 144 | 000407.jpg 145 | 000408.jpg 146 | 000409.jpg 147 | 000410.jpg 148 | 000411.jpg 149 | 000412.jpg 150 | 000413.jpg 151 | 000414.jpg 152 | 000415.jpg 153 | 000416.jpg 154 | 000417.jpg 155 | 000418.jpg 156 | 000419.jpg 157 | 000420.jpg 158 | 000421.jpg 159 | 000422.jpg 160 | 000423.jpg 161 | 000424.jpg 162 | 000425.jpg 163 | 000426.jpg 164 | 000427.jpg 165 | 000428.jpg 166 | 000429.jpg 167 | 000430.jpg 168 | 000431.jpg 169 | 000432.jpg 170 | 000433.jpg 171 | 000434.jpg 172 | 000435.jpg 173 | 000436.jpg 174 | 000437.jpg 175 | 000438.jpg 176 | 000439.jpg 177 | 000440.jpg 178 | 000441.jpg 179 | 000442.jpg 180 | 000443.jpg 181 | 000444.jpg 182 | 000445.jpg 183 | 000446.jpg 184 | 000447.jpg 185 | 000448.jpg 186 | 000449.jpg 187 | 000450.jpg 188 | 000451.jpg 189 | 000452.jpg 190 | 000453.jpg 191 | 000454.jpg 192 | 000455.jpg 193 | 000456.jpg 194 | 000457.jpg 195 | 000458.jpg 196 | 000459.jpg 197 | 000460.jpg 198 | 000461.jpg 199 | 000462.jpg 200 | 000463.jpg 201 | 000464.jpg 202 | 000465.jpg 203 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person19.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000399.jpg 46 | 000400.jpg 47 | 000401.jpg 48 | 000402.jpg 49 | 000403.jpg 50 | 000404.jpg 51 | 000536.jpg 52 | 000537.jpg 53 | 000538.jpg 54 | 000539.jpg 55 | 000540.jpg 56 | 000541.jpg 57 | 000542.jpg 58 | 000543.jpg 59 | 000544.jpg 60 | 000545.jpg 61 | 000546.jpg 62 | 000547.jpg 63 | 000548.jpg 64 | 000549.jpg 65 | 000550.jpg 66 | 000551.jpg 67 | 000552.jpg 68 | 000553.jpg 69 | 000554.jpg 70 | 000555.jpg 71 | 000556.jpg 72 | 000557.jpg 73 | 000558.jpg 74 | 000559.jpg 75 | 000560.jpg 76 | 000561.jpg 77 | 000562.jpg 78 | 000563.jpg 79 | 000564.jpg 80 | 000565.jpg 81 | 000566.jpg 82 | 000567.jpg 83 | 000568.jpg 84 | 000569.jpg 85 | 000570.jpg 86 | 000571.jpg 87 | 000572.jpg 88 | 000573.jpg 89 | 000574.jpg 90 | 000575.jpg 91 | 000576.jpg 92 | 000577.jpg 93 | 000578.jpg 94 | 000579.jpg 95 | 000580.jpg 96 | 000581.jpg 97 | 000582.jpg 98 | 000583.jpg 99 | 000584.jpg 100 | 000585.jpg 101 | 000586.jpg 102 | 000587.jpg 103 | 000588.jpg 104 | 000589.jpg 105 | 000590.jpg 106 | 000591.jpg 107 | 000592.jpg 108 | 000593.jpg 109 | 000594.jpg 110 | 000595.jpg 111 | 000596.jpg 112 | 000597.jpg 113 | 000598.jpg 114 | 000599.jpg 115 | 000600.jpg 116 | 000601.jpg 117 | 000602.jpg 118 | 000603.jpg 119 | 000604.jpg 120 | 000605.jpg 121 | 000606.jpg 122 | 000607.jpg 123 | 000608.jpg 124 | 000609.jpg 125 | 000610.jpg 126 | 000611.jpg 127 | 000612.jpg 128 | 000613.jpg 129 | 000614.jpg 130 | 000615.jpg 131 | 000616.jpg 132 | 000617.jpg 133 | 000618.jpg 134 | 000619.jpg 135 | 000620.jpg 136 | 000621.jpg 137 | 000622.jpg 138 | 000623.jpg 139 | 000624.jpg 140 | 000625.jpg 141 | 000626.jpg 142 | 000627.jpg 143 | 000628.jpg 144 | 000629.jpg 145 | 000630.jpg 146 | 000631.jpg 147 | 000632.jpg 148 | 000633.jpg 149 | 000672.jpg 150 | 000673.jpg 151 | 000674.jpg 152 | 000675.jpg 153 | 000676.jpg 154 | 000677.jpg 155 | 000678.jpg 156 | 000679.jpg 157 | 000680.jpg 158 | 000681.jpg 159 | 000682.jpg 160 | 000683.jpg 161 | 000684.jpg 162 | 000685.jpg 163 | 000686.jpg 164 | 000687.jpg 165 | 000688.jpg 166 | 000689.jpg 167 | 000690.jpg 168 | 000691.jpg 169 | 000692.jpg 170 | 000693.jpg 171 | 000694.jpg 172 | 000695.jpg 173 | 000696.jpg 174 | 000697.jpg 175 | 000698.jpg 176 | 000699.jpg 177 | 000700.jpg 178 | 000701.jpg 179 | 000702.jpg 180 | 000703.jpg 181 | 000704.jpg 182 | 000705.jpg 183 | 000706.jpg 184 | 000707.jpg 185 | 000708.jpg 186 | 000709.jpg 187 | 000710.jpg 188 | 000711.jpg 189 | 000712.jpg 190 | 000713.jpg 191 | 000714.jpg 192 | 000715.jpg 193 | 000716.jpg 194 | 000717.jpg 195 | 000718.jpg 196 | 000719.jpg 197 | 001265.jpg 198 | 001266.jpg 199 | 001267.jpg 200 | 001268.jpg 201 | 001269.jpg 202 | 001270.jpg 203 | 001271.jpg 204 | 001272.jpg 205 | 001273.jpg 206 | 001274.jpg 207 | 001275.jpg 208 | 001276.jpg 209 | 001277.jpg 210 | 001278.jpg 211 | 001279.jpg 212 | 001280.jpg 213 | 001281.jpg 214 | 001282.jpg 215 | 001283.jpg 216 | 001284.jpg 217 | 001285.jpg 218 | 001286.jpg 219 | 001287.jpg 220 | 001288.jpg 221 | 001289.jpg 222 | 001290.jpg 223 | 001291.jpg 224 | 001292.jpg 225 | 001293.jpg 226 | 001294.jpg 227 | 001295.jpg 228 | 001296.jpg 229 | 001297.jpg 230 | 001298.jpg 231 | 001299.jpg 232 | 001300.jpg 233 | 001301.jpg 234 | 001302.jpg 235 | 001303.jpg 236 | 001304.jpg 237 | 001305.jpg 238 | 001306.jpg 239 | 001307.jpg 240 | 001308.jpg 241 | 001309.jpg 242 | 001310.jpg 243 | 001311.jpg 244 | 001312.jpg 245 | 001313.jpg 246 | 001314.jpg 247 | 001315.jpg 248 | 001316.jpg 249 | 001317.jpg 250 | 001318.jpg 251 | 001319.jpg 252 | 001320.jpg 253 | 001321.jpg 254 | 001322.jpg 255 | 001323.jpg 256 | 001324.jpg 257 | 001325.jpg 258 | 001326.jpg 259 | 001327.jpg 260 | 001328.jpg 261 | 001329.jpg 262 | 001330.jpg 263 | 001331.jpg 264 | 001332.jpg 265 | 001333.jpg 266 | 001334.jpg 267 | 001335.jpg 268 | 001336.jpg 269 | 001337.jpg 270 | 001338.jpg 271 | 001339.jpg 272 | 001340.jpg 273 | 001341.jpg 274 | 001342.jpg 275 | 001343.jpg 276 | 001344.jpg 277 | 001345.jpg 278 | 001346.jpg 279 | 001347.jpg 280 | 001348.jpg 281 | 001349.jpg 282 | 001350.jpg 283 | 001351.jpg 284 | 001352.jpg 285 | 001353.jpg 286 | 001354.jpg 287 | 001355.jpg 288 | 001356.jpg 289 | 001357.jpg 290 | 001358.jpg 291 | 001359.jpg 292 | 001360.jpg 293 | 001361.jpg 294 | 001362.jpg 295 | 001363.jpg 296 | 001364.jpg 297 | 001365.jpg 298 | 001366.jpg 299 | 001367.jpg 300 | 001368.jpg 301 | 001369.jpg 302 | 001370.jpg 303 | 001371.jpg 304 | 001372.jpg 305 | 001373.jpg 306 | 001374.jpg 307 | 001375.jpg 308 | 001376.jpg 309 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person20.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000093.jpg 33 | 000094.jpg 34 | 000095.jpg 35 | 000096.jpg 36 | 000097.jpg 37 | 000098.jpg 38 | 000099.jpg 39 | 000100.jpg 40 | 000101.jpg 41 | 000102.jpg 42 | 000103.jpg 43 | 000104.jpg 44 | 000105.jpg 45 | 000106.jpg 46 | 000107.jpg 47 | 000108.jpg 48 | 000109.jpg 49 | 000110.jpg 50 | 000111.jpg 51 | 000112.jpg 52 | 000113.jpg 53 | 000114.jpg 54 | 000115.jpg 55 | 000116.jpg 56 | 000117.jpg 57 | 000118.jpg 58 | 000119.jpg 59 | 000120.jpg 60 | 000121.jpg 61 | 000122.jpg 62 | 000123.jpg 63 | 000124.jpg 64 | 000125.jpg 65 | 000126.jpg 66 | 000127.jpg 67 | 000128.jpg 68 | 000129.jpg 69 | 000130.jpg 70 | 000131.jpg 71 | 000132.jpg 72 | 000133.jpg 73 | 000134.jpg 74 | 000135.jpg 75 | 000136.jpg 76 | 000137.jpg 77 | 000138.jpg 78 | 000139.jpg 79 | 000140.jpg 80 | 000141.jpg 81 | 000142.jpg 82 | 000143.jpg 83 | 000144.jpg 84 | 000145.jpg 85 | 000146.jpg 86 | 000147.jpg 87 | 000148.jpg 88 | 000149.jpg 89 | 000150.jpg 90 | 000151.jpg 91 | 000152.jpg 92 | 000153.jpg 93 | 000154.jpg 94 | 000155.jpg 95 | 000156.jpg 96 | 000157.jpg 97 | 000158.jpg 98 | 000159.jpg 99 | 000160.jpg 100 | 000161.jpg 101 | 000162.jpg 102 | 000163.jpg 103 | 000164.jpg 104 | 000165.jpg 105 | 000166.jpg 106 | 000167.jpg 107 | 000168.jpg 108 | 000169.jpg 109 | 000170.jpg 110 | 000171.jpg 111 | 000172.jpg 112 | 000329.jpg 113 | 000330.jpg 114 | 000552.jpg 115 | 000553.jpg 116 | 000554.jpg 117 | 000555.jpg 118 | 000556.jpg 119 | 000557.jpg 120 | 000558.jpg 121 | 000559.jpg 122 | 000560.jpg 123 | 000561.jpg 124 | 000562.jpg 125 | 000563.jpg 126 | 000564.jpg 127 | 000565.jpg 128 | 000566.jpg 129 | 000567.jpg 130 | 000568.jpg 131 | 000569.jpg 132 | 000570.jpg 133 | 000571.jpg 134 | 000572.jpg 135 | 000573.jpg 136 | 000574.jpg 137 | 000575.jpg 138 | 000576.jpg 139 | 000577.jpg 140 | 000578.jpg 141 | 000579.jpg 142 | 000580.jpg 143 | 000581.jpg 144 | 000582.jpg 145 | 000583.jpg 146 | 000584.jpg 147 | 000585.jpg 148 | 000586.jpg 149 | 000587.jpg 150 | 000588.jpg 151 | 000589.jpg 152 | 000590.jpg 153 | 000591.jpg 154 | 000592.jpg 155 | 000593.jpg 156 | 000594.jpg 157 | 000595.jpg 158 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person22.txt: -------------------------------------------------------------------------------- 1 | 000019.jpg 2 | 000020.jpg 3 | 000021.jpg 4 | 000022.jpg 5 | 000023.jpg 6 | 000024.jpg 7 | 000025.jpg 8 | 000026.jpg 9 | 000027.jpg 10 | 000028.jpg 11 | 000029.jpg 12 | 000030.jpg 13 | 000031.jpg 14 | 000032.jpg 15 | 000033.jpg 16 | 000034.jpg 17 | 000035.jpg 18 | 000036.jpg 19 | 000037.jpg 20 | 000038.jpg 21 | 000039.jpg 22 | 000040.jpg 23 | 000041.jpg 24 | 000042.jpg 25 | 000043.jpg 26 | 000044.jpg 27 | 000045.jpg 28 | 000046.jpg 29 | 000047.jpg 30 | 000048.jpg 31 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person23.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person3.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person4.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000381.jpg 37 | 000382.jpg 38 | 000383.jpg 39 | 000384.jpg 40 | 000385.jpg 41 | 000386.jpg 42 | 000387.jpg 43 | 000388.jpg 44 | 000389.jpg 45 | 000390.jpg 46 | 000391.jpg 47 | 000392.jpg 48 | 000393.jpg 49 | 000394.jpg 50 | 000395.jpg 51 | 000396.jpg 52 | 000397.jpg 53 | 000398.jpg 54 | 000399.jpg 55 | 000400.jpg 56 | 000401.jpg 57 | 000402.jpg 58 | 000403.jpg 59 | 000404.jpg 60 | 000405.jpg 61 | 000406.jpg 62 | 000407.jpg 63 | 000408.jpg 64 | 000409.jpg 65 | 000410.jpg 66 | 000411.jpg 67 | 000412.jpg 68 | 000413.jpg 69 | 000414.jpg 70 | 000415.jpg 71 | 000416.jpg 72 | 000417.jpg 73 | 000418.jpg 74 | 000419.jpg 75 | 000420.jpg 76 | 000421.jpg 77 | 000422.jpg 78 | 000423.jpg 79 | 000424.jpg 80 | 000425.jpg 81 | 000426.jpg 82 | 000427.jpg 83 | 000428.jpg 84 | 000429.jpg 85 | 000430.jpg 86 | 000431.jpg 87 | 000432.jpg 88 | 000433.jpg 89 | 000434.jpg 90 | 000435.jpg 91 | 000436.jpg 92 | 000437.jpg 93 | 000438.jpg 94 | 000439.jpg 95 | 000440.jpg 96 | 000441.jpg 97 | 000442.jpg 98 | 000443.jpg 99 | 000444.jpg 100 | 000445.jpg 101 | 000446.jpg 102 | 000447.jpg 103 | 000448.jpg 104 | 000449.jpg 105 | 000450.jpg 106 | 000451.jpg 107 | 000452.jpg 108 | 000453.jpg 109 | 000454.jpg 110 | 000455.jpg 111 | 000456.jpg 112 | 000457.jpg 113 | 000458.jpg 114 | 000459.jpg 115 | 000460.jpg 116 | 000461.jpg 117 | 000462.jpg 118 | 000463.jpg 119 | 000464.jpg 120 | 000465.jpg 121 | 000466.jpg 122 | 000467.jpg 123 | 000468.jpg 124 | 000469.jpg 125 | 000470.jpg 126 | 000471.jpg 127 | 000472.jpg 128 | 000473.jpg 129 | 000474.jpg 130 | 000475.jpg 131 | 000476.jpg 132 | 000477.jpg 133 | 000478.jpg 134 | 000479.jpg 135 | 000480.jpg 136 | 000481.jpg 137 | 000482.jpg 138 | 000483.jpg 139 | 000484.jpg 140 | 000485.jpg 141 | 000486.jpg 142 | 000487.jpg 143 | 000488.jpg 144 | 000489.jpg 145 | 000490.jpg 146 | 000491.jpg 147 | 000492.jpg 148 | 000493.jpg 149 | 000494.jpg 150 | 000495.jpg 151 | 000496.jpg 152 | 000497.jpg 153 | 000498.jpg 154 | 000499.jpg 155 | 000500.jpg 156 | 000501.jpg 157 | 000502.jpg 158 | 000503.jpg 159 | 000504.jpg 160 | 000505.jpg 161 | 000506.jpg 162 | 000507.jpg 163 | 000508.jpg 164 | 000509.jpg 165 | 000510.jpg 166 | 000511.jpg 167 | 000512.jpg 168 | 000513.jpg 169 | 000514.jpg 170 | 000515.jpg 171 | 000516.jpg 172 | 000517.jpg 173 | 000518.jpg 174 | 000519.jpg 175 | 000520.jpg 176 | 000521.jpg 177 | 000522.jpg 178 | 000523.jpg 179 | 000524.jpg 180 | 000525.jpg 181 | 000526.jpg 182 | 000527.jpg 183 | 000528.jpg 184 | 000529.jpg 185 | 000530.jpg 186 | 000531.jpg 187 | 000532.jpg 188 | 000533.jpg 189 | 000534.jpg 190 | 000535.jpg 191 | 000536.jpg 192 | 000537.jpg 193 | 000538.jpg 194 | 000539.jpg 195 | 000540.jpg 196 | 000541.jpg 197 | 000542.jpg 198 | 000543.jpg 199 | 000544.jpg 200 | 000545.jpg 201 | 000546.jpg 202 | 000547.jpg 203 | 000548.jpg 204 | 000549.jpg 205 | 000550.jpg 206 | 000551.jpg 207 | 000552.jpg 208 | 000553.jpg 209 | 000554.jpg 210 | 000555.jpg 211 | 000556.jpg 212 | 000557.jpg 213 | 000558.jpg 214 | 000559.jpg 215 | 000560.jpg 216 | 000561.jpg 217 | 000562.jpg 218 | 000563.jpg 219 | 000564.jpg 220 | 000565.jpg 221 | 000566.jpg 222 | 000567.jpg 223 | 000568.jpg 224 | 000569.jpg 225 | 000570.jpg 226 | 000571.jpg 227 | 000572.jpg 228 | 000573.jpg 229 | 000574.jpg 230 | 000575.jpg 231 | 000576.jpg 232 | 000577.jpg 233 | 000578.jpg 234 | 000579.jpg 235 | 000580.jpg 236 | 000581.jpg 237 | 000582.jpg 238 | 000583.jpg 239 | 000584.jpg 240 | 000585.jpg 241 | 000586.jpg 242 | 000587.jpg 243 | 000588.jpg 244 | 000589.jpg 245 | 000590.jpg 246 | 000591.jpg 247 | 000592.jpg 248 | 000593.jpg 249 | 000594.jpg 250 | 000595.jpg 251 | 000596.jpg 252 | 000597.jpg 253 | 000598.jpg 254 | 000599.jpg 255 | 000600.jpg 256 | 000601.jpg 257 | 000602.jpg 258 | 000603.jpg 259 | 000604.jpg 260 | 000605.jpg 261 | 000606.jpg 262 | 000607.jpg 263 | 000608.jpg 264 | 000609.jpg 265 | 000610.jpg 266 | 000611.jpg 267 | 000612.jpg 268 | 000613.jpg 269 | 000614.jpg 270 | 000615.jpg 271 | 000616.jpg 272 | 000617.jpg 273 | 000618.jpg 274 | 000619.jpg 275 | 000620.jpg 276 | 000621.jpg 277 | 000622.jpg 278 | 000623.jpg 279 | 000624.jpg 280 | 000625.jpg 281 | 000626.jpg 282 | 000627.jpg 283 | 000628.jpg 284 | 000629.jpg 285 | 000630.jpg 286 | 000631.jpg 287 | 000632.jpg 288 | 000633.jpg 289 | 000634.jpg 290 | 000635.jpg 291 | 000636.jpg 292 | 000637.jpg 293 | 000638.jpg 294 | 000639.jpg 295 | 000640.jpg 296 | 000641.jpg 297 | 000642.jpg 298 | 000643.jpg 299 | 000644.jpg 300 | 000645.jpg 301 | 000646.jpg 302 | 000647.jpg 303 | 000648.jpg 304 | 000649.jpg 305 | 000650.jpg 306 | 000651.jpg 307 | 000652.jpg 308 | 000653.jpg 309 | 000654.jpg 310 | 000655.jpg 311 | 000656.jpg 312 | 000657.jpg 313 | 000658.jpg 314 | 000659.jpg 315 | 000660.jpg 316 | 000661.jpg 317 | 000662.jpg 318 | 000663.jpg 319 | 000664.jpg 320 | 000665.jpg 321 | 000666.jpg 322 | 000667.jpg 323 | 000668.jpg 324 | 000669.jpg 325 | 000670.jpg 326 | 000671.jpg 327 | 000672.jpg 328 | 000673.jpg 329 | 000674.jpg 330 | 000675.jpg 331 | 000676.jpg 332 | 000677.jpg 333 | 000678.jpg 334 | 000679.jpg 335 | 000680.jpg 336 | 000681.jpg 337 | 000682.jpg 338 | 000683.jpg 339 | 000684.jpg 340 | 000685.jpg 341 | 000686.jpg 342 | 000687.jpg 343 | 000688.jpg 344 | 000689.jpg 345 | 000690.jpg 346 | 000691.jpg 347 | 000692.jpg 348 | 000693.jpg 349 | 000694.jpg 350 | 000695.jpg 351 | 000696.jpg 352 | 000697.jpg 353 | 000698.jpg 354 | 000699.jpg 355 | 000700.jpg 356 | 000701.jpg 357 | 000702.jpg 358 | 000703.jpg 359 | 000704.jpg 360 | 000705.jpg 361 | 000706.jpg 362 | 000707.jpg 363 | 000708.jpg 364 | 000709.jpg 365 | 000710.jpg 366 | 000711.jpg 367 | 000712.jpg 368 | 000713.jpg 369 | 000714.jpg 370 | 000715.jpg 371 | 000716.jpg 372 | 000717.jpg 373 | 000718.jpg 374 | 000719.jpg 375 | 000720.jpg 376 | 000721.jpg 377 | 000722.jpg 378 | 000723.jpg 379 | 000724.jpg 380 | 000725.jpg 381 | 000726.jpg 382 | 000727.jpg 383 | 000728.jpg 384 | 000729.jpg 385 | 000730.jpg 386 | 000731.jpg 387 | 000732.jpg 388 | 000733.jpg 389 | 000734.jpg 390 | 000735.jpg 391 | 000736.jpg 392 | 000737.jpg 393 | 000738.jpg 394 | 000739.jpg 395 | 000740.jpg 396 | 000741.jpg 397 | 000742.jpg 398 | 000743.jpg 399 | 000744.jpg 400 | 000745.jpg 401 | 000746.jpg 402 | 000747.jpg 403 | 000748.jpg 404 | 000749.jpg 405 | 000750.jpg 406 | 000751.jpg 407 | 000752.jpg 408 | 000753.jpg 409 | 000754.jpg 410 | 000755.jpg 411 | 000756.jpg 412 | 000757.jpg 413 | 000758.jpg 414 | 000759.jpg 415 | 000760.jpg 416 | 000761.jpg 417 | 000762.jpg 418 | 000763.jpg 419 | 000764.jpg 420 | 000765.jpg 421 | 000766.jpg 422 | 000767.jpg 423 | 000768.jpg 424 | 000769.jpg 425 | 000770.jpg 426 | 000771.jpg 427 | 000772.jpg 428 | 000773.jpg 429 | 000774.jpg 430 | 000775.jpg 431 | 000776.jpg 432 | 000777.jpg 433 | 000778.jpg 434 | 000779.jpg 435 | 000780.jpg 436 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person6.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person7.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000242.jpg 234 | 000243.jpg 235 | 000244.jpg 236 | 000245.jpg 237 | 000246.jpg 238 | 000247.jpg 239 | 000248.jpg 240 | 000249.jpg 241 | 000250.jpg 242 | 000251.jpg 243 | 000252.jpg 244 | 000253.jpg 245 | 000254.jpg 246 | 000255.jpg 247 | 000256.jpg 248 | 000257.jpg 249 | 000258.jpg 250 | 000259.jpg 251 | 000260.jpg 252 | 000261.jpg 253 | 000262.jpg 254 | 000263.jpg 255 | 000264.jpg 256 | 000265.jpg 257 | 000266.jpg 258 | 000267.jpg 259 | 000268.jpg 260 | 000269.jpg 261 | 000270.jpg 262 | 000271.jpg 263 | 000272.jpg 264 | 000273.jpg 265 | 000274.jpg 266 | 000275.jpg 267 | 000276.jpg 268 | 000277.jpg 269 | 000278.jpg 270 | 000279.jpg 271 | 000280.jpg 272 | 000281.jpg 273 | 000282.jpg 274 | 000283.jpg 275 | 000284.jpg 276 | 000285.jpg 277 | 000286.jpg 278 | 000287.jpg 279 | 000288.jpg 280 | 000289.jpg 281 | 000290.jpg 282 | 000291.jpg 283 | 000292.jpg 284 | 000293.jpg 285 | 000294.jpg 286 | 000295.jpg 287 | 000296.jpg 288 | 000297.jpg 289 | 000298.jpg 290 | 000299.jpg 291 | 000300.jpg 292 | 000301.jpg 293 | 000302.jpg 294 | 000303.jpg 295 | 000304.jpg 296 | 000305.jpg 297 | 000306.jpg 298 | 000307.jpg 299 | 000308.jpg 300 | 000309.jpg 301 | 000310.jpg 302 | 000311.jpg 303 | 000312.jpg 304 | 000313.jpg 305 | 000314.jpg 306 | 000315.jpg 307 | 000316.jpg 308 | 000317.jpg 309 | 000318.jpg 310 | 000319.jpg 311 | 000320.jpg 312 | 000321.jpg 313 | 000322.jpg 314 | 000323.jpg 315 | 000324.jpg 316 | 000325.jpg 317 | 000326.jpg 318 | 000327.jpg 319 | 000328.jpg 320 | 000329.jpg 321 | 000330.jpg 322 | 000331.jpg 323 | 000332.jpg 324 | 000333.jpg 325 | 000334.jpg 326 | 000335.jpg 327 | 000336.jpg 328 | 000337.jpg 329 | 000338.jpg 330 | 000339.jpg 331 | 000340.jpg 332 | 000341.jpg 333 | 000342.jpg 334 | 000343.jpg 335 | 000344.jpg 336 | 000345.jpg 337 | 000346.jpg 338 | 000347.jpg 339 | 000348.jpg 340 | 000349.jpg 341 | 000350.jpg 342 | 000351.jpg 343 | 000352.jpg 344 | 000353.jpg 345 | 000354.jpg 346 | 000355.jpg 347 | 000356.jpg 348 | 000357.jpg 349 | 000358.jpg 350 | 000359.jpg 351 | 000360.jpg 352 | 000361.jpg 353 | 000362.jpg 354 | 000363.jpg 355 | 000364.jpg 356 | 000365.jpg 357 | 000366.jpg 358 | 000367.jpg 359 | 000368.jpg 360 | 000369.jpg 361 | 000370.jpg 362 | 000371.jpg 363 | 000372.jpg 364 | 000373.jpg 365 | 000374.jpg 366 | 000375.jpg 367 | 000376.jpg 368 | 000377.jpg 369 | 000378.jpg 370 | 000379.jpg 371 | 000380.jpg 372 | 000381.jpg 373 | 000382.jpg 374 | 000383.jpg 375 | 000384.jpg 376 | 000385.jpg 377 | 000386.jpg 378 | 000387.jpg 379 | 000388.jpg 380 | 000389.jpg 381 | 000390.jpg 382 | 000391.jpg 383 | 000392.jpg 384 | 000393.jpg 385 | 000394.jpg 386 | 000395.jpg 387 | 000396.jpg 388 | 000397.jpg 389 | 000398.jpg 390 | 000399.jpg 391 | 000400.jpg 392 | 000401.jpg 393 | 000415.jpg 394 | 000416.jpg 395 | 000417.jpg 396 | 000448.jpg 397 | 000449.jpg 398 | 000450.jpg 399 | 000486.jpg 400 | 000487.jpg 401 | 000488.jpg 402 | 000489.jpg 403 | 000490.jpg 404 | 000491.jpg 405 | 000492.jpg 406 | 000493.jpg 407 | 000494.jpg 408 | 000495.jpg 409 | 000496.jpg 410 | 000497.jpg 411 | 000498.jpg 412 | 000499.jpg 413 | 000500.jpg 414 | 000501.jpg 415 | 000502.jpg 416 | 000503.jpg 417 | 000504.jpg 418 | 000505.jpg 419 | 000506.jpg 420 | 000507.jpg 421 | 000508.jpg 422 | 000509.jpg 423 | 000510.jpg 424 | 000511.jpg 425 | 000512.jpg 426 | 000513.jpg 427 | 000514.jpg 428 | 000515.jpg 429 | 000516.jpg 430 | 000517.jpg 431 | 000518.jpg 432 | 000519.jpg 433 | 000520.jpg 434 | 000521.jpg 435 | 000522.jpg 436 | 000523.jpg 437 | 000524.jpg 438 | 000525.jpg 439 | 000526.jpg 440 | 000527.jpg 441 | 000528.jpg 442 | 000529.jpg 443 | 000530.jpg 444 | 000531.jpg 445 | 000532.jpg 446 | 000533.jpg 447 | 000534.jpg 448 | 000535.jpg 449 | 000536.jpg 450 | 000537.jpg 451 | 000538.jpg 452 | 000539.jpg 453 | 000540.jpg 454 | 000541.jpg 455 | 000542.jpg 456 | 000543.jpg 457 | 000544.jpg 458 | 000545.jpg 459 | 000546.jpg 460 | 000547.jpg 461 | 000548.jpg 462 | 000549.jpg 463 | 000550.jpg 464 | 000551.jpg 465 | 000564.jpg 466 | 000565.jpg 467 | 000566.jpg 468 | 000567.jpg 469 | 000568.jpg 470 | 000569.jpg 471 | 000570.jpg 472 | 000571.jpg 473 | 000572.jpg 474 | 000573.jpg 475 | 000574.jpg 476 | 000575.jpg 477 | 000576.jpg 478 | 000577.jpg 479 | 000578.jpg 480 | 000579.jpg 481 | 000580.jpg 482 | 000588.jpg 483 | 000589.jpg 484 | 000590.jpg 485 | 000591.jpg 486 | 000592.jpg 487 | 000593.jpg 488 | 000594.jpg 489 | 000595.jpg 490 | 000596.jpg 491 | 000597.jpg 492 | 000598.jpg 493 | 000599.jpg 494 | 000600.jpg 495 | 000601.jpg 496 | 000602.jpg 497 | 000603.jpg 498 | 000604.jpg 499 | 000605.jpg 500 | 000606.jpg 501 | 000607.jpg 502 | 000608.jpg 503 | 000609.jpg 504 | 000610.jpg 505 | 000611.jpg 506 | 000612.jpg 507 | 000613.jpg 508 | 000614.jpg 509 | 000615.jpg 510 | 000616.jpg 511 | 000617.jpg 512 | 000618.jpg 513 | 000619.jpg 514 | 000620.jpg 515 | 000621.jpg 516 | 000622.jpg 517 | 000623.jpg 518 | 000624.jpg 519 | 000625.jpg 520 | 000626.jpg 521 | 000627.jpg 522 | 000628.jpg 523 | 000629.jpg 524 | 000630.jpg 525 | 000631.jpg 526 | 000632.jpg 527 | 000633.jpg 528 | 000634.jpg 529 | 000635.jpg 530 | 000636.jpg 531 | 000637.jpg 532 | 000638.jpg 533 | 000639.jpg 534 | 000640.jpg 535 | -------------------------------------------------------------------------------- /datasets/UAV123_selected/person8.txt: -------------------------------------------------------------------------------- 1 | 000001.jpg 2 | 000002.jpg 3 | 000003.jpg 4 | 000004.jpg 5 | 000005.jpg 6 | 000006.jpg 7 | 000007.jpg 8 | 000008.jpg 9 | 000009.jpg 10 | 000010.jpg 11 | 000011.jpg 12 | 000012.jpg 13 | 000013.jpg 14 | 000014.jpg 15 | 000015.jpg 16 | 000016.jpg 17 | 000017.jpg 18 | 000018.jpg 19 | 000019.jpg 20 | 000020.jpg 21 | 000021.jpg 22 | 000022.jpg 23 | 000023.jpg 24 | 000024.jpg 25 | 000025.jpg 26 | 000026.jpg 27 | 000027.jpg 28 | 000028.jpg 29 | 000029.jpg 30 | 000030.jpg 31 | 000031.jpg 32 | 000032.jpg 33 | 000033.jpg 34 | 000034.jpg 35 | 000035.jpg 36 | 000036.jpg 37 | 000037.jpg 38 | 000038.jpg 39 | 000039.jpg 40 | 000040.jpg 41 | 000041.jpg 42 | 000042.jpg 43 | 000043.jpg 44 | 000044.jpg 45 | 000045.jpg 46 | 000046.jpg 47 | 000047.jpg 48 | 000048.jpg 49 | 000049.jpg 50 | 000050.jpg 51 | 000051.jpg 52 | 000052.jpg 53 | 000053.jpg 54 | 000054.jpg 55 | 000055.jpg 56 | 000056.jpg 57 | 000057.jpg 58 | 000058.jpg 59 | 000059.jpg 60 | 000060.jpg 61 | 000061.jpg 62 | 000062.jpg 63 | 000063.jpg 64 | 000064.jpg 65 | 000065.jpg 66 | 000066.jpg 67 | 000067.jpg 68 | 000068.jpg 69 | 000069.jpg 70 | 000070.jpg 71 | 000071.jpg 72 | 000072.jpg 73 | 000073.jpg 74 | 000074.jpg 75 | 000075.jpg 76 | 000076.jpg 77 | 000077.jpg 78 | 000078.jpg 79 | 000079.jpg 80 | 000080.jpg 81 | 000081.jpg 82 | 000082.jpg 83 | 000083.jpg 84 | 000084.jpg 85 | 000085.jpg 86 | 000086.jpg 87 | 000087.jpg 88 | 000088.jpg 89 | 000089.jpg 90 | 000090.jpg 91 | 000091.jpg 92 | 000092.jpg 93 | 000093.jpg 94 | 000094.jpg 95 | 000095.jpg 96 | 000096.jpg 97 | 000097.jpg 98 | 000098.jpg 99 | 000099.jpg 100 | 000100.jpg 101 | 000101.jpg 102 | 000102.jpg 103 | 000103.jpg 104 | 000104.jpg 105 | 000105.jpg 106 | 000106.jpg 107 | 000107.jpg 108 | 000108.jpg 109 | 000109.jpg 110 | 000110.jpg 111 | 000111.jpg 112 | 000112.jpg 113 | 000113.jpg 114 | 000114.jpg 115 | 000115.jpg 116 | 000116.jpg 117 | 000117.jpg 118 | 000118.jpg 119 | 000119.jpg 120 | 000120.jpg 121 | 000121.jpg 122 | 000122.jpg 123 | 000123.jpg 124 | 000124.jpg 125 | 000125.jpg 126 | 000126.jpg 127 | 000127.jpg 128 | 000128.jpg 129 | 000129.jpg 130 | 000130.jpg 131 | 000131.jpg 132 | 000132.jpg 133 | 000133.jpg 134 | 000134.jpg 135 | 000135.jpg 136 | 000136.jpg 137 | 000137.jpg 138 | 000138.jpg 139 | 000139.jpg 140 | 000140.jpg 141 | 000141.jpg 142 | 000142.jpg 143 | 000143.jpg 144 | 000144.jpg 145 | 000145.jpg 146 | 000146.jpg 147 | 000147.jpg 148 | 000148.jpg 149 | 000149.jpg 150 | 000150.jpg 151 | 000151.jpg 152 | 000152.jpg 153 | 000153.jpg 154 | 000154.jpg 155 | 000155.jpg 156 | 000156.jpg 157 | 000157.jpg 158 | 000158.jpg 159 | 000159.jpg 160 | 000160.jpg 161 | 000161.jpg 162 | 000162.jpg 163 | 000163.jpg 164 | 000164.jpg 165 | 000165.jpg 166 | 000166.jpg 167 | 000167.jpg 168 | 000168.jpg 169 | 000169.jpg 170 | 000170.jpg 171 | 000171.jpg 172 | 000172.jpg 173 | 000173.jpg 174 | 000174.jpg 175 | 000175.jpg 176 | 000176.jpg 177 | 000177.jpg 178 | 000178.jpg 179 | 000179.jpg 180 | 000180.jpg 181 | 000181.jpg 182 | 000182.jpg 183 | 000183.jpg 184 | 000184.jpg 185 | 000185.jpg 186 | 000186.jpg 187 | 000187.jpg 188 | 000188.jpg 189 | 000189.jpg 190 | 000190.jpg 191 | 000191.jpg 192 | 000192.jpg 193 | 000193.jpg 194 | 000194.jpg 195 | 000195.jpg 196 | 000196.jpg 197 | 000197.jpg 198 | 000198.jpg 199 | 000199.jpg 200 | 000200.jpg 201 | 000201.jpg 202 | 000202.jpg 203 | 000203.jpg 204 | 000204.jpg 205 | 000205.jpg 206 | 000206.jpg 207 | 000207.jpg 208 | 000208.jpg 209 | 000209.jpg 210 | 000210.jpg 211 | 000211.jpg 212 | 000212.jpg 213 | 000213.jpg 214 | 000214.jpg 215 | 000215.jpg 216 | 000216.jpg 217 | 000217.jpg 218 | 000218.jpg 219 | 000219.jpg 220 | 000220.jpg 221 | 000221.jpg 222 | 000222.jpg 223 | 000223.jpg 224 | 000224.jpg 225 | 000225.jpg 226 | 000226.jpg 227 | 000227.jpg 228 | 000228.jpg 229 | 000229.jpg 230 | 000230.jpg 231 | 000231.jpg 232 | 000232.jpg 233 | 000233.jpg 234 | 000234.jpg 235 | 000235.jpg 236 | 000236.jpg 237 | 000237.jpg 238 | 000238.jpg 239 | 000239.jpg 240 | 000240.jpg 241 | 000241.jpg 242 | 000242.jpg 243 | 000243.jpg 244 | 000244.jpg 245 | 000245.jpg 246 | 000246.jpg 247 | 000247.jpg 248 | 000248.jpg 249 | 000249.jpg 250 | 000250.jpg 251 | 000251.jpg 252 | 000252.jpg 253 | 000253.jpg 254 | 000254.jpg 255 | 000255.jpg 256 | 000256.jpg 257 | 000257.jpg 258 | 000258.jpg 259 | 000259.jpg 260 | 000260.jpg 261 | 000261.jpg 262 | 000262.jpg 263 | 000263.jpg 264 | 000264.jpg 265 | 000265.jpg 266 | 000266.jpg 267 | 000267.jpg 268 | 000268.jpg 269 | 000269.jpg 270 | 000270.jpg 271 | 000271.jpg 272 | 000272.jpg 273 | 000273.jpg 274 | 000274.jpg 275 | 000275.jpg 276 | 000276.jpg 277 | 000277.jpg 278 | 000278.jpg 279 | 000279.jpg 280 | 000280.jpg 281 | 000281.jpg 282 | 000282.jpg 283 | 000283.jpg 284 | 000284.jpg 285 | 000285.jpg 286 | 000286.jpg 287 | 000287.jpg 288 | 000288.jpg 289 | 000289.jpg 290 | 000290.jpg 291 | 000291.jpg 292 | 000292.jpg 293 | 000293.jpg 294 | 000294.jpg 295 | 000295.jpg 296 | 000296.jpg 297 | 000297.jpg 298 | 000298.jpg 299 | 000299.jpg 300 | 000300.jpg 301 | 000301.jpg 302 | 000302.jpg 303 | 000303.jpg 304 | 000304.jpg 305 | 000305.jpg 306 | 000306.jpg 307 | 000307.jpg 308 | 000308.jpg 309 | 000309.jpg 310 | 000310.jpg 311 | 000311.jpg 312 | 000312.jpg 313 | 000340.jpg 314 | 000341.jpg 315 | 000342.jpg 316 | 000343.jpg 317 | 000344.jpg 318 | 000345.jpg 319 | 000346.jpg 320 | 000347.jpg 321 | 000348.jpg 322 | 000349.jpg 323 | 000350.jpg 324 | 000351.jpg 325 | 000352.jpg 326 | 000353.jpg 327 | 000354.jpg 328 | 000355.jpg 329 | 000356.jpg 330 | 000357.jpg 331 | 000358.jpg 332 | 000359.jpg 333 | 000360.jpg 334 | 000361.jpg 335 | 000362.jpg 336 | 000363.jpg 337 | 000364.jpg 338 | 000365.jpg 339 | 000366.jpg 340 | 000367.jpg 341 | 000368.jpg 342 | 000369.jpg 343 | 000370.jpg 344 | 000371.jpg 345 | 000372.jpg 346 | 000373.jpg 347 | 000374.jpg 348 | 000375.jpg 349 | 000376.jpg 350 | 000377.jpg 351 | 000378.jpg 352 | 000379.jpg 353 | 000380.jpg 354 | 000381.jpg 355 | 000382.jpg 356 | 000383.jpg 357 | 000384.jpg 358 | 000385.jpg 359 | 000386.jpg 360 | 000387.jpg 361 | 000388.jpg 362 | 000389.jpg 363 | 000390.jpg 364 | 000391.jpg 365 | 000392.jpg 366 | 000393.jpg 367 | 000394.jpg 368 | 000395.jpg 369 | 000396.jpg 370 | 000397.jpg 371 | 000398.jpg 372 | 000399.jpg 373 | 000400.jpg 374 | 000401.jpg 375 | 000402.jpg 376 | 000403.jpg 377 | 000404.jpg 378 | 000405.jpg 379 | 000406.jpg 380 | 000407.jpg 381 | 000408.jpg 382 | 000409.jpg 383 | 000410.jpg 384 | 000411.jpg 385 | 000412.jpg 386 | 000413.jpg 387 | 000414.jpg 388 | 000415.jpg 389 | 000416.jpg 390 | 000417.jpg 391 | 000418.jpg 392 | 000419.jpg 393 | 000420.jpg 394 | 000421.jpg 395 | 000422.jpg 396 | 000423.jpg 397 | 000424.jpg 398 | 000425.jpg 399 | 000426.jpg 400 | 000427.jpg 401 | 000428.jpg 402 | 000429.jpg 403 | 000430.jpg 404 | 000431.jpg 405 | 000432.jpg 406 | 000433.jpg 407 | 000434.jpg 408 | 000435.jpg 409 | 000436.jpg 410 | 000437.jpg 411 | 000438.jpg 412 | 000439.jpg 413 | 000440.jpg 414 | 000441.jpg 415 | 000442.jpg 416 | 000443.jpg 417 | 000444.jpg 418 | 000445.jpg 419 | 000446.jpg 420 | 000447.jpg 421 | 000448.jpg 422 | 000449.jpg 423 | 000450.jpg 424 | 000451.jpg 425 | 000452.jpg 426 | 000453.jpg 427 | 000454.jpg 428 | 000455.jpg 429 | 000456.jpg 430 | 000457.jpg 431 | 000458.jpg 432 | 000459.jpg 433 | 000460.jpg 434 | 000461.jpg 435 | 000462.jpg 436 | 000463.jpg 437 | 000464.jpg 438 | 000465.jpg 439 | 000466.jpg 440 | 000467.jpg 441 | 000468.jpg 442 | 000469.jpg 443 | 000470.jpg 444 | 000471.jpg 445 | 000472.jpg 446 | 000473.jpg 447 | 000474.jpg 448 | 000475.jpg 449 | 000476.jpg 450 | 000477.jpg 451 | 000478.jpg 452 | 000479.jpg 453 | 000480.jpg 454 | 000481.jpg 455 | 000482.jpg 456 | 000483.jpg 457 | 000484.jpg 458 | 000485.jpg 459 | 000486.jpg 460 | 000487.jpg 461 | 000488.jpg 462 | 000489.jpg 463 | 000490.jpg 464 | 000491.jpg 465 | 000492.jpg 466 | 000493.jpg 467 | 000494.jpg 468 | 000495.jpg 469 | 000496.jpg 470 | 000497.jpg 471 | 000498.jpg 472 | 000499.jpg 473 | 000500.jpg 474 | 000501.jpg 475 | 000502.jpg 476 | 000503.jpg 477 | 000504.jpg 478 | 000505.jpg 479 | 000506.jpg 480 | 000507.jpg 481 | 000508.jpg 482 | 000509.jpg 483 | -------------------------------------------------------------------------------- /datasets/combine_hd5.py: -------------------------------------------------------------------------------- 1 | """ 2 | Convert Okutama Action dataset to VOC similar dataset 3 | Store the processed data into HDF5 file 4 | The original dataset is for object predestria tracking and people action understasnding 5 | We remap the orignal labels by only keeping object detection labels 6 | """ 7 | # Original Labels: Each line contains 10+ columns, separated by spaces. The definition of these columns are: 8 | # Track ID. All rows with the same ID belong to the same person for 180 frames. Then the person gets a new idea for the next 180 frames. We will soon release an update to make the IDs consistant. 9 | # xmin. The top left x-coordinate of the bounding box. 10 | # ymin. The top left y-coordinate of the bounding box. 11 | # xmax. The bottom right x-coordinate of the bounding box. 12 | # ymax. The bottom right y-coordinate of the bounding box. 13 | # frame. The frame that this annotation represents. 14 | # lost. If 1, the annotation is outside of the view screen. 15 | # occluded. If 1, the annotation is occluded. 16 | # generated. If 1, the annotation was automatically interpolated. 17 | # label. The label for this annotation, enclosed in quotation marks. 18 | # (+) actions. Each column after this is an action. 19 | 20 | # There are two label files for each video; 21 | # one for single-action detection and one for multi-action detection. 22 | # Note that labels for single-action detection has been created from the multi-action detection labels 23 | # (for more details please refer to our publication). 24 | # For pedestrian detection task, the columns describing the actions should be ignored. 25 | 26 | # Object detection Labels: 27 | # labels. Always be 0 ('person') for this dataset 28 | # xmin. The top left x-coordinate of the bounding box. 29 | # ymin. The top left y-coordinate of the bounding box. 30 | # xmax. The bottom right x-coordinate of the bounding box. 31 | # ymax. The bottom right y-coordinate of the bounding box. 32 | 33 | import numpy as np 34 | import os 35 | import glob 36 | import cv2 37 | import argparse 38 | import fnmatch 39 | import h5py 40 | import random 41 | import copy 42 | from sklearn.model_selection import train_test_split 43 | from sklearn.utils import shuffle 44 | 45 | classes = ["person", "bus", "car", "train"] 46 | 47 | parser = argparse.ArgumentParser( 48 | description='Merge multiple HDF5 datasets into a singleone.') 49 | 50 | parser.add_argument( 51 | '-o', 52 | '--data_output', 53 | help='path to output HDF5', 54 | default='~/data/') 55 | 56 | parser.add_argument( 57 | '-i', 58 | '--input_hdf5s', 59 | help='path to input hdf5 files', 60 | nargs=argparse.ONE_OR_MORE) 61 | 62 | parser.add_argument( 63 | '-d', 64 | '--draw', 65 | help='draw bound boxes on each image and output to /tmp', 66 | default=False) 67 | 68 | def draw_bboxes(image, bboxes): 69 | """Draw the bounding boxes on raw or jpg images""" 70 | decoded_image = copy.deepcopy(image) 71 | decoded_image = cv2.imdecode(decoded_image, 1) 72 | if bboxes is None: 73 | return decoded_image 74 | corners = bboxes[:, 1:] 75 | corners = np.array(corners, dtype=np.int) 76 | for corner in corners: 77 | cv2.rectangle(decoded_image, (corner[0], corner[1]),(corner[2], corner[3]), (0,255,0), 5) 78 | return decoded_image 79 | 80 | def draw_on_images(dataset_images, dataset_boxes, out_dir='/tmp/combined/'): 81 | if not os.path.exists(out_dir): 82 | os.mkdir(out_dir) 83 | for i in range(dataset_images.shape[0]): 84 | boxes = np.array(dataset_boxes[i]).reshape(-1, 5) 85 | img = draw_bboxes(dataset_images[i], boxes) 86 | out_img_path = os.path.join(out_dir, str(i)+'.jpg') 87 | cv2.imwrite(out_img_path, img) 88 | return 89 | 90 | def _main(args): 91 | draw_enabled = args.draw 92 | output_path = os.path.expanduser(args.data_output) 93 | 94 | input_hdf5 = [] 95 | num_datasets = len(args.input_hdf5s) 96 | if num_datasets < 2: 97 | print('Number of hd5f files is :' + str(num_datasets)) 98 | print('Nothing to combine') 99 | return 100 | 101 | num_samples_images_train = 0 102 | num_samples_bboxes_train = 0 103 | num_samples_images_valid = 0 104 | num_samples_bboxes_valid = 0 105 | 106 | for f in args.input_hdf5s: 107 | in_file = h5py.File(f, 'r') 108 | input_hdf5.append(in_file) 109 | num_samples_images_train += in_file['train/images'].shape[0] 110 | num_samples_bboxes_train += in_file['train/boxes'].shape[0] 111 | num_samples_images_valid += in_file['valid/images'].shape[0] 112 | num_samples_bboxes_valid += in_file['valid/boxes'].shape[0] 113 | 114 | # images and boxes must have the same size 115 | assert(num_samples_images_train == num_samples_bboxes_train) 116 | assert(num_samples_images_valid == num_samples_bboxes_valid) 117 | 118 | num_samples_train = num_samples_images_train 119 | num_samples_valid = num_samples_images_valid 120 | 121 | # Create HDF5 dataset structure 122 | print('Creating output HDF5 dataset structure.') 123 | print('Total train: ' + str(num_samples_train)) 124 | print('Total valid: ' + str(num_samples_valid)) 125 | 126 | if not os.path.exists(output_path): 127 | print('Creating ' + output_path) 128 | os.mkdir(output_path) 129 | 130 | fname = os.path.join(output_path, 'combined.hdf5') 131 | if os.path.exists(fname): 132 | print('Removing old ' + fname) 133 | os.remove(fname) 134 | 135 | # Create HDF5 dataset structure 136 | print('Creating HDF5 dataset structure.') 137 | combined = h5py.File(fname, 'w') 138 | 139 | uint8_dt = h5py.special_dtype( 140 | vlen=np.dtype('uint8')) # variable length uint8 141 | int32_dt = h5py.special_dtype( 142 | vlen=np.dtype('int32')) # variable length uint8 143 | 144 | vlen_int_dt = h5py.special_dtype( 145 | vlen=np.dtype(int)) # variable length default int 146 | 147 | train_group = combined.create_group('train') 148 | valid_group = combined.create_group('valid') 149 | 150 | # store class list for reference class ids as csv fixed-length numpy string 151 | combined.attrs['classes'] = np.string_(str.join(',', classes)) 152 | 153 | # store images as variable length uint8 arrays 154 | dataset_train_images = train_group.create_dataset( 155 | 'images', shape=(num_samples_train, ), dtype=uint8_dt) 156 | 157 | dataset_valid_images = valid_group.create_dataset( 158 | 'images', shape=(num_samples_valid, ), dtype=uint8_dt) 159 | 160 | # store images as variable length uint8 arrays 161 | dataset_train_boxes = train_group.create_dataset( 162 | 'boxes', shape=(num_samples_train, ), dtype=int32_dt) 163 | 164 | dataset_valid_boxes = valid_group.create_dataset( 165 | 'boxes', shape=(num_samples_valid, ), dtype=int32_dt) 166 | 167 | # combine the input hdf5 into the new dataset 168 | # combine train and valid data 169 | Xtrain = [] 170 | ytrain = [] 171 | Xvalid = [] 172 | yvalid = [] 173 | # Note: this might use a large chunk of memory as all the data are loaded into memory first and then 174 | # we randomly shuffe it 175 | for hdf5 in input_hdf5: 176 | for i in range(hdf5['train/images'].shape[0]): 177 | Xtrain.append(hdf5['train/images'][i]) 178 | ytrain.append(hdf5['train/boxes'][i]) 179 | for i in range(hdf5['valid/images'].shape[0]): 180 | Xvalid.append(hdf5['valid/images'][i]) 181 | yvalid.append(hdf5['valid/boxes'][i]) 182 | 183 | Xtrain, ytrain = shuffle(Xtrain, ytrain) 184 | Xvalid, yvalid = shuffle(Xvalid, yvalid) 185 | 186 | for i in range(num_samples_train): 187 | dataset_train_images[i] = Xtrain[i] 188 | dataset_train_boxes[i] = ytrain[i] 189 | for i in range(num_samples_valid): 190 | dataset_valid_images[i] = Xvalid[i] 191 | dataset_valid_boxes[i] = yvalid[i] 192 | 193 | if draw_enabled: 194 | num_check = 1000 195 | draw_on_images(dataset_train_images[0:num_check], dataset_train_boxes[0:num_check], '/tmp/train') 196 | draw_on_images(dataset_valid_images[0:num_check], dataset_valid_boxes[0:num_check], '/tmp/valid') 197 | 198 | combined.close() 199 | for hdf5 in input_hdf5: 200 | hdf5.close() 201 | print('Done combining') 202 | 203 | if __name__ == '__main__': 204 | _main(parser.parse_args()) -------------------------------------------------------------------------------- /datasets/lisa_traffic_light.py: -------------------------------------------------------------------------------- 1 | # https://www.kaggle.com/mbornoe/lisa-traffic-light-dataset/home 2 | 3 | import os 4 | import glob 5 | import cv2 6 | import argparse 7 | import fnmatch 8 | import h5py 9 | import csv 10 | import pandas as pd 11 | import numpy as np 12 | import copy 13 | from sklearn.utils import shuffle 14 | from sklearn.model_selection import train_test_split 15 | 16 | LISA_UDACITY_CLASSES = ["stop", "go", "warning", "donotcare"] 17 | 18 | 19 | parser = argparse.ArgumentParser( 20 | description='Convert LISA dataset to HDF5.') 21 | 22 | parser.add_argument( 23 | '-p', 24 | '--seq_path', 25 | help='path to UAV123 dataseq', 26 | default='~/data/UAV123/UAV123_10fps/data_seq/UAV123_10fps/') 27 | 28 | parser.add_argument( 29 | '-a', 30 | '--anno_path', 31 | help='path to UAV123 annotation', 32 | default='~/data/UAV123/UAV123_10fps/anno/UAV123_10fps/') 33 | 34 | parser.add_argument( 35 | '-s', 36 | '--selected', 37 | help='path to UAV123 selected', 38 | default='datasets/UAV123_selected/') 39 | 40 | parser.add_argument( 41 | '-f', 42 | '--hdf5_path', 43 | help='path to output UAV123 hdf5', 44 | default='~/data/UAV123/UAV123_10fps/') 45 | 46 | parser.add_argument( 47 | '-d', 48 | '--verify_only', 49 | help='verify the UAV HDF5 dataset', 50 | default=False) 51 | 52 | 53 | 54 | def parse_lisa_annotations(annotations_path, lisa_seq_names): 55 | ''' Parse LISA annotations 56 | ''' 57 | csv_files_dict = {} 58 | for fname in lisa_seq_names: 59 | csv_path = os.path.join(annotations_path, fname) 60 | csv_file = os.path.join(csv_path, 'frameAnnotationsBOX.csv') 61 | csv_file = os.path.expanduser(csv_file) 62 | if not os.path.exists(csv_file): 63 | print(csv_file + 'does not exit') 64 | else: 65 | print('found anno file ' + csv_file) 66 | csv_files_dict[fname] = csv_file 67 | return csv_files_dict 68 | 69 | 70 | def load_images_from_csv(annotations_path, images_path, lisa_seq_names): 71 | ''' Parse the csvs and update image paths 72 | ''' 73 | csv_files_dict = parse_lisa_annotations(annotations_path, lisa_seq_names) 74 | images_path = os.path.expanduser(images_path) 75 | lisa_dict = {} 76 | for seq in lisa_seq_names: 77 | csv_file = csv_files_dict[seq] 78 | col_name = 'Filename' 79 | col_tag = 'Annotation tag' 80 | col_x0 = 'Upper left corner X' 81 | col_y0 = 'Upper left corner Y' 82 | col_x1 = 'Lower right corner X' 83 | col_y1 = 'Lower right corner Y' 84 | col_names = [col_name, col_tag, col_x0, col_y0, col_x1, col_y1] 85 | signs_of_interest = ['stop', 'go', 'warning'] 86 | ann_csv = pd.read_csv(csv_file, sep=';', usecols=col_names) 87 | # update the path and change the traffic lights which do not care label 88 | # we will use those as negative training 89 | for i in range(ann_csv.shape[0]): 90 | org_name = ann_csv[col_name].values[i] 91 | img_name = org_name.split('/')[-1] 92 | seq_image_path = os.path.join(images_path, seq) 93 | seq_image_path = os.path.join(seq_image_path, 'frames') 94 | image_path = os.path.join(seq_image_path, img_name) 95 | ann_csv[col_name].values[i] = image_path 96 | if ann_csv[col_tag].values[i] not in signs_of_interest: 97 | ann_csv[col_tag].values[i] = 'donotcare' 98 | # convert to training bbox 99 | label = ann_csv[col_tag].values[i] 100 | bbox = [LISA_UDACITY_CLASSES.index(label), 101 | int(ann_csv[col_x0].values[i]), 102 | int(ann_csv[col_y0].values[i]), 103 | int(ann_csv[col_x1].values[i]), 104 | int(ann_csv[col_y1].values[i])] 105 | if image_path not in lisa_dict: 106 | lisa_dict[image_path] = [] 107 | lisa_dict[image_path].append(bbox) 108 | return lisa_dict 109 | 110 | 111 | def add_to_dataset(lisa_dict, keys, dataset_images, dataset_boxes): 112 | dataset_images.resize(len(keys), axis=0) 113 | dataset_boxes.resize(len(keys), axis=0) 114 | 115 | for i, image_file in enumerate(keys): 116 | if not os.path.exists(image_file): 117 | print('warn: cannot find image file: ' + image_file) 118 | continue 119 | image_boxes = np.array(lisa_dict[image_file]) 120 | if len(image_boxes) == 0: 121 | print('warn: no bbox for image file: ' + image_file) 122 | with open(image_file, 'rb') as in_file: 123 | image_data = in_file.read() 124 | image_data = np.fromstring(image_data, dtype='uint8') 125 | dataset_images[i] = image_data 126 | dataset_boxes[i] = image_boxes.flatten('C') 127 | 128 | def draw_bboxes(image, bboxes): 129 | decoded_image = copy.deepcopy(image) 130 | if image.shape[0] > 3180: 131 | decoded_image = cv2.imdecode(image, 1) 132 | if bboxes is None: 133 | return decoded_image 134 | corners = bboxes[:, 1:] 135 | corners = np.array(corners, dtype=np.int) 136 | for corner in corners: 137 | cv2.rectangle(decoded_image, (corner[0], corner[1]),(corner[2], corner[3]), (0,255,0), 10) 138 | return decoded_image 139 | 140 | def draw_on_images(dataset_images, dataset_boxes, out_dir='/tmp/'): 141 | if not os.path.exists(out_dir): 142 | os.mkdir(out_dir) 143 | for i in range(dataset_images.shape[0]): 144 | boxes = np.array(dataset_boxes[i]).reshape(-1, 5) 145 | img = draw_bboxes(dataset_images[i], boxes) 146 | out_img_path = os.path.join(out_dir, str(i)+'.jpg') 147 | cv2.imwrite(out_img_path, img) 148 | 149 | def _main(args): 150 | LISA_ANNO_PATH ='~/data/LISA/Annotations' 151 | LISA_IMAGE_PATH ='~/data/LISA/lisa-traffic-light-dataset' 152 | LISA_SEQS = ['daySequence1', 'daySequence2'] 153 | hdf5_path = os.path.join('/tmp', 'lisa.hdf5') 154 | # Convert CSV to 155 | lisa_dict = load_images_from_csv(LISA_ANNO_PATH, LISA_IMAGE_PATH, LISA_SEQS) 156 | keys = list(lisa_dict.keys()) 157 | keys_train, keys_valid = train_test_split(keys, shuffle=True, test_size = 0.25) 158 | 159 | 160 | lisa_h5file = h5py.File(hdf5_path, 'w') 161 | 162 | uint8_dt = h5py.special_dtype( 163 | vlen=np.dtype('uint8')) # variable length uint8 164 | 165 | uint32_dt = h5py.special_dtype( 166 | vlen=np.dtype('uint32')) # variable length uint8 167 | 168 | train_group = lisa_h5file.create_group('train') 169 | valid_group = lisa_h5file.create_group('valid') 170 | 171 | # store class list for reference class ids as csv fixed-length numpy string 172 | lisa_h5file.attrs['classes'] = np.string_(str.join(',', LISA_UDACITY_CLASSES)) 173 | 174 | # store images as variable length uint8 arrays 175 | dataset_train_images = train_group.create_dataset( 176 | 'images', shape=(0, ), maxshape=(None, ), dtype=uint8_dt) 177 | 178 | dataset_valid_images = valid_group.create_dataset( 179 | 'images', shape=(0, ), maxshape=(None, ), dtype=uint8_dt) 180 | 181 | 182 | dataset_train_boxes = train_group.create_dataset( 183 | 'boxes', shape=(0, ), maxshape=(None, ), dtype=uint32_dt) 184 | 185 | dataset_valid_boxes = valid_group.create_dataset( 186 | 'boxes', shape=(0, ), maxshape=(None, ), dtype=uint32_dt) 187 | 188 | add_to_dataset(lisa_dict, keys_train, dataset_train_images, dataset_train_boxes) 189 | add_to_dataset(lisa_dict, keys_valid, dataset_valid_images, dataset_valid_boxes) 190 | 191 | lisa_h5file.close() 192 | 193 | print("Verifying the HD5 data....") 194 | if not os.path.exists(hdf5_path): 195 | print(hdf5_path + " does not exits!") 196 | return 197 | uav123 = h5py.File(hdf5_path, 'r') 198 | print("Verifying the training data....") 199 | draw_on_images(uav123['train/images'], uav123['train/boxes']) 200 | print("Verifying the validation data....") 201 | draw_on_images(uav123['valid/images'], uav123['valid/boxes']) 202 | uav123.close() 203 | 204 | if __name__ == '__main__': 205 | _main(parser.parse_args()) 206 | -------------------------------------------------------------------------------- /datasets/voc_to_hdf5.py: -------------------------------------------------------------------------------- 1 | """ 2 | Convert Pascal VOC 2007+2012 detection dataset to HDF5. 3 | 4 | Does not preserve full XML annotations. 5 | Combines all VOC subsets (train, val test) with VOC2012 train for full 6 | training set as done in Faster R-CNN paper. 7 | 8 | Code based on: 9 | https://github.com/pjreddie/darknet/blob/master/scripts/voc_label.py 10 | """ 11 | 12 | import argparse 13 | import os 14 | import xml.etree.ElementTree as ElementTree 15 | 16 | import h5py 17 | import numpy as np 18 | 19 | sets_from_2007 = [('2007', 'train'), ('2007', 'val')] 20 | train_set = [('2012', 'train')] 21 | val_set = [('2012', 'val')] 22 | test_set = [('2007', 'test')] 23 | 24 | voc_classes = [ 25 | "aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat", 26 | "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person", 27 | "pottedplant", "sheep", "sofa", "train", "tvmonitor" 28 | ] 29 | # We only care about below two classes (for now) 30 | vehicles = ["bus", "car", "train"] 31 | aerial_classes = ["person", "vehicle"] 32 | 33 | parser = argparse.ArgumentParser( 34 | description='Convert Pascal VOC 2007+2012 detection dataset to HDF5.') 35 | parser.add_argument( 36 | '-p', 37 | '--path_to_voc', 38 | help='path to VOCdevkit directory', 39 | default='~/data/PascalVOC/VOCdevkit') 40 | 41 | 42 | def get_boxes_for_id(voc_path, year, image_id): 43 | """Get object bounding boxes annotations for given image. 44 | 45 | Parameters 46 | ---------- 47 | voc_path : str 48 | Path to VOCdevkit directory. 49 | year : str 50 | Year of dataset containing image. Either '2007' or '2012'. 51 | image_id : str 52 | Pascal VOC identifier for given image. 53 | 54 | Returns 55 | ------- 56 | boxes : array of int 57 | bounding box annotations of class label, xmin, ymin, xmax, ymax as a 58 | 5xN array. 59 | """ 60 | fname = os.path.join(voc_path, 'VOC{}/Annotations/{}.xml'.format(year, 61 | image_id)) 62 | with open(fname) as in_file: 63 | xml_tree = ElementTree.parse(in_file) 64 | root = xml_tree.getroot() 65 | boxes = [] 66 | for obj in root.iter('object'): 67 | difficult = obj.find('difficult').text 68 | label = obj.find('name').text 69 | if int(difficult) == 1: # exclude difficult or unlisted classes 70 | continue 71 | if (label != 'person') and (label not in vehicles): 72 | continue 73 | # map 'car', 'bus' and 'train' to label 'vehicle' 74 | if label in vehicles: 75 | label = 'vehicle' 76 | xml_box = obj.find('bndbox') 77 | bbox = (aerial_classes.index(label), int(xml_box.find('xmin').text), 78 | int(xml_box.find('ymin').text), int(xml_box.find('xmax').text), 79 | int(xml_box.find('ymax').text)) 80 | boxes.extend(bbox) 81 | return np.array(boxes) # .T # return transpose so last dimension is variable length 82 | 83 | def get_image_for_id(voc_path, year, image_id): 84 | """Get image data as uint8 array for given image. 85 | 86 | Parameters 87 | ---------- 88 | voc_path : str 89 | Path to VOCdevkit directory. 90 | year : str 91 | Year of dataset containing image. Either '2007' or '2012'. 92 | image_id : str 93 | Pascal VOC identifier for given image. 94 | 95 | Returns 96 | ------- 97 | image_data : array of uint8 98 | Compressed JPEG byte string represented as array of uint8. 99 | """ 100 | fname = os.path.join(voc_path, 'VOC{}/JPEGImages/{}.jpg'.format(year, 101 | image_id)) 102 | with open(fname, 'rb') as in_file: 103 | data = in_file.read() 104 | # Use of encoding based on: https://github.com/h5py/h5py/issues/745 105 | return np.fromstring(data, dtype='uint8') 106 | 107 | 108 | def get_ids(voc_path, datasets): 109 | """Get image identifiers for corresponding list of dataset identifies. 110 | 111 | Parameters 112 | ---------- 113 | voc_path : str 114 | Path to VOCdevkit directory. 115 | datasets : list of str tuples 116 | List of dataset identifiers in the form of (year, dataset) pairs. 117 | 118 | Returns 119 | ------- 120 | ids : list of str 121 | List of all image identifiers for given datasets. 122 | """ 123 | ids = [] 124 | for year, image_set in datasets: 125 | id_file = os.path.join(voc_path, 'VOC{}/ImageSets/Main/{}.txt'.format( 126 | year, image_set)) 127 | with open(id_file, 'r') as image_ids: 128 | ids.extend(map(str.strip, image_ids.readlines())) 129 | return ids 130 | 131 | 132 | def add_to_dataset(voc_path, year, ids, images, boxes, start=0): 133 | """Process all given ids and adds them to given datasets.""" 134 | idx = 0 135 | for i, voc_id in enumerate(ids): 136 | image_data = get_image_for_id(voc_path, year, voc_id) 137 | image_boxes = get_boxes_for_id(voc_path, year, voc_id) 138 | # ignore images without interesting objects 139 | if image_boxes.shape[0] == 0: 140 | continue 141 | images[start + idx] = image_data 142 | boxes[start + idx] = image_boxes 143 | idx += 1 144 | return idx 145 | 146 | def _main(args): 147 | voc_path = os.path.expanduser(args.path_to_voc) 148 | train_ids = get_ids(voc_path, train_set) 149 | val_ids = get_ids(voc_path, val_set) 150 | test_ids = get_ids(voc_path, test_set) 151 | train_ids_2007 = get_ids(voc_path, sets_from_2007) 152 | total_train_ids = len(train_ids) + len(train_ids_2007) 153 | 154 | # Create HDF5 dataset structure 155 | print('Creating HDF5 dataset structure.') 156 | fname = os.path.join(voc_path, 'pascal_voc_07_12_person_vehicle.hdf5') 157 | if os.path.exists(fname): 158 | print('Removing old ' + fname) 159 | os.remove(fname) 160 | 161 | voc_h5file = h5py.File(fname, 'w') 162 | uint8_dt = h5py.special_dtype( 163 | vlen=np.dtype('uint8')) # variable length uint8 164 | vlen_int_dt = h5py.special_dtype( 165 | vlen=np.dtype(int)) # variable length default int 166 | train_group = voc_h5file.create_group('train') 167 | val_group = voc_h5file.create_group('valid') 168 | 169 | 170 | test_group = voc_h5file.create_group('test') 171 | 172 | # store class list for reference class ids as csv fixed-length numpy string 173 | voc_h5file.attrs['classes'] = np.string_(str.join(',', aerial_classes)) 174 | 175 | # store images as variable length uint8 arrays 176 | train_images = train_group.create_dataset( 177 | 'images', shape=(total_train_ids, ), dtype=uint8_dt, chunks=True) 178 | val_images = val_group.create_dataset( 179 | 'images', shape=(len(val_ids), ), dtype=uint8_dt, chunks=True) 180 | test_images = test_group.create_dataset( 181 | 'images', shape=(len(test_ids), ), dtype=uint8_dt, chunks=True) 182 | 183 | # store boxes as class_id, xmin, ymin, xmax, ymax 184 | train_boxes = train_group.create_dataset( 185 | 'boxes', shape=(total_train_ids, ), dtype=vlen_int_dt, chunks=True) 186 | val_boxes = val_group.create_dataset( 187 | 'boxes', shape=(len(val_ids), ), dtype=vlen_int_dt, chunks=True) 188 | test_boxes = test_group.create_dataset( 189 | 'boxes', shape=(len(test_ids), ), dtype=vlen_int_dt, chunks=True) 190 | 191 | # process all ids and add to datasets 192 | print('Processing Pascal VOC 2007 datasets for training set.') 193 | last_2007 = add_to_dataset(voc_path, '2007', train_ids_2007, train_images, 194 | train_boxes) 195 | print('Processing Pascal VOC 2012 training set.') 196 | total = add_to_dataset( 197 | voc_path, 198 | '2012', 199 | train_ids, 200 | train_images, 201 | train_boxes, 202 | start=last_2007) 203 | train_images.resize(total, axis=0) 204 | train_boxes.resize(total, axis=0) 205 | 206 | print('Processing Pascal VOC 2012 val set.') 207 | total = add_to_dataset(voc_path, '2012', val_ids, val_images, val_boxes) 208 | val_images.resize(total, axis=0) 209 | val_boxes.resize(total, axis=0) 210 | 211 | print('Processing Pascal VOC 2007 test set.') 212 | total = add_to_dataset(voc_path, '2007', test_ids, test_images, test_boxes) 213 | test_images.resize(total, axis=0) 214 | test_boxes.resize(total, axis=0) 215 | 216 | print('Closing HDF5 file.') 217 | voc_h5file.close() 218 | print('Done.') 219 | 220 | if __name__ == '__main__': 221 | _main(parser.parse_args()) 222 | -------------------------------------------------------------------------------- /font/FiraMono-Medium.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/font/FiraMono-Medium.otf -------------------------------------------------------------------------------- /font/SIL Open Font License.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014, Mozilla Foundation https://mozilla.org/ with Reserved Font Name Fira Mono. 2 | 3 | Copyright (c) 2014, Telefonica S.A. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. -------------------------------------------------------------------------------- /images/dayClip1--01080.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01080.png -------------------------------------------------------------------------------- /images/dayClip1--01081.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01081.png -------------------------------------------------------------------------------- /images/dayClip1--01082.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01082.png -------------------------------------------------------------------------------- /images/dayClip1--01083.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01083.png -------------------------------------------------------------------------------- /images/dayClip1--01084.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01084.png -------------------------------------------------------------------------------- /images/dayClip1--01085.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01085.png -------------------------------------------------------------------------------- /images/dayClip1--01086.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01086.png -------------------------------------------------------------------------------- /images/dayClip1--01087.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01087.png -------------------------------------------------------------------------------- /images/dayClip1--01088.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01088.png -------------------------------------------------------------------------------- /images/dayClip1--01089.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01089.png -------------------------------------------------------------------------------- /images/dayClip1--01090.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01090.png -------------------------------------------------------------------------------- /images/dayClip1--01091.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01091.png -------------------------------------------------------------------------------- /images/dayClip1--01092.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01092.png -------------------------------------------------------------------------------- /images/dayClip1--01093.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01093.png -------------------------------------------------------------------------------- /images/dayClip1--01094.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01094.png -------------------------------------------------------------------------------- /images/dayClip1--01095.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01095.png -------------------------------------------------------------------------------- /images/dayClip1--01096.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01096.png -------------------------------------------------------------------------------- /images/dayClip1--01097.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01097.png -------------------------------------------------------------------------------- /images/dayClip1--01098.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01098.png -------------------------------------------------------------------------------- /images/dayClip1--01099.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01099.png -------------------------------------------------------------------------------- /images/dayClip1--01100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01100.png -------------------------------------------------------------------------------- /images/dayClip1--01101.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01101.png -------------------------------------------------------------------------------- /images/dayClip1--01102.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01102.png -------------------------------------------------------------------------------- /images/dayClip1--01103.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01103.png -------------------------------------------------------------------------------- /images/dayClip1--01104.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01104.png -------------------------------------------------------------------------------- /images/dayClip1--01105.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01105.png -------------------------------------------------------------------------------- /images/dayClip1--01106.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01106.png -------------------------------------------------------------------------------- /images/dayClip1--01107.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01107.png -------------------------------------------------------------------------------- /images/dayClip1--01108.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01108.png -------------------------------------------------------------------------------- /images/dayClip1--01109.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01109.png -------------------------------------------------------------------------------- /images/dayClip1--01110.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01110.png -------------------------------------------------------------------------------- /images/dayClip1--01111.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01111.png -------------------------------------------------------------------------------- /images/dayClip1--01112.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01112.png -------------------------------------------------------------------------------- /images/dayClip1--01113.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01113.png -------------------------------------------------------------------------------- /images/dayClip1--01114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01114.png -------------------------------------------------------------------------------- /images/dayClip1--01115.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01115.png -------------------------------------------------------------------------------- /images/dayClip1--01116.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01116.png -------------------------------------------------------------------------------- /images/dayClip1--01117.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01117.png -------------------------------------------------------------------------------- /images/dayClip1--01118.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01118.png -------------------------------------------------------------------------------- /images/dayClip1--01119.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/images/dayClip1--01119.png -------------------------------------------------------------------------------- /mobiledet/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/mobiledet/__init__.py -------------------------------------------------------------------------------- /mobiledet/models/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/mobiledet/models/__init__.py -------------------------------------------------------------------------------- /mobiledet/models/keras_darknet19.py: -------------------------------------------------------------------------------- 1 | """Darknet19 Model Defined in Keras.""" 2 | import functools 3 | from functools import partial 4 | 5 | from keras.layers import Conv2D, MaxPooling2D 6 | from keras.layers.advanced_activations import LeakyReLU 7 | from keras.layers.normalization import BatchNormalization 8 | from keras.models import Model 9 | from keras.regularizers import l2 10 | 11 | from ..utils import compose 12 | 13 | # Partial wrapper for Convolution2D with static default argument. 14 | _DarknetConv2D = partial(Conv2D, padding='same') 15 | 16 | 17 | @functools.wraps(Conv2D) 18 | def DarknetConv2D(*args, **kwargs): 19 | """Wrapper to set Darknet weight regularizer for Convolution2D.""" 20 | darknet_conv_kwargs = {'kernel_regularizer': l2(5e-4)} 21 | darknet_conv_kwargs.update(kwargs) 22 | return _DarknetConv2D(*args, **darknet_conv_kwargs) 23 | 24 | 25 | def DarknetConv2D_BN_Leaky(*args, **kwargs): 26 | """Darknet Convolution2D followed by BatchNormalization and LeakyReLU.""" 27 | no_bias_kwargs = {'use_bias': False} 28 | no_bias_kwargs.update(kwargs) 29 | return compose( 30 | DarknetConv2D(*args, **no_bias_kwargs), 31 | BatchNormalization(), 32 | LeakyReLU(alpha=0.1)) 33 | 34 | 35 | def bottleneck_block(outer_filters, bottleneck_filters): 36 | """Bottleneck block of 3x3, 1x1, 3x3 convolutions.""" 37 | return compose( 38 | DarknetConv2D_BN_Leaky(outer_filters, (3, 3)), 39 | DarknetConv2D_BN_Leaky(bottleneck_filters, (1, 1)), 40 | DarknetConv2D_BN_Leaky(outer_filters, (3, 3))) 41 | 42 | 43 | def bottleneck_x2_block(outer_filters, bottleneck_filters): 44 | """Bottleneck block of 3x3, 1x1, 3x3, 1x1, 3x3 convolutions.""" 45 | return compose( 46 | bottleneck_block(outer_filters, bottleneck_filters), 47 | DarknetConv2D_BN_Leaky(bottleneck_filters, (1, 1)), 48 | DarknetConv2D_BN_Leaky(outer_filters, (3, 3))) 49 | 50 | 51 | def darknet_body(): 52 | """Generate first 18 conv layers of Darknet-19.""" 53 | return compose( 54 | DarknetConv2D_BN_Leaky(32, (3, 3)), 55 | MaxPooling2D(), 56 | DarknetConv2D_BN_Leaky(64, (3, 3)), 57 | MaxPooling2D(), 58 | bottleneck_block(128, 64), 59 | MaxPooling2D(), 60 | bottleneck_block(256, 128), 61 | MaxPooling2D(), 62 | bottleneck_x2_block(512, 256), 63 | MaxPooling2D(), 64 | bottleneck_x2_block(1024, 512)) 65 | 66 | 67 | def darknet19(inputs, include_top=False): 68 | """Generate Darknet-19 model for Imagenet classification.""" 69 | body = darknet_body()(inputs) 70 | logits = DarknetConv2D(1000, (1, 1), activation='softmax')(body) 71 | if include_top: 72 | model = Model(inputs, logits) 73 | else: 74 | model = Model(inputs, body) 75 | return model 76 | -------------------------------------------------------------------------------- /mobiledet/models/keras_mobilenet.py: -------------------------------------------------------------------------------- 1 | """ 2 | MobileNet Implementation in Keras 3 | 4 | Author: https://github.com/fchollet/keras/blob/master/keras/applications/mobilenet.py 5 | """ 6 | import keras.backend as K 7 | from keras.layers import Input, InputSpec 8 | from keras.layers import Conv2D 9 | from keras.layers import BatchNormalization 10 | from keras.layers import Activation, Lambda 11 | from keras.layers import GlobalAvgPool2D, Reshape, Dropout 12 | from keras.models import Model 13 | from keras import initializers, regularizers, constraints 14 | from keras.utils import conv_utils 15 | 16 | 17 | def preprocess_input(x): 18 | x = x / 255. 19 | x -= 0.5 20 | x *= 2. 21 | return x 22 | 23 | 24 | def mobile_net(input_size=(224, 224, 3), include_top=True, shallow_model=False, n_classes=1000, alpha=1.0, depth_multiplier=1): 25 | if input_size is None: 26 | img_input = Input(shape=(None, None, 3)) 27 | else: 28 | img_input = Input(shape=input_size) 29 | 30 | shape = (1, 1, int(1024 * alpha)) 31 | 32 | x = _conv_block(img_input, 32, alpha, strides=(2, 2)) 33 | x = _depthwise_conv_block(x, 64, alpha, depth_multiplier, block_id=1) 34 | x = _depthwise_conv_block(x, 128, alpha, depth_multiplier, block_id=2, strides=(2, 2)) 35 | 36 | x = _depthwise_conv_block(x, 128, alpha, depth_multiplier, block_id=3) 37 | x = _depthwise_conv_block(x, 256, alpha, depth_multiplier, block_id=4, strides=(2, 2)) 38 | 39 | x = _depthwise_conv_block(x, 256, alpha, depth_multiplier, block_id=5) 40 | x = _depthwise_conv_block(x, 512, alpha, depth_multiplier, block_id=6, strides=(2, 2)) 41 | 42 | x = _depthwise_conv_block(x, 512, alpha, depth_multiplier, block_id=7) 43 | x = _depthwise_conv_block(x, 512, alpha, depth_multiplier, block_id=8) 44 | x = _depthwise_conv_block(x, 512, alpha, depth_multiplier, block_id=9) 45 | x = _depthwise_conv_block(x, 512, alpha, depth_multiplier, block_id=10) 46 | x = _depthwise_conv_block(x, 512, alpha, depth_multiplier, block_id=11) 47 | 48 | if not shallow_model: 49 | x = _depthwise_conv_block(x, 1024, alpha, depth_multiplier, block_id=12, strides=(2, 2)) 50 | x = _depthwise_conv_block(x, 1024, alpha, depth_multiplier, block_id=13) 51 | 52 | if include_top: 53 | x = GlobalAvgPool2D()(x) 54 | x = Reshape(shape, name='reshape_1')(x) 55 | x = Dropout(0.0, name='dropout')(x) 56 | 57 | x = Conv2D(n_classes, (1, 1), padding='same', name='conv_preds')(x) 58 | x = Activation('softmax', name='act_softmax')(x) 59 | x = Reshape((n_classes,), name='reshape_2')(x) 60 | 61 | model = Model(inputs=img_input, outputs=x) 62 | return model 63 | 64 | 65 | def relu_6(x): 66 | return K.relu(x, max_value=6) 67 | 68 | def _conv_block(inputs, filters, alpha, kernel=(3, 3), strides=(1, 1), name='conv1'): 69 | """ Standard Convolutional Block""" 70 | filters = int(filters * alpha) 71 | x = Conv2D(filters, kernel, padding='same', use_bias=False, strides=strides, name=name)(inputs) 72 | x = BatchNormalization(name='%s_bn' % name)(x) 73 | x = Lambda(relu_6, name='%s_relu' % name)(x) 74 | return x 75 | 76 | 77 | def _depthwise_conv_block(inputs, pointwise_conv_filters, alpha, depth_multiplier=1, strides=(1, 1), block_id=1): 78 | """ 79 | A depthwise convolution block. 80 | """ 81 | pointwise_conv_filters = int(pointwise_conv_filters * alpha) 82 | x = DepthwiseConv2D((3, 3), padding='same', 83 | depth_multiplier=depth_multiplier, strides=strides, 84 | use_bias=False, name='conv_dw_%d' % block_id)(inputs) 85 | x = BatchNormalization(name='conv_dw_%d_bn' % block_id)(x) 86 | x = Lambda(relu_6, name='conv_dw_%d_relu' % block_id)(x) 87 | 88 | x = Conv2D(pointwise_conv_filters, (1, 1), padding='same', use_bias=False, strides=(1, 1), name='conv_pw_%d' % block_id)(x) 89 | x = BatchNormalization(name='conv_pw_%d_bn' % block_id)(x) 90 | x = Lambda(relu_6, name='conv_pw_%d_relu' % block_id)(x) 91 | return x 92 | 93 | 94 | class DepthwiseConv2D(Conv2D): 95 | """ 96 | Depthwise separable 2D convolution. 97 | 98 | Reference: https://github.com/fchollet/keras/blob/master/keras/applications/mobilenet.py 99 | """ 100 | def __init__(self, kernel_size, strides=(1, 1), padding='valid', depth_multiplier=1, 101 | data_format=None, activation=None, use_bias=True, 102 | depthwise_initializer='glorot_uniform', bias_initializer='zeros', 103 | depthwise_regularizer=None, bias_regularizer=None, activity_regularizer=None, depthwise_constraint=None, 104 | bias_constraint=None, **kwargs): 105 | super(DepthwiseConv2D, self).__init__( 106 | filters=None, 107 | kernel_size=kernel_size, 108 | strides=strides, 109 | padding=padding, 110 | data_format=data_format, 111 | activation=activation, 112 | use_bias=use_bias, 113 | bias_regularizer=bias_regularizer, 114 | activity_regularizer=activity_regularizer, 115 | bias_constraint=bias_constraint, 116 | **kwargs) 117 | self.depth_multiplier = depth_multiplier 118 | self.depthwise_initializer = initializers.get(depthwise_initializer) 119 | self.depthwise_regularizer = regularizers.get(depthwise_regularizer) 120 | self.depthwise_constraint = constraints.get(depthwise_constraint) 121 | self.bias_initializer = initializers.get(bias_initializer) 122 | 123 | def build(self, input_shape): 124 | if len(input_shape) < 4: 125 | raise ValueError('Inputs to `DepthwiseConv2D` should have rank 4. ' 126 | 'Received input shape:', str(input_shape)) 127 | if self.data_format == 'channels_first': 128 | channel_axis = 1 129 | else: 130 | channel_axis = 3 131 | if input_shape[channel_axis] is None: 132 | raise ValueError('The channel dimension of the inputs to ' 133 | '`DepthwiseConv2D` ' 134 | 'should be defined. Found `None`.') 135 | input_dim = int(input_shape[channel_axis]) 136 | depthwise_kernel_shape = (self.kernel_size[0], 137 | self.kernel_size[1], 138 | input_dim, 139 | self.depth_multiplier) 140 | 141 | self.depthwise_kernel = self.add_weight( 142 | shape=depthwise_kernel_shape, 143 | initializer=self.depthwise_initializer, 144 | name='depthwise_kernel', 145 | regularizer=self.depthwise_regularizer, 146 | constraint=self.depthwise_constraint) 147 | 148 | if self.use_bias: 149 | self.bias = self.add_weight(shape=(input_dim * self.depth_multiplier,), 150 | initializer=self.bias_initializer, 151 | name='bias', 152 | regularizer=self.bias_regularizer, 153 | constraint=self.bias_constraint) 154 | else: 155 | self.bias = None 156 | # Set input spec. 157 | self.input_spec = InputSpec(ndim=4, axes={channel_axis: input_dim}) 158 | self.built = True 159 | 160 | def call(self, inputs, training=None): 161 | outputs = K.depthwise_conv2d( 162 | inputs, 163 | self.depthwise_kernel, 164 | strides=self.strides, 165 | padding=self.padding, 166 | dilation_rate=self.dilation_rate, 167 | data_format=self.data_format) 168 | 169 | if self.bias: 170 | outputs = K.bias_add( 171 | outputs, 172 | self.bias, 173 | data_format=self.data_format) 174 | 175 | if self.activation is not None: 176 | return self.activation(outputs) 177 | 178 | return outputs 179 | 180 | def compute_output_shape(self, input_shape): 181 | if self.data_format == 'channels_first': 182 | rows = input_shape[2] 183 | cols = input_shape[3] 184 | out_filters = input_shape[1] * self.depth_multiplier 185 | elif self.data_format == 'channels_last': 186 | rows = input_shape[1] 187 | cols = input_shape[2] 188 | out_filters = input_shape[3] * self.depth_multiplier 189 | 190 | rows = conv_utils.conv_output_length(rows, self.kernel_size[0], 191 | self.padding, 192 | self.strides[0]) 193 | cols = conv_utils.conv_output_length(cols, self.kernel_size[1], 194 | self.padding, 195 | self.strides[1]) 196 | 197 | if self.data_format == 'channels_first': 198 | return (input_shape[0], out_filters, rows, cols) 199 | elif self.data_format == 'channels_last': 200 | return (input_shape[0], rows, cols, out_filters) 201 | 202 | def get_config(self): 203 | config = super(DepthwiseConv2D, self).get_config() 204 | config.pop('filters') 205 | config.pop('kernel_initializer') 206 | config.pop('kernel_regularizer') 207 | config.pop('kernel_constraint') 208 | config['depth_multiplier'] = self.depth_multiplier 209 | config['depthwise_initializer'] = initializers.serialize(self.depthwise_initializer) 210 | config['depthwise_regularizer'] = regularizers.serialize(self.depthwise_regularizer) 211 | config['depthwise_constraint'] = constraints.serialize(self.depthwise_constraint) 212 | return config -------------------------------------------------------------------------------- /mobiledet/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .utils import * 2 | -------------------------------------------------------------------------------- /mobiledet/utils/anchor_boxes.py: -------------------------------------------------------------------------------- 1 | """ 2 | This script generates anchor boxes for a custom dataset. It will generate: 3 | + an anchor text file (depending on number of anchors, default = 5) 4 | 5 | Example usage: 6 | ------------- 7 | python anchor_boxes.py 8 | --path /path/to/dataset.hdf5 9 | --output_dir ./ 10 | --num_anchors 5 11 | """ 12 | import os 13 | import csv 14 | import numpy as np 15 | import cv2, io 16 | import h5py 17 | from PIL import Image 18 | from cfg import * 19 | from box import box_iou, Box 20 | from argparse import ArgumentParser 21 | 22 | parser = ArgumentParser(description="Generate custom anchor boxes") 23 | 24 | parser.add_argument('-i', '--input_hdf5', 25 | help="Path to input hdf5 file", type=str, default=None) 26 | 27 | parser.add_argument('-o', '--output_dir', 28 | help="Path to output directory", type=str, default='./') 29 | 30 | parser.add_argument('-n', '--number_anchors', 31 | help="Number of anchors [default = 5]", type=int, default=5) 32 | 33 | 34 | def hdf5_read_image_boxes(data_images, data_boxes, idx): 35 | image = data_images[idx] 36 | boxes = data_boxes[idx] 37 | boxes = boxes.reshape((-1, 5)) 38 | image = Image.open(io.BytesIO(image)) 39 | image_data = np.array(image, dtype=np.float) 40 | return np.array(image), np.array(boxes) 41 | 42 | def main(): 43 | args = parser.parse_args() 44 | input_hdf5 = args.input_hdf5 45 | output_dir = args.output_dir 46 | number_anchors = args.number_anchors 47 | h5_data = h5py.File(input_hdf5, 'r') 48 | 49 | # ################################# 50 | # Generate Anchors and Categories # 51 | # ################################# 52 | train_boxes = np.array(h5_data['train/boxes']) 53 | train_images = np.array(h5_data['train/images']) 54 | 55 | gt_boxes = [] 56 | n_small = 0 57 | average_iou = [] 58 | print("Calculating Anchors using K-mean Clustering....") 59 | if number_anchors in range(2, 16): 60 | for i in range(train_images.shape[0]): 61 | img, boxes = hdf5_read_image_boxes(train_images, train_boxes, i) 62 | img_height, img_width = img.shape[:2] 63 | orig_size = np.array([img_width, img_height], dtype=np.float) 64 | orig_size = np.expand_dims(orig_size, axis=0) 65 | boxes_xy = 0.5 * (boxes[:, 3:5] + boxes[:, 1:3]) 66 | boxes_wh = boxes[:, 3:5] - boxes[:, 1:3] 67 | # boxes_xy = boxes_xy / orig_size 68 | # boxes_wh = boxes_wh / orig_size 69 | boxes = np.concatenate((boxes_xy, boxes_wh), axis=1) 70 | for box in boxes: 71 | xc, yc, w, h = box[0], box[1], box[2], box[3] 72 | aspect_ratio = [IMAGE_W / float(img_width), IMAGE_H / float(img_height)] 73 | feature_width = float(w) * aspect_ratio[0] / 32 74 | feature_height = float(h) * aspect_ratio[1] / 32 75 | if feature_width < 1 and feature_height < 1: 76 | n_small += 1 77 | box = Box(0, 0, feature_width, feature_height) 78 | gt_boxes.append(box) 79 | print('Total boxes: ' + str(len(gt_boxes))) 80 | print('Total small: ' + str(n_small)) 81 | 82 | anchors, avg_iou = k_mean_cluster(number_anchors, gt_boxes) 83 | print("Number of anchors: {:2} | Average IoU:{:-4f}\n\n ".format(number_anchors, avg_iou)) 84 | anchors_file = os.path.join(output_dir, str(number_anchors) + '_' + str(round(avg_iou, 2)) + '_anchors.txt') 85 | average_iou.append(avg_iou) 86 | if not os.path.isdir(output_dir): 87 | os.mkdir(output_dir) 88 | with open(anchors_file, 'w') as f: 89 | for anchor in anchors: 90 | f.write("({:5f}, {:5f})\n".format(anchor.w, anchor.h)) 91 | print('average_iou:', average_iou); 92 | 93 | def k_mean_cluster(n_anchors, gt_boxes, loss_convergence=1e-6): 94 | """ 95 | Cluster anchors. 96 | """ 97 | # initialize random centroids 98 | centroid_indices = np.random.choice(len(gt_boxes), n_anchors) 99 | centroids = [] 100 | for centroid_index in centroid_indices: 101 | centroids.append(gt_boxes[centroid_index]) 102 | 103 | # iterate k-means 104 | anchors, avg_iou, loss = run_k_mean(n_anchors, gt_boxes, centroids) 105 | 106 | while True: 107 | anchors, avg_iou, curr_loss = run_k_mean(n_anchors, gt_boxes, anchors) 108 | if abs(loss - curr_loss) < loss_convergence: 109 | break 110 | loss = curr_loss 111 | 112 | return anchors, avg_iou 113 | 114 | 115 | def run_k_mean(n_anchors, boxes, centroids): 116 | ''' 117 | Perform K-mean clustering on training ground truth to generate anchors. 118 | In the paper, authors argues that generating anchors through anchors would improve Recall of the network 119 | 120 | NOTE: Euclidean distance produces larger errors for larger boxes. Therefore, YOLOv2 did not use Euclidean distance 121 | to measure calculate loss. Instead, it uses the following formula: 122 | d(box, centroid)= 1 - IoU (box, centroid) 123 | 124 | :param n_anchors: 125 | :param boxes: 126 | :param centroids: 127 | :return: 128 | new_centroids: set of new anchors 129 | groups: wth? 130 | loss: compared to current bboxes 131 | ''' 132 | loss = 0 133 | groups = [] 134 | new_centroids = [] 135 | for i in range(n_anchors): 136 | groups.append([]) 137 | new_centroids.append(Box(0, 0, 0, 0)) 138 | 139 | for box in boxes: 140 | min_distance = 1 141 | group_index = 0 142 | 143 | for i, centroid in enumerate(centroids): 144 | distance = 1 - box_iou(box, centroid) # Used in YOLO9000 145 | if distance < min_distance: 146 | min_distance = distance 147 | group_index = i 148 | 149 | groups[group_index].append(box) 150 | loss += min_distance 151 | new_centroids[group_index].w += box.w 152 | new_centroids[group_index].h += box.h 153 | 154 | for i in range(n_anchors): 155 | if len(groups[i]) == 0: 156 | continue 157 | new_centroids[i].w /= len(groups[i]) 158 | new_centroids[i].h /= len(groups[i]) 159 | 160 | iou = 0 161 | counter = 0 162 | for i, anchor in enumerate(new_centroids): 163 | for gt_box in groups[i]: 164 | iou += box_iou(gt_box, anchor) 165 | counter += 1 166 | 167 | avg_iou = iou / counter 168 | return new_centroids, avg_iou, loss 169 | 170 | 171 | if __name__ == '__main__': 172 | main() 173 | -------------------------------------------------------------------------------- /mobiledet/utils/box.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | class Box(object): 4 | def __init__(self, xc, yc, w, h, c=None, label=None, classes=None): 5 | self.x = xc 6 | self.y = yc 7 | self.w = w 8 | self.h = h 9 | self.c = c 10 | self.label = label 11 | self.classes = None 12 | 13 | def get_label(self): 14 | if self.label == -1: 15 | self.label = np.argmax(self.classes) 16 | return self.label 17 | 18 | def get_score(self): 19 | if self.c == -1: 20 | self.c = self.classes[self.get_label()] 21 | return self.c 22 | 23 | def to_array(self): 24 | return np.array([self.x, self.y, self.w, self.h, int(self.get_label())]) 25 | 26 | def to_opencv_format(self): 27 | """ 28 | Convert bounding box to OpenCV format 29 | :return: [[(x1, y1), (x2, y2)]] (numpy int) 30 | """ 31 | x1 = int(self.x - self.w/2) 32 | y1 = int(self.y - self.h/2) 33 | x2 = int(self.x + self.w/2) 34 | y2 = int(self.y + self.h/2) 35 | opencv_box = [[(x1, y1), (x2, y2)]] 36 | 37 | return opencv_box 38 | 39 | def to_relative_size(self, img_size=(1280, 960)): 40 | """ 41 | 42 | :param img_size: 43 | :return: 44 | """ 45 | width, height = img_size 46 | xc = self.x/(1. * width) 47 | yc = self.y/(1. * height) 48 | w = self.w/(1. * width) 49 | h = self.h/(1. * height) 50 | return xc, yc, w, h 51 | 52 | def to_abs_size(self, img_size=(1280, 960)): 53 | """ 54 | 55 | :param img_size: 56 | :return: 57 | """ 58 | width, height = img_size 59 | 60 | if self.x > 1.0: # Make sure current box is in relative format 61 | return self.x, self.y, self.w, self.h 62 | 63 | self.x = self.x * width 64 | self.y = self.y * height 65 | self.w = self.w * width 66 | self.h = self.h * height 67 | return self.x, self.y, self.w, self.h 68 | 69 | 70 | def __str__(self): 71 | return "{}, {}, {}, {}".format(round(self.x, 2), round(self.y, 2), round(self.w, 2), round(self.h, 2)) 72 | 73 | def __repr__(self): 74 | return str(self) 75 | 76 | 77 | def box_iou(b1, b2): 78 | intersect = box_intersection(b1, b2) 79 | union = box_union(b1, b2) 80 | iou = float(intersect / union) 81 | return iou 82 | 83 | 84 | def box_intersection(b1, b2): 85 | w = overlap(b1.x, b1.w, b2.x, b2.w) 86 | h = overlap(b1.x, b1.h, b2.x, b2.h) 87 | if (w < 0) or (h < 0): return 0 88 | area = w * h 89 | return area 90 | 91 | 92 | def overlap(x1, w1, x2, w2): 93 | l1 = x1 - (w1 / 2.) 94 | l2 = x2 - (w2 / 2.) 95 | r1 = x1 + (w1 / 2.) 96 | r2 = x2 + (w2 / 2.) 97 | left = l1 if l1 >= l2 else l2 98 | right = r1 if r1 <= r2 else r2 99 | return right - left 100 | 101 | 102 | def box_union(b1, b2): 103 | intersect = box_intersection(b1, b2) 104 | union = (b1.w * b1.h) + (b2.w * b2.h) - intersect 105 | return union 106 | 107 | 108 | def convert_bbox(x1, y1, x2, y2): 109 | w = float(x2) - float(x1) 110 | h = float(y2) - float(y1) 111 | xc = float(x1) + w / 2. 112 | yc = float(y1) + h / 2. 113 | return xc, yc, w, h 114 | 115 | 116 | def scale_rel_box(img_size, box): 117 | """ 118 | Scale bounding box relative to image size 119 | """ 120 | width, height, _ = img_size 121 | dw = 1. / width 122 | dh = 1. / height 123 | xc = box.x * dw 124 | yc = box.y * dh 125 | w = box.w * dw 126 | h = box.h * dh 127 | return xc, yc, w, h 128 | 129 | -------------------------------------------------------------------------------- /mobiledet/utils/cfg.py: -------------------------------------------------------------------------------- 1 | ''' 2 | Main configuration file for YOLOv2 Project. 3 | Modify every time one would like to train on a new dataset 4 | ''' 5 | import numpy as np 6 | 7 | # If a feature extractor performed 5 max-pooling --> Image resolution being reduced 2^5 = 32 times 8 | # Most current state-of-the-art models have max-pooling layers (Jan, 2018) 9 | # FEATURE_EXTRACTOR = 'darknet19' 10 | FEATURE_EXTRACTOR = 'mobilenet' 11 | N_CLASSES = 2 12 | N_ANCHORS = 5 13 | BATCH_SIZE = 4 14 | IMAGE_H = 416 15 | IMAGE_W = 416 16 | 17 | SHALLOW_DETECTOR = False 18 | USE_X0_FEATURE = True 19 | 20 | # Default anchor boxes 21 | YOLO_ANCHORS = np.array( 22 | ((0.57273, 0.677385), (1.87446, 2.06253), (3.33843, 5.47434), 23 | (7.88282, 3.52778), (9.77052, 9.16828))) 24 | 25 | if SHALLOW_DETECTOR: 26 | SHRINK_FACTOR = 16 27 | else: 28 | SHRINK_FACTOR = 32 29 | 30 | FEAT_H = IMAGE_H // SHRINK_FACTOR 31 | FEAT_W = IMAGE_W // SHRINK_FACTOR 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /mobiledet/utils/draw_boxes.py: -------------------------------------------------------------------------------- 1 | """Draw predicted or ground truth boxes on input image.""" 2 | 3 | import colorsys 4 | import random 5 | 6 | import numpy as np 7 | from PIL import Image, ImageDraw, ImageFont 8 | 9 | 10 | def get_colors_for_classes(num_classes): 11 | """Return list of random colors for number of classes given.""" 12 | # Use previously generated colors if num_classes is the same. 13 | if (hasattr(get_colors_for_classes, "colors") and 14 | len(get_colors_for_classes.colors) == num_classes): 15 | return get_colors_for_classes.colors 16 | 17 | hsv_tuples = [(x / num_classes, 1., 1.) for x in range(num_classes)] 18 | colors = list(map(lambda x: colorsys.hsv_to_rgb(*x), hsv_tuples)) 19 | colors = list( 20 | map(lambda x: (int(x[0] * 255), int(x[1] * 255), int(x[2] * 255)), 21 | colors)) 22 | random.seed(10101) # Fixed seed for consistent colors across runs. 23 | random.shuffle(colors) # Shuffle colors to decorrelate adjacent classes. 24 | random.seed(None) # Reset seed to default. 25 | get_colors_for_classes.colors = colors # Save colors for future calls. 26 | return colors 27 | 28 | 29 | def draw_boxes(image, boxes, box_classes, class_names, scores=None): 30 | """Draw bounding boxes on image. 31 | 32 | Draw bounding boxes with class name and optional box score on image. 33 | 34 | Args: 35 | image: An `array` of shape (width, height, 3) with values in [0, 1]. 36 | boxes: An `array` of shape (num_boxes, 4) containing box corners as 37 | (y_min, x_min, y_max, x_max). 38 | box_classes: A `list` of indicies into `class_names`. 39 | class_names: A `list` of `string` class names. 40 | `scores`: A `list` of scores for each box. 41 | 42 | Returns: 43 | A copy of `image` modified with given bounding boxes. 44 | """ 45 | image = Image.fromarray(np.floor(image * 255 + 0.5).astype('uint8')) 46 | font = ImageFont.truetype(font='font/FiraMono-Medium.otf', size=np.floor(3e-2 * image.size[1] + 0.5).astype('int32')) 47 | thickness = (image.size[0] + image.size[1]) // 300 48 | colors = get_colors_for_classes(len(class_names)) 49 | for i, c in list(enumerate(box_classes)): 50 | box_class = class_names[c] 51 | box = boxes[i] 52 | if isinstance(scores, np.ndarray): 53 | score = scores[i] 54 | label = '{} {:.2f}'.format(box_class, score) 55 | else: 56 | label = '{}'.format(box_class) 57 | 58 | draw = ImageDraw.Draw(image) 59 | label_size = draw.textsize(label, font) 60 | 61 | top, left, bottom, right = box 62 | top = max(0, np.floor(top + 0.5).astype('int32')) 63 | left = max(0, np.floor(left + 0.5).astype('int32')) 64 | bottom = min(image.size[1], np.floor(bottom + 0.5).astype('int32')) 65 | right = min(image.size[0], np.floor(right + 0.5).astype('int32')) 66 | print(label, (left, top), (right, bottom)) 67 | 68 | if top - label_size[1] >= 0: 69 | text_origin = np.array([left, top - label_size[1]]) 70 | else: 71 | text_origin = np.array([left, top + 1]) 72 | 73 | # My kingdom for a good redistributable image drawing library. 74 | for i in range(thickness): 75 | draw.rectangle( 76 | [left + i, top + i, right - i, bottom - i], outline=colors[c]) 77 | draw.rectangle( 78 | [tuple(text_origin), tuple(text_origin + label_size)], 79 | fill=colors[c]) 80 | draw.text(text_origin, label, fill=(0, 0, 0), font=font) 81 | del draw 82 | 83 | return np.array(image) 84 | -------------------------------------------------------------------------------- /mobiledet/utils/utils.py: -------------------------------------------------------------------------------- 1 | """Miscellaneous utility functions.""" 2 | 3 | from functools import reduce 4 | import cv2 5 | import copy 6 | import numpy as np 7 | import io 8 | import os 9 | import PIL 10 | import re 11 | from cfg import * 12 | # from box import Box, box_iou 13 | 14 | from keras import backend as K 15 | # from mobiledet.models.keras_yolo import yolo_eval, decode_yolo_output 16 | 17 | def compose(*funcs): 18 | """Compose arbitrarily many functions, evaluated left to right. 19 | 20 | Reference: https://mathieularose.com/function-composition-in-python/ 21 | """ 22 | # return lambda x: reduce(lambda v, f: f(v), funcs, x) 23 | if funcs: 24 | return reduce(lambda f, g: lambda *a, **kw: g(f(*a, **kw)), funcs) 25 | else: 26 | raise ValueError('Composition of empty sequence not supported.') 27 | 28 | 29 | def get_anchors(anchors_path): 30 | '''loads the anchors from a file''' 31 | if os.path.isfile(anchors_path): 32 | with open(anchors_path) as f: 33 | anchors = f.readlines() 34 | try: 35 | anchors = [re.findall(r'\d*\.\d+|\d+', anchor) for anchor in anchors] 36 | anchors = sum(anchors, []) 37 | anchors = [float(x) for x in anchors] 38 | except: 39 | anchors = YOLO_ANCHORS 40 | return np.array(anchors).reshape(-1, 2) 41 | else: 42 | Warning("Could not open anchors file, using default.") 43 | return YOLO_ANCHORS 44 | 45 | def get_classes(classes_path): 46 | '''loads the classes''' 47 | with open(classes_path) as f: 48 | class_names = f.readlines() 49 | class_names = [c.strip() for c in class_names] 50 | return class_names 51 | 52 | def brightness_augment(image): 53 | image = np.array(image, dtype=np.uint8) 54 | image1 = cv2.cvtColor(image, cv2.COLOR_RGB2HSV) 55 | image1 = np.array(image1, dtype=np.float64) 56 | random_bright = 0.5 + np.random.uniform() 57 | image1[:, :, 2] = image1[:, :, 2]*random_bright 58 | image1[:, :, 2][image1[:, :, 2] > 255] = 255 59 | image1 = np.array(image1, dtype=np.uint8) 60 | image1 = cv2.cvtColor(image1, cv2.COLOR_HSV2RGB) 61 | return image1 62 | 63 | def _remap_object_boxes(boxes, class_names, target_class_names): 64 | """ Remap original object labels into the interested target object labels 65 | """ 66 | drone_box = [] 67 | for i in range(boxes.shape[0]): 68 | box = boxes[i] 69 | voc_label = class_names[box[0]] 70 | if voc_label in target_class_names: 71 | dbox = copy.deepcopy(box) 72 | dbox[0] = target_class_names.index(voc_label) 73 | drone_box.append(dbox) 74 | return np.array(drone_box) 75 | 76 | def read_voc_datasets_train_batch(data_images, data_boxes): 77 | idx = np.random.choice(data_images.shape[0], replace=False) 78 | batch_image = data_images[idx] 79 | batch_boxes = data_boxes[idx] 80 | batch_boxes = batch_boxes.reshape((-1, 5)) 81 | image = PIL.Image.open(io.BytesIO(batch_image)) 82 | image_data = np.array(image, dtype=np.float) 83 | return np.array(image_data), np.array(batch_boxes) 84 | 85 | def augment_image(image_data, bboxes, model_width, model_height, jitter=False): 86 | h, w, c = image_data.shape 87 | if jitter: 88 | scale = np.random.uniform() / 10. + 1. 89 | image_data = cv2.resize(image_data, (0,0), fx = scale, fy = scale) 90 | ## translate the image 91 | max_offx = (scale-1.) * w 92 | max_offy = (scale-1.) * h 93 | offx = int(np.random.uniform() * max_offx) 94 | offy = int(np.random.uniform() * max_offy) 95 | 96 | image_data = image_data[offy : (offy + h), offx : (offx + w)] 97 | flip = np.random.binomial(1, .5) 98 | if flip > 0.5: 99 | image_data = cv2.flip(image_data, 1) 100 | 101 | image_data = cv2.resize(image_data, (model_height, model_width)) 102 | bboxes2 = copy.deepcopy(bboxes) 103 | for bbox in bboxes2: 104 | for attr in (1,3): # adjust xmin and xmax 105 | if jitter: bbox[attr] = int(bbox[attr] * scale - offx) 106 | bbox[attr] = int(bbox[attr] * float(model_width) / w) 107 | bbox[attr] = max(min(bbox[attr], model_width), 0) 108 | 109 | for attr in 2,4: # adjust ymin and ymax 110 | if jitter: bbox[attr] = int(bbox[attr] * scale - offy) 111 | bbox[attr] = int(bbox[attr] * float(model_height) / h) 112 | bbox[attr] = max(min(bbox[attr], model_height), 0) 113 | if jitter and flip > 0.5: 114 | xmin = bbox[1] 115 | bbox[1] = model_width - bbox[3] 116 | bbox[3] = model_width - xmin 117 | return image_data, bboxes2 118 | 119 | -------------------------------------------------------------------------------- /model_data/drone_classes.txt: -------------------------------------------------------------------------------- 1 | person 2 | vehicle -------------------------------------------------------------------------------- /model_data/lisa_anchors.txt: -------------------------------------------------------------------------------- 1 | (0.296949, 0.581810) 2 | (0.409283, 0.820408) 3 | (0.502726, 1.071432) 4 | (0.713759, 1.546759) 5 | (0.130866, 0.268734) -------------------------------------------------------------------------------- /model_data/lisa_classes.txt: -------------------------------------------------------------------------------- 1 | stop 2 | go 3 | warning 4 | donotcare -------------------------------------------------------------------------------- /model_data/pascal_anchors.txt: -------------------------------------------------------------------------------- 1 | (1.3221, 1.73145) 2 | (3.19275, 4.00944) 3 | (5.05587, 8.09892) 4 | (9.47112, 4.84053) 5 | (11.2364, 10.0071) 6 | -------------------------------------------------------------------------------- /model_data/pascal_classes.txt: -------------------------------------------------------------------------------- 1 | aeroplane 2 | bicycle 3 | bird 4 | boat 5 | bottle 6 | bus 7 | car 8 | cat 9 | chair 10 | cow 11 | diningtable 12 | dog 13 | horse 14 | motorbike 15 | person 16 | pottedplant 17 | sheep 18 | sofa 19 | train 20 | tvmonitor 21 | -------------------------------------------------------------------------------- /model_data/uav123_anchors.txt: -------------------------------------------------------------------------------- 1 | (0.658624, 2.666625) 2 | (2.444950, 7.431975) 3 | (1.272862, 4.598098) 4 | (1.902102, 2.050706) 5 | (0.428755, 1.522414) 6 | 7 | -------------------------------------------------------------------------------- /recall_precision.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env python 2 | """Run a YOLO_v2 style detection model on test images.""" 3 | import argparse 4 | import colorsys 5 | import imghdr 6 | import os 7 | import os.path as osp 8 | import random 9 | import h5py 10 | 11 | import numpy as np 12 | from keras.models import load_model 13 | from PIL import Image, ImageDraw, ImageFont 14 | 15 | import tensorflow as tf 16 | from keras import backend as K 17 | from keras.layers import Input, Lambda, Conv2D 18 | from keras.models import load_model, Model 19 | from keras.callbacks import TensorBoard, ModelCheckpoint, EarlyStopping 20 | from keras.optimizers import Adam 21 | 22 | from mobiledet.models.keras_yolo import preprocess_true_boxes 23 | from mobiledet.models.keras_yolo import yolo_eval, yolo_loss, decode_yolo_output, create_model 24 | from mobiledet.models.keras_yolo import yolo_body_darknet, yolo_body_mobilenet 25 | from mobiledet.models.keras_yolo import recall_precision 26 | 27 | 28 | from mobiledet.utils.draw_boxes import draw_boxes 29 | 30 | from mobiledet.utils import read_voc_datasets_train_batch, brightness_augment, augment_image 31 | from mobiledet.models.keras_yolo import yolo_get_detector_mask 32 | 33 | from cfg import * 34 | from mobiledet.utils import * 35 | from keras.utils import plot_model 36 | 37 | 38 | from tensorflow.python.framework import graph_util 39 | from tensorflow.python.framework import graph_io 40 | 41 | import os 42 | import tensorflow as tf 43 | from tensorflow.python.tools.freeze_graph import freeze_graph 44 | 45 | import time 46 | 47 | parser = argparse.ArgumentParser( 48 | description='Calculate YOLOv2 recall and precision on test datasets..') 49 | parser.add_argument( 50 | '-m', 51 | '--weight_path', 52 | help='path to trained model weight file') 53 | 54 | parser.add_argument( 55 | '-a', 56 | '--anchors_path', 57 | help='path to anchors file, defaults to pascal_anchors.txt', 58 | default='model_data/uav123_anchors.txt') 59 | 60 | parser.add_argument( 61 | '-c', 62 | '--classes_path', 63 | help='path to classes file, defaults to drone_classes.txt', 64 | default='model_data/drone_classes.txt') 65 | 66 | parser.add_argument( 67 | '-d', 68 | '--data_path', 69 | help='path to the HDF5 file which has a "test" group', 70 | default='~/data/uav123.hdf5') 71 | 72 | parser.add_argument( 73 | '-s', 74 | '--score_threshold', 75 | type=float, 76 | help='threshold for bounding box scores, default .6', 77 | default=.6) 78 | 79 | parser.add_argument( 80 | '-iou', 81 | '--iou_threshold', 82 | type=float, 83 | help='threshold for non max suppression IOU, default .65', 84 | default=.6) 85 | 86 | def _main(args): 87 | model_path = os.path.expanduser(args.weight_path) 88 | anchors_path = os.path.expanduser(args.anchors_path) 89 | classes_path = os.path.expanduser(args.classes_path) 90 | data_path = os.path.expanduser(args.data_path) 91 | dataset = h5py.File(data_path, 'r') 92 | 93 | 94 | class_names = get_classes(classes_path) 95 | anchors = get_anchors(anchors_path) 96 | if SHALLOW_DETECTOR: 97 | anchors = anchors * 2 98 | 99 | print(class_names) 100 | print(anchors) 101 | 102 | yolo_model, _ = create_model(anchors, class_names, load_pretrained=True, 103 | feature_extractor=FEATURE_EXTRACTOR, pretrained_path=model_path) 104 | 105 | hdf5_images = np.array(dataset['test/images']) 106 | 107 | recall_precision(np.array(dataset['test/images']), np.array(dataset['test/boxes']), 108 | yolo_model, anchors, class_names, num_samples=2048) 109 | 110 | 111 | if __name__ == '__main__': 112 | _main(parser.parse_args()) 113 | -------------------------------------------------------------------------------- /train_overfit.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env python 2 | """Overfit a YOLO_v2 model to a single image from the Pascal VOC dataset. 3 | 4 | This is a sample training script used to test the implementation of the 5 | YOLO localization loss function. 6 | """ 7 | import argparse 8 | import io 9 | import os 10 | 11 | import h5py 12 | import matplotlib.pyplot as plt 13 | import numpy as np 14 | import PIL 15 | 16 | import tensorflow as tf 17 | from keras import backend as K 18 | from keras.layers import Input, Lambda 19 | from keras.models import Model 20 | 21 | from mobiledet.models.keras_yolo import yolo_eval, yolo_loss, decode_yolo_output, create_model 22 | 23 | from mobiledet.models.keras_yolo import (preprocess_true_boxes, yolo_body_mobilenet, 24 | yolo_eval, decode_yolo_output, yolo_loss, yolo_body_darknet) 25 | # from mobiledet.models.keras_darknet19 import darknet_feature_extractor 26 | from mobiledet.utils.draw_boxes import draw_boxes 27 | from mobiledet.utils.utils import get_anchors 28 | from mobiledet.utils.utils import get_classes 29 | 30 | from cfg import * 31 | 32 | argparser = argparse.ArgumentParser( 33 | description='Train YOLO_v2 model to overfit on a single image.') 34 | 35 | argparser.add_argument( 36 | '-d', 37 | '--data_path', 38 | help='path to HDF5 file containing a hdf5 dataset', 39 | default='~/data/lisa.hdf5') 40 | 41 | argparser.add_argument( 42 | '-a', 43 | '--anchors_path', 44 | help='path to anchors file, defaults to anchors box file', 45 | default='model_data/lisa_anchors.txt') 46 | 47 | argparser.add_argument( 48 | '-c', 49 | '--classes_path', 50 | help='path to classes file', 51 | default='model_data/lisa_classes.txt') 52 | 53 | argparser.add_argument( 54 | '-n', 55 | '--num_epoches', 56 | help='num of epoches to overfit the image', 57 | type=int, 58 | default=1000) 59 | 60 | 61 | def _main(args): 62 | voc_path = os.path.expanduser(args.data_path) 63 | classes_path = os.path.expanduser(args.classes_path) 64 | anchors_path = os.path.expanduser(args.anchors_path) 65 | class_names = get_classes(classes_path) 66 | anchors = get_anchors(anchors_path) 67 | num_epoches = args.num_epoches 68 | 69 | if SHRINK_FACTOR == 16: 70 | anchors = anchors * 2 71 | 72 | print('Prior anchor boxes:') 73 | print(anchors) 74 | print('Prior classes:') 75 | print(class_names) 76 | 77 | 78 | num_anchors = len(anchors) 79 | voc = h5py.File(voc_path, 'r') 80 | print(voc['train/images'].shape) 81 | # import pdb; pdb.set_trace() 82 | 83 | test_id = 1 84 | image = PIL.Image.open(io.BytesIO(voc['train/images'][test_id])) 85 | # import pdb; pdb.set_trace() 86 | orig_size = np.array(image.size) 87 | orig_size = np.expand_dims(orig_size, axis=0) 88 | 89 | net_width = IMAGE_W 90 | net_height = IMAGE_H 91 | feats_width = FEAT_W 92 | feats_height = FEAT_H 93 | 94 | # Image preprocessing. 95 | image = image.resize((net_width, net_height), PIL.Image.BICUBIC) 96 | image_data = np.array(image, dtype=np.float) 97 | image_data /= 255. 98 | 99 | # Box preprocessing. 100 | # Original boxes stored as 1D list of class, x_min, y_min, x_max, y_max. 101 | boxes = voc['train/boxes'][test_id] 102 | boxes = boxes.reshape((-1, 5)) 103 | # Get extents as y_min, x_min, y_max, x_max, class for comparision with 104 | # model output. 105 | boxes_extents = boxes[:, [2, 1, 4, 3, 0]] 106 | 107 | # Get box parameters as x_center, y_center, box_width, box_height, class. 108 | boxes_xy = 0.5 * (boxes[:, 3:5] + boxes[:, 1:3]) 109 | boxes_wh = boxes[:, 3:5] - boxes[:, 1:3] 110 | boxes_xy = boxes_xy / orig_size 111 | boxes_wh = boxes_wh / orig_size 112 | boxes = np.concatenate((boxes_xy, boxes_wh, boxes[:, 0:1]), axis=1) 113 | 114 | # Precompute detectors_mask and matching_true_boxes for training. 115 | # Detectors mask is 1 for each spatial position in the final conv layer and 116 | # anchor that should be active for the given boxes and 0 otherwise. 117 | # Matching true boxes gives the regression targets for the ground truth box 118 | # that caused a detector to be active or 0 otherwise. 119 | detectors_mask_shape = (feats_height, feats_width, num_anchors, 1) 120 | matching_boxes_shape = (feats_height, feats_width, num_anchors, 5) 121 | detectors_mask, matching_true_boxes = preprocess_true_boxes(boxes, anchors, 122 | [net_height, net_width], 123 | [feats_height, feats_width]) 124 | 125 | # Create model input layers. 126 | image_input = Input(shape=(net_height , net_width, 3)) 127 | boxes_input = Input(shape=(None, 5)) 128 | 129 | detectors_mask_input = Input(shape=detectors_mask_shape) 130 | matching_boxes_input = Input(shape=matching_boxes_shape) 131 | 132 | print('Boxes:') 133 | print(boxes) 134 | print('Box corners:') 135 | print(boxes_extents) 136 | print('Active detectors:') 137 | print(np.where(detectors_mask == 1)[:-1]) 138 | print('Matching boxes for active detectors:') 139 | print(matching_true_boxes[np.where(detectors_mask == 1)[:-1]]) 140 | 141 | yolo_model = yolo_body_mobilenet(image_input, len(anchors), len(class_names), network_config=[SHALLOW_DETECTOR, USE_X0_FEATURE]) 142 | 143 | # yolo_model, model = create_model(anchors, class_names, feature_extractor=FEATURE_EXTRACTOR) 144 | 145 | yolo_model.summary() 146 | 147 | # TODO: Replace Lambda with custom Keras layer for loss. 148 | model_loss = Lambda( 149 | yolo_loss, 150 | output_shape=(1, ), 151 | name='yolo_loss', 152 | arguments={'anchors': anchors, 153 | 'num_classes': len(class_names)})([ 154 | yolo_model.output, boxes_input, 155 | detectors_mask_input, matching_boxes_input 156 | ]) 157 | 158 | model = Model( 159 | [image_input, boxes_input, detectors_mask_input, 160 | matching_boxes_input], model_loss) 161 | 162 | model.compile( 163 | optimizer='adam', loss={ 164 | 'yolo_loss': lambda y_true, y_pred: y_pred 165 | }) # This is a hack to use the custom loss function in the last layer. 166 | 167 | # Add batch dimension for training. 168 | image_data = np.expand_dims(image_data, axis=0) 169 | boxes = np.expand_dims(boxes, axis=0) 170 | detectors_mask = np.expand_dims(detectors_mask, axis=0) 171 | matching_true_boxes = np.expand_dims(matching_true_boxes, axis=0) 172 | 173 | model.fit([image_data, boxes, detectors_mask, matching_true_boxes], 174 | np.zeros(len(image_data)), 175 | batch_size=1, 176 | verbose=1, 177 | epochs=num_epoches) 178 | 179 | model.save_weights('model_data/overfit.h5') 180 | 181 | # Create output variables for prediction. 182 | yolo_outputs = decode_yolo_output(yolo_model.output, anchors, len(class_names)) 183 | input_image_shape = K.placeholder(shape=(2, )) 184 | boxes, scores, classes = yolo_eval( 185 | yolo_outputs, input_image_shape, score_threshold=.8, iou_threshold=.9) 186 | 187 | # Run prediction on overfit image. 188 | sess = K.get_session() # TODO: Remove dependence on Tensorflow session. 189 | out_boxes, out_scores, out_classes = sess.run( 190 | [boxes, scores, classes], 191 | feed_dict={ 192 | yolo_model.input: image_data, 193 | input_image_shape: [image.size[1], image.size[0]], 194 | K.learning_phase(): 0 195 | }) 196 | print('Found {} boxes for image.'.format(len(out_boxes))) 197 | print(out_boxes) 198 | 199 | # Plot image with predicted boxes. 200 | image_with_boxes = draw_boxes(image_data[0], out_boxes, out_classes, 201 | class_names, out_scores) 202 | 203 | plt.imshow(image_with_boxes, interpolation='nearest') 204 | plt.show() 205 | 206 | 207 | if __name__ == '__main__': 208 | args = argparser.parse_args() 209 | _main(args) 210 | -------------------------------------------------------------------------------- /weights/fine_tune_parking_lot.1.h5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/weights/fine_tune_parking_lot.1.h5 -------------------------------------------------------------------------------- /weights/mobilenet_s3_best.FalseFalse.h5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DeepRobot2020/MobileDet/99626d2f15b95a3710ad7b1df89388e50915c4a9/weights/mobilenet_s3_best.FalseFalse.h5 --------------------------------------------------------------------------------