diff --git a/.gitignore b/.gitignore index 44ca712..69f4beb 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,6 @@ *.pyc __pycache__ .DS_STORE -.idea \ No newline at end of file +.idea + +/vision_datasets \ No newline at end of file diff --git a/README_Segmentation.md b/README_Segmentation.md index b315114..5584fec 100644 --- a/README_Segmentation.md +++ b/README_Segmentation.md @@ -103,6 +103,10 @@ CUDA_VISIBLE_DEVICES=0 python test_segmentation.py --model espnetv2 --s 2.0 --da CUDA_VISIBLE_DEVICES=0 python test_segmentation.py --model espnetv2 --s 2.0 --dataset city --data-path ../vision_datasets/cityscapes/ --split val --im-size 1024 512 --weights-test model/segmentation/model_zoo/espnetv2/espnetv2_s_2.0_city_1024x512.pth ``` +``` +CUDA_VISIBLE_DEVICES=0 python test_segmentation.py --model espnetv2 --s 2.0 --dataset city --data-path ./vision_datasets/cityscapes/ --split val --im-size 1024 512 --weights-test ./model/segmentation/model_zoo/espnetv2/espnetv2_s_2.0_city_1024x512.pth +``` + For evaluation on the PASCAL VOC dataset, use below command: ``` CUDA_VISIBLE_DEVICES=0 python test_segmentation.py --model espnetv2 --s 2.0 --dataset pascal --data-path ../vision_datasets/pascal_voc/VOCdevkit/ --split val --im-size 384 384 diff --git a/commands b/commands new file mode 100644 index 0000000..19ea3dd --- /dev/null +++ b/commands @@ -0,0 +1,149 @@ +# 1 Test +## Command + +CUDA_VISIBLE_DEVICES=0 python test_segmentation.py --model espnetv2 --s 2.0 --dataset city --data-path ./vision_datasets/cityscapes/ --split val --im-size 1024 512 --weights-test ./model/segmentation/model_zoo/espnetv2/espnetv2_s_2.0_city_1024x512.pth + +## Output: +2024-04-14 22:13:47 - INFO - # of images for testing: 500 +2024-04-14 22:13:47 - WARNING - Training from scratch!!. If you are testing, ignore this message. For testing, we do not load weights here. +2024-04-14 22:13:48 - INFO - FLOPs for an input of size 1024x512: 2699.05 million +2024-04-14 22:13:48 - INFO - # of parameters: 0.789242 +2024-04-14 22:13:48 - INFO - Loading model weights +2024-04-14 22:13:48 - INFO - Weight loaded successfully + + +# 2 Train +## Command +CUDA_VISIBLE_DEVICES=0 python train_segmentation.py --model espnetv2 --s 2.0 --dataset city --data-path ./vision_datasets/cityscapes/ --batch-size 25 --crop-size 512 256 --lr 0.009 --scheduler hybrid --clr-max 61 --epochs 10 + +## Output: +2024-04-15 00:45:12 - LOGS - Using scale = (0.25, 0.5) +2024-04-15 00:45:12 - INFO - Running Model at image resolution 512x256 with batch size 25 +2024-04-15 00:45:12 - INFO - Training samples: 174 +2024-04-15 00:45:12 - INFO - Validation samples: 267 +2024-04-15 00:45:15 - INFO - Loading pretrained basenet model weights +2024-04-15 00:45:15 - INFO - 68.63 % of weights copied from basenet to segnet +2024-04-15 00:45:15 - INFO - Pretrained basenet model loaded!! +2024-04-15 00:45:15 - INFO - FLOPs for an input of size 512x256: 674.78 million +2024-04-15 00:45:15 - INFO - Network Parameters: 0.79 million +2024-04-15 00:45:16.152436: I tensorflow/core/util/util.cc:169] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`. +2024-04-15 00:45:16.156908: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory +2024-04-15 00:45:16.156933: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine. +/home/ubuntu/ML/EdgeNets/nn_layers/eesp.py:139: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + if w2 == w1: +/home/ubuntu/ML/EdgeNets/nn_layers/eesp.py:89: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + if expanded.size() == input.size(): +/home/ubuntu/ML/EdgeNets/nn_layers/efficient_pyramid_pool.py:41: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + h_s = int(math.ceil(height * self.scales[i])) +/home/ubuntu/ML/EdgeNets/nn_layers/efficient_pyramid_pool.py:42: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + w_s = int(math.ceil(width * self.scales[i])) +/home/ubuntu/ML/EdgeNets/nn_layers/cnn_utils.py:121: UserWarning: __floordiv__ is deprecated, and its behavior will change in a future version of pytorch. It currently rounds toward 0 (like the 'trunc' function NOT 'floor'). This results in incorrect rounding for negative values. To keep the current behavior, use torch.div(a, b, rounding_mode='trunc'), or for actual floor division, use torch.div(a, b, rounding_mode='floor'). + channels_per_group = num_channels // self.groups +2024-04-15 00:45:20 - INFO - Scheduler HybirdLR + Total Epochs: 10 + Cycle with length of 5: 12 + Base LR with 5 cycle length: 0.009 + Cycle with length of -50: 1 + Base LR with -50 cycle length: 0.009 + +2024-04-15 00:45:20 - INFO - Running epoch 0 with learning rates: base_net 0.009000, segment_net 0.090000 +2024-04-15 00:45:28 - LOGS - Epoch: 0[0/7] Batch Time:7.9532 Loss:3.3879 miou:0.9402 +2024-04-15 00:45:38 - LOGS - [0/11] Batch Time:4.3946 Loss:2.7269 miou:2.0558 +2024-04-15 00:45:46 - LOGS - [10/11] Batch Time:1.0936 Loss:2.7076 miou:1.9853 +2024-04-15 00:45:46 - INFO - Mean IoU: 1.99 +2024-04-15 00:45:46 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:45:46 - INFO - Running epoch 1 with learning rates: base_net 0.045000, segment_net 0.450000 +2024-04-15 00:45:52 - LOGS - Epoch: 1[0/7] Batch Time:6.0130 Loss:2.3509 miou:6.7152 +2024-04-15 00:46:01 - LOGS - [0/11] Batch Time:4.3743 Loss:2.6721 miou:6.8428 +2024-04-15 00:46:09 - LOGS - [10/11] Batch Time:1.0599 Loss:2.5194 miou:7.0313 +2024-04-15 00:46:09 - INFO - Mean IoU: 7.03 +2024-04-15 00:46:09 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:46:09 - INFO - Running epoch 2 with learning rates: base_net 0.036000, segment_net 0.360000 +2024-04-15 00:46:14 - LOGS - Epoch: 2[0/7] Batch Time:5.4953 Loss:1.4662 miou:16.2935 +2024-04-15 00:46:24 - LOGS - [0/11] Batch Time:4.5314 Loss:2.7236 miou:10.9774 +2024-04-15 00:46:31 - LOGS - [10/11] Batch Time:1.0664 Loss:2.6241 miou:11.3370 +2024-04-15 00:46:31 - INFO - Mean IoU: 11.34 +2024-04-15 00:46:31 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:46:31 - INFO - Running epoch 3 with learning rates: base_net 0.027000, segment_net 0.270000 +2024-04-15 00:46:37 - LOGS - Epoch: 3[0/7] Batch Time:5.6033 Loss:1.1342 miou:17.8573 +2024-04-15 00:46:46 - LOGS - [0/11] Batch Time:4.3004 Loss:2.5448 miou:12.3040 +2024-04-15 00:46:54 - LOGS - [10/11] Batch Time:1.0707 Loss:2.3773 miou:12.6901 +2024-04-15 00:46:54 - INFO - Mean IoU: 12.69 +2024-04-15 00:46:54 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:46:54 - INFO - Running epoch 4 with learning rates: base_net 0.018000, segment_net 0.180000 +2024-04-15 00:46:59 - LOGS - Epoch: 4[0/7] Batch Time:5.4751 Loss:0.8456 miou:21.9045 +2024-04-15 00:47:08 - LOGS - [0/11] Batch Time:4.4581 Loss:1.9506 miou:14.0983 +2024-04-15 00:47:15 - LOGS - [10/11] Batch Time:1.0424 Loss:1.9040 miou:13.6636 +2024-04-15 00:47:16 - INFO - Mean IoU: 13.66 +2024-04-15 00:47:16 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:47:16 - INFO - Running epoch 5 with learning rates: base_net 0.009000, segment_net 0.090000 +2024-04-15 00:47:21 - LOGS - Epoch: 5[0/7] Batch Time:5.4787 Loss:0.7527 miou:22.8888 +2024-04-15 00:47:31 - LOGS - [0/11] Batch Time:4.3869 Loss:1.5460 miou:15.8679 +2024-04-15 00:47:38 - LOGS - [10/11] Batch Time:1.0685 Loss:1.5416 miou:14.7500 +2024-04-15 00:47:38 - INFO - Mean IoU: 14.75 +2024-04-15 00:47:38 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:47:38 - INFO - Running epoch 6 with learning rates: base_net 0.045000, segment_net 0.450000 +2024-04-15 00:47:44 - LOGS - Epoch: 6[0/7] Batch Time:5.4445 Loss:0.6899 miou:25.3246 +2024-04-15 00:47:53 - LOGS - [0/11] Batch Time:4.3021 Loss:2.3179 miou:14.1175 +2024-04-15 00:48:00 - LOGS - [10/11] Batch Time:1.0405 Loss:2.1443 miou:13.2918 +2024-04-15 00:48:00 - INFO - Mean IoU: 13.29 +2024-04-15 00:48:00 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:48:00 - INFO - Running epoch 7 with learning rates: base_net 0.036000, segment_net 0.360000 +2024-04-15 00:48:06 - LOGS - Epoch: 7[0/7] Batch Time:5.5864 Loss:0.9212 miou:23.7596 +2024-04-15 00:48:15 - LOGS - [0/11] Batch Time:4.3825 Loss:2.0420 miou:13.7297 +2024-04-15 00:48:23 - LOGS - [10/11] Batch Time:1.0444 Loss:1.9196 miou:13.9116 +2024-04-15 00:48:23 - INFO - Mean IoU: 13.91 +2024-04-15 00:48:23 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:48:23 - INFO - Running epoch 8 with learning rates: base_net 0.027000, segment_net 0.270000 +2024-04-15 00:48:28 - LOGS - Epoch: 8[0/7] Batch Time:5.4877 Loss:0.8036 miou:24.9309 +2024-04-15 00:48:38 - LOGS - [0/11] Batch Time:4.4421 Loss:1.5635 miou:16.5471 +2024-04-15 00:48:45 - LOGS - [10/11] Batch Time:1.0547 Loss:1.5005 miou:16.6659 +2024-04-15 00:48:45 - INFO - Mean IoU: 16.67 +2024-04-15 00:48:45 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar +2024-04-15 00:48:45 - INFO - Running epoch 9 with learning rates: base_net 0.018000, segment_net 0.180000 +2024-04-15 00:48:51 - LOGS - Epoch: 9[0/7] Batch Time:5.4940 Loss:0.6868 miou:27.7793 +2024-04-15 00:49:00 - LOGS - [0/11] Batch Time:4.4225 Loss:1.5376 miou:16.5798 +2024-04-15 00:49:07 - LOGS - [10/11] Batch Time:1.0583 Loss:1.4825 miou:17.5856 +2024-04-15 00:49:07 - INFO - Mean IoU: 17.59 +2024-04-15 00:49:08 - INFO - Checkpoint saved at: ./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar + + +# 3 Test Trained Model +CUDA_VISIBLE_DEVICES=0 python test_segmentation.py --model espnetv2 --s 2.0 --dataset city --data-path ./vision_datasets/cityscapes/ --split val --im-size 1024 512 --weights-test results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_best.pth + + +4. Test with Debugging + +CUDA_VISIBLE_DEVICES=0 python -m debugpy --listen localhost:5679 --wait-for-client test_segmentation.py --model espnetv2 --s 2.0 --dataset city --data-path ./vision_datasets/cityscapes/ --split val --im-size 1024 512 --weights-test ./model/segmentation/model_zoo/espnetv2/espnetv2_s_2.0_city_1024x512.pth + + +5. Save with CoreML + +CUDA_VISIBLE_DEVICES=0 python core_ml_conversion.py --model espnetv2 --s 2.0 --dataset city --data-path ./vision_datasets/cityscapes/ --split val --im-size 512 256 --weights-test ./model/segmentation/model_zoo/espnetv2/espnetv2_s_2.0_city_512x256.pth + + +Failed to load _MLModelProxy: No module named 'coremltools.libcoremlpython' +2024-06-07 21:47:22 - INFO - # of images for testing: 267 +2024-06-07 21:47:22 - WARNING - Training from scratch!!. If you are testing, ignore this message. For testing, we do not load weights here. +2024-06-07 21:47:22 - INFO - FLOPs for an input of size 512x256: 674.78 million +2024-06-07 21:47:22 - INFO - # of parameters: 0.789242 +2024-06-07 21:47:22 - INFO - Loading model weights +2024-06-07 21:47:22 - INFO - Weight loaded successfully +/home/ubuntu/ML/EdgeNets/nn_layers/eesp.py:139: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + if w2 == w1: +/home/ubuntu/ML/EdgeNets/nn_layers/eesp.py:89: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + if expanded.size() == input.size(): +/home/ubuntu/ML/EdgeNets/nn_layers/efficient_pyramid_pool.py:41: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + h_s = int(math.ceil(height * self.scales[i])) +/home/ubuntu/ML/EdgeNets/nn_layers/efficient_pyramid_pool.py:42: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + w_s = int(math.ceil(width * self.scales[i])) +/home/ubuntu/ML/EdgeNets/nn_layers/cnn_utils.py:121: UserWarning: __floordiv__ is deprecated, and its behavior will change in a future version of pytorch. It currently rounds toward 0 (like the 'trunc' function NOT 'floor'). This results in incorrect rounding for negative values. To keep the current behavior, use torch.div(a, b, rounding_mode='trunc'), or for actual floor division, use torch.div(a, b, rounding_mode='floor'). + channels_per_group = num_channels // self.groups +When both 'convert_to' and 'minimum_deployment_target' not specified, 'convert_to' is set to "mlprogram" and 'minimum_deployment_target' is set to ct.target.iOS15 (which is same as ct.target.macOS12). Note: the model will not run on systems older than iOS15/macOS12/watchOS8/tvOS15. In order to make your model run on older system, please set the 'minimum_deployment_target' to iOS14/iOS13. Details please see the link: https://apple.github.io/coremltools/docs-guides/source/target-conversion-formats.html +Converting PyTorch Frontend ==> MIL Ops: 100%|█████████████████████████████████████████████████████████▉| 1359/1360 [00:59<00:00, 22.93 ops/s] +Running MIL frontend_pytorch pipeline: 40%|█████████████████████████▏ | 2/5 [02:23<03:35, 71.81s/ passes]Running MIL frontend_pytorch pipeline: 100%|███████████████████████████████████████████████████████████████| 5/5 [05:59<00:00, 71.96s/ passes] +Running MIL default pipeline: 13%|████████▋ | 10/78 [11:58<1:21:17, 71.72s/ passes]/home/ubuntu/anaconda3/envs/edgenets2/lib/python3.9/site-packages/coremltools/converters/mil/mil/passes/defs/preprocess.py:238: UserWarning: Input, 'x.1', of the source model, has been renamed to 'x_1' in the Core ML model. + warnings.warn(msg.format(var.name, new_name)) +/home/ubuntu/anaconda3/envs/edgenets2/lib/python3.9/site-packages/coremltools/converters/mil/mil/passes/defs/preprocess.py:266: UserWarning: Output, '2350', of the source model, has been renamed to 'var_2350' in the Core ML model. + warnings.warn(msg.format(var.name, new_name)) +Running MIL default pipeline: 15%|██████████▍ \ No newline at end of file diff --git a/core_ml_conversion.py b/core_ml_conversion.py new file mode 100644 index 0000000..a503caa --- /dev/null +++ b/core_ml_conversion.py @@ -0,0 +1,239 @@ +import torch +import os +from argparse import ArgumentParser +from PIL import Image +from torchvision.transforms import functional as F +from tqdm import tqdm +from utilities.print_utils import * +from transforms.classification.data_transforms import MEAN, STD +from utilities.utils import model_parameters, compute_flops +import coremltools as ct + + +def relabel(img): + ''' + This function relabels the predicted labels so that cityscape dataset can process + :param img: + :return: + ''' + img[img == 19] = 255 + img[img == 18] = 33 + img[img == 17] = 32 + img[img == 16] = 31 + img[img == 15] = 28 + img[img == 14] = 27 + img[img == 13] = 26 + img[img == 12] = 25 + img[img == 11] = 24 + img[img == 10] = 23 + img[img == 9] = 22 + img[img == 8] = 21 + img[img == 7] = 20 + img[img == 6] = 19 + img[img == 5] = 17 + img[img == 4] = 13 + img[img == 3] = 12 + img[img == 2] = 11 + img[img == 1] = 8 + img[img == 0] = 7 + img[img == 255] = 0 + return img + + +def data_transform(img, im_size): + img = img.resize(im_size, Image.BILINEAR) + img = F.to_tensor(img) # convert to tensor (values between 0 and 1) + img = F.normalize(img, MEAN, STD) # normalize the tensor + return img + + +def evaluate(args, model, image_list, device): + im_size = tuple(args.im_size) + print(im_size) + + # get color map for pascal dataset + if args.dataset == 'pascal': + from utilities.color_map import VOCColormap + cmap = VOCColormap().get_color_map_voc() + else: + cmap = None + + model.eval() + for i, imgName in tqdm(enumerate(image_list)): + img = Image.open(imgName).convert('RGB') + w, h = img.size + print(f'w: {w}, h: {h}') + + img = data_transform(img, im_size) + print(f'Data transform {img.shape}') + img = img.unsqueeze(0) # add a batch dimension + print(f'Unsqueeze {img.shape}') + img = img.to(device) + img_out = model(img) + print(f'Model {img_out.shape}') + img_out = img_out.squeeze(0) # remove the batch dimension + print(f'Squeeze {img_out.shape}') + img_out = img_out.max(0)[1].byte() # get the label map + print(f'Max {img_out.shape}') + img_out = img_out.to(device='cpu').numpy() + print(img.shape, img_out.shape) + + # Prints + # w: 2048, h: 1024 + # Data transform torch.Size([3, 256, 512]) + # Unsqueeze torch.Size([1, 3, 256, 512]) + # Model torch.Size([1, 20, 256, 512]) + # Squeeze torch.Size([20, 256, 512]) + # Max torch.Size([256, 512]) + # torch.Size([1, 3, 256, 512]) (256, 512) + return + + if args.dataset == 'city': + # cityscape uses different IDs for training and testing + # so, change from Train IDs to actual IDs + img_out = relabel(img_out) + + img_out = Image.fromarray(img_out) + # resize to original size + img_out = img_out.resize((w, h), Image.NEAREST) + + # pascal dataset accepts colored segmentations + if args.dataset == 'pascal': + img_out.putpalette(cmap) + + # save the segmentation mask + name = imgName.split('/')[-1] + img_extn = imgName.split('.')[-1] + name = '{}/{}'.format(args.savedir, name.replace(img_extn, 'png')) + img_out.save(name) + + +def convert_to_coreml(model, args, device): + im_size = tuple(args.im_size) + example_input = Image.new('RGB', im_size) + img = data_transform(example_input, im_size) + img = img.unsqueeze(0) # add a batch dimension + img = img.to(device) + + model.eval() + traced_model = torch.jit.trace(model, img) + + mlmodel = ct.convert( + traced_model, + inputs=[ + ct.ImageType(name="input", shape=img.shape) + ], + outputs=[ + ct.ImageType( + name="output", + color_layout=ct.colorlayout.GRAYSCALE + ) + ], + convert_to='neuralnetwork', + ) + try: + mlmodel.save('{}/{}'.format(args.savedir, 'model.mlmodel')) + except Exception as e: + print_error_message('Error while saving the model: {}'.format(e)) + return + print_info_message('CoreML model saved successfully in {}'.format(args.savedir)) + + +class ModelWrapper(torch.nn.Module): + def __init__( + self, + model: torch.nn.Module, + device: torch.device = None + ): + super(ModelWrapper, self).__init__() + if device is not None: + self.device = device + else: + self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + self.model = model + self.model.eval() + self.model.to(self.device) + + def forward(self, x): + """ + Run the forward pass of the model on the input x + :param x: Input tensor of shape (1, 3, H, W) + :return: Output tensor of shape (1, 1, H, W) (instead of raw (1, NUM_CLASSES, H, W)) + """ + output = self.model(x) + return torch.argmax(output, dim=1, keepdim=True) + + +def build_model(args): + if args.model == 'espnetv2': + from model.segmentation.espnetv2 import espnetv2_seg + model = espnetv2_seg(args) + elif args.model == 'dicenet': + from model.segmentation.dicenet import dicenet_seg + model = dicenet_seg(args) + else: + print_error_message('{} network not yet supported'.format(args.model)) + exit(-1) + + return ModelWrapper(model) + + +def main(args): + if args.dataset == 'city': + from data_loader.segmentation.cityscapes import CITYSCAPE_CLASS_LIST + seg_classes = len(CITYSCAPE_CLASS_LIST) + elif args.dataset == 'pascal': + from data_loader.segmentation.voc import VOC_CLASS_LIST + seg_classes = len(VOC_CLASS_LIST) + else: + print_error_message('{} dataset not yet supported'.format(args.dataset)) + + args.classes = seg_classes + model = build_model(args) + + # model information + num_params = model_parameters(model) + flops = compute_flops(model, input=torch.Tensor(1, 3, args.im_size[0], args.im_size[1]).to(model.device)) + print_info_message('FLOPs for an input of size {}x{}: {:.2f} million'.format(args.im_size[0], args.im_size[1], flops)) + print_info_message('# of parameters: {}'.format(num_params)) + + num_gpus = torch.cuda.device_count() + device = 'cuda' if num_gpus > 0 else 'cpu' + model = model.to(device=device) + convert_to_coreml(model, args, device=device) + + +if __name__ == '__main__': + from commons.general_details import segmentation_models, segmentation_datasets + + parser = ArgumentParser() + # model details + parser.add_argument('--model', default="espnetv2", choices=segmentation_models, help='Model name') + parser.add_argument('--weights', default='', help='Pretrained weights directory.') + # dataset details + parser.add_argument('--dataset', default='city', choices=segmentation_datasets, help='Dataset name') + # input details + parser.add_argument('--s', default=2.0, type=float, help='scale') + parser.add_argument('--im-size', type=int, nargs="+", default=[512, 256], help='Image size for testing (W x H)') + parser.add_argument('--split', default='val', choices=['val', 'test'], help='data split') + parser.add_argument('--model-width', default=224, type=int, help='Model width') + parser.add_argument('--model-height', default=224, type=int, help='Model height') + parser.add_argument('--channels', default=3, type=int, help='Input channels') + parser.add_argument('--num-classes', default=1000, type=int, + help='ImageNet classes. Required for loading the base network') + + args = parser.parse_args() + + # set-up results path + if args.dataset == 'city': + args.savedir = '{}_{}_{}/results'.format('results', args.dataset, args.split) + elif args.dataset == 'pascal': + args.savedir = '{}_{}/results/VOC2012/Segmentation/comp6_{}_cls'.format('results', args.dataset, args.split) + else: + print_error_message('{} dataset not yet supported'.format(args.dataset)) + + if not os.path.isdir(args.savedir): + os.makedirs(args.savedir) + + main(args) diff --git a/core_ml_conversion2.py b/core_ml_conversion2.py new file mode 100644 index 0000000..c42d61a --- /dev/null +++ b/core_ml_conversion2.py @@ -0,0 +1,29 @@ +import torch +import torch.onnx +import coremltools as ct + +# Other guide: https://github.com/vincentfpgarcia/from-pytorch-to-coreml + +# Define a simple PyTorch model for demonstration +class SimpleModel(torch.nn.Module): + def __init__(self): + super(SimpleModel, self).__init__() + self.conv1 = torch.nn.Conv2d(3, 16, kernel_size=3, stride=2, padding=1) + self.fc1 = torch.nn.Linear(16*112*112, 10) # Assuming input size is (3, 224, 224) + + def forward(self, x): + x = self.conv1(x) + x = torch.nn.functional.relu(x) + x = torch.flatten(x, 1) + x = self.fc1(x) + return x + +# Instantiate and export the model +pytorch_model = SimpleModel() +dummy_input = torch.randn(1, 3, 224, 224) +torch.onnx.export(pytorch_model, dummy_input, "simple_model.onnx") + +# Convert the ONNX model to CoreML +onnx_model_path = "simple_model.onnx" +coreml_model = ct.converters.onnx.convert(model=onnx_model_path) +coreml_model.save("simple_model.mlmodel") diff --git a/core_ml_conversion3.py b/core_ml_conversion3.py new file mode 100644 index 0000000..e9abcaf --- /dev/null +++ b/core_ml_conversion3.py @@ -0,0 +1,18 @@ +# Paste Python code snippet here, complete with any required import statements. +import coremltools as ct +import torch +import torchvision + +# Load PyTorch model (and perform tracing) +torch_model = torchvision.models.mobilenet_v2() +torch_model.eval() + +example_input = torch.rand(1, 3, 256, 256) +traced_model = torch.jit.trace(torch_model, example_input) + +# Convert using the same API. Note that we need to provide "inputs" for pytorch conversion. +model_from_torch = ct.convert(traced_model, + inputs=[ct.TensorType(name="input", + shape=example_input.shape)], + debug=True) +model_from_torch.save('core_ml_exp/model.mlpackage') \ No newline at end of file diff --git a/core_ml_conversion4.py b/core_ml_conversion4.py new file mode 100644 index 0000000..8b1e794 --- /dev/null +++ b/core_ml_conversion4.py @@ -0,0 +1,17 @@ +# Paste Python code snippet here, complete with any required import statements. +import coremltools as ct +import torch +import torchvision + +# Load PyTorch model (and perform tracing) +torch_model = torchvision.models.mobilenet_v2() +torch_model.eval() + +example_input = torch.rand(1, 3, 256, 256) +# traced_model = torch.jit.trace(torch_model, example_input) +torch.onnx.export(torch_model, example_input, "core_ml_exp2/simple_model.onnx") + +# Convert the ONNX model to CoreML +onnx_model_path = "core_ml_exp2/simple_model.onnx" +coreml_model = ct.converters.onnx.convert(model=onnx_model_path) +coreml_model.save("core_ml_exp2/simple_model.mlmodel") \ No newline at end of file diff --git a/core_ml_conversion5.py b/core_ml_conversion5.py new file mode 100644 index 0000000..1545a35 --- /dev/null +++ b/core_ml_conversion5.py @@ -0,0 +1,16 @@ +import torch +import torchvision +from onnx_coreml import convert +import torch + +mlmodel = convert(model='./onnx_models/classification/espnetv2/espnetv2_s_1.0_imsize_224x224_imagenet.onnx', + minimum_ios_deployment_target='13') + +# Traceback (most recent call last): +# File "/home/ubuntu/ML/EdgeNets/core_ml_conversion5.py", line 3, in +# from onnx_coreml import convert +# File "/home/ubuntu/anaconda3/envs/edgenets3/lib/python3.9/site-packages/onnx_coreml/__init__.py", line 6, in +# from .converter import convert +# File "/home/ubuntu/anaconda3/envs/edgenets3/lib/python3.9/site-packages/onnx_coreml/converter.py", line 35, in +# from coremltools.converters.nnssa.coreml.graph_pass.mlmodel_passes import remove_disconnected_layers, transform_conv_crop +# ModuleNotFoundError: No module named 'coremltools.converters.nnssa' \ No newline at end of file diff --git a/core_ml_exp/model.mlpackage/Data/com.apple.CoreML/model.mlmodel b/core_ml_exp/model.mlpackage/Data/com.apple.CoreML/model.mlmodel new file mode 100644 index 0000000..249de8e Binary files /dev/null and b/core_ml_exp/model.mlpackage/Data/com.apple.CoreML/model.mlmodel differ diff --git a/core_ml_exp/model.mlpackage/Data/com.apple.CoreML/weights/weight.bin b/core_ml_exp/model.mlpackage/Data/com.apple.CoreML/weights/weight.bin new file mode 100644 index 0000000..bea6143 Binary files /dev/null and b/core_ml_exp/model.mlpackage/Data/com.apple.CoreML/weights/weight.bin differ diff --git a/core_ml_exp/model.mlpackage/Manifest.json b/core_ml_exp/model.mlpackage/Manifest.json new file mode 100644 index 0000000..a78f15e --- /dev/null +++ b/core_ml_exp/model.mlpackage/Manifest.json @@ -0,0 +1,18 @@ +{ + "fileFormatVersion": "1.0.0", + "itemInfoEntries": { + "108e78b9-8dcd-437d-b93f-e6fb00364b7d": { + "author": "com.apple.CoreML", + "description": "CoreML Model Weights", + "name": "weights", + "path": "com.apple.CoreML/weights" + }, + "c99da7fc-5195-43f0-a82e-c3070f27a17f": { + "author": "com.apple.CoreML", + "description": "CoreML Model Specification", + "name": "model.mlmodel", + "path": "com.apple.CoreML/model.mlmodel" + } + }, + "rootModelIdentifier": "c99da7fc-5195-43f0-a82e-c3070f27a17f" +} diff --git a/core_ml_exp2/simple_model.onnx b/core_ml_exp2/simple_model.onnx new file mode 100644 index 0000000..b0229d5 Binary files /dev/null and b/core_ml_exp2/simple_model.onnx differ diff --git a/coreml_log1.txt b/coreml_log1.txt new file mode 100644 index 0000000..d8f7964 --- /dev/null +++ b/coreml_log1.txt @@ -0,0 +1,17 @@ +/home/ubuntu/ML/EdgeNets/nn_layers/eesp.py:139: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + if w2 == w1: +/home/ubuntu/ML/EdgeNets/nn_layers/eesp.py:89: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + if expanded.size() == input.size(): +/home/ubuntu/ML/EdgeNets/nn_layers/efficient_pyramid_pool.py:41: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + h_s = int(math.ceil(height * self.scales[i])) +/home/ubuntu/ML/EdgeNets/nn_layers/efficient_pyramid_pool.py:42: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs! + w_s = int(math.ceil(width * self.scales[i])) +/home/ubuntu/ML/EdgeNets/nn_layers/cnn_utils.py:121: UserWarning: __floordiv__ is deprecated, and its behavior will change in a future version of pytorch. It currently rounds toward 0 (like the 'trunc' function NOT 'floor'). This results in incorrect rounding for negative values. To keep the current behavior, use torch.div(a, b, rounding_mode='trunc'), or for actual floor division, use torch.div(a, b, rounding_mode='floor'). + channels_per_group = num_channels // self.groups +When both 'convert_to' and 'minimum_deployment_target' not specified, 'convert_to' is set to "mlprogram" and 'minimum_deployment_target' is set to ct.target.iOS15 (which is same as ct.target.macOS12). Note: the model will not run on systems older than iOS15/macOS12/watchOS8/tvOS15. In order to make your model run on older system, please set the 'minimum_deployment_target' to iOS14/iOS13. Details please see the link: https://apple.github.io/coremltools/docs-guides/source/target-conversion-formats.html +Converting PyTorch Frontend ==> MIL Ops: 100%|███████████████████████████████████████████████████▉| 1359/1360 [00:57<00:00, 23.69 ops/s] +Running MIL frontend_pytorch pipeline: 100%|█████████████████████████████████████████████████████████| 5/5 [06:10<00:00, 74.16s/ passes] +Running MIL default pipeline: 13%|███████▉ | 10/78 [12:15<1:22:57, 73.19s/ passes]/home/ubuntu/anaconda3/envs/edgenets2/lib/python3.9/site-packages/coremltools/converters/mil/mil/passes/defs/preprocess.py:238: UserWarning: Input, 'x.1', of the source model, has been renamed to 'x_1' in the Core ML model. + warnings.warn(msg.format(var.name, new_name)) +/home/ubuntu/anaconda3/envs/edgenets2/lib/python3.9/site-packages/coremltools/converters/mil/mil/passes/defs/preprocess.py:266: UserWarning: Output, '2350', of the source model, has been renamed to 'var_2350' in the Core ML model. + warnings.warn(msg.format(var.name, new_name)) \ No newline at end of file diff --git a/coreml_log2.txt b/coreml_log2.txt new file mode 100644 index 0000000..2a0310e --- /dev/null +++ b/coreml_log2.txt @@ -0,0 +1,9 @@ +Converting PyTorch Frontend ==> MIL Ops: 100%|██████████████████████████████████████████████████▉| 1359/1360 [00:58<00:00, 23.33 ops/s] +Running MIL frontend_pytorch pipeline: 100%|████████████████████████████████████████████████████████| 5/5 [06:08<00:00, 73.64s/ passes] +Running MIL default pipeline: 13%|████████ | 10/76 [12:22<1:22:33, 75.06s/ passes] +/home/ubuntu/anaconda3/envs/edgenets3/lib/python3.9/site-packages/coremltools/converters/mil/mil/passes/defs/preprocess.py:238: UserWarning: Input, 'x.1', of the source model, has been renamed to 'x_1' in the Core ML model. + warnings.warn(msg.format(var.name, new_name)) +/home/ubuntu/anaconda3/envs/edgenets3/lib/python3.9/site-packages/coremltools/converters/mil/mil/passes/defs/preprocess.py:266: UserWarning: Output, '2350', of the source model, has been renamed to 'var_2350' in the Core ML model. + warnings.warn(msg.format(var.name, new_name)) +Running MIL default pipeline: 33%|████████████████████ | 25/76 [30:52<1:02:36, 73.66s/ passes] +Running MIL default pipeline: 50%|███████████████████████████████▌ | 38/76 [47:35<47:59, 75.79s/ passes] \ No newline at end of file diff --git a/data_loader/segmentation/cityscape_scripts/generate_mappings.py b/data_loader/segmentation/cityscape_scripts/generate_mappings.py index d9fb9b0..31152c2 100644 --- a/data_loader/segmentation/cityscape_scripts/generate_mappings.py +++ b/data_loader/segmentation/cityscape_scripts/generate_mappings.py @@ -5,6 +5,11 @@ import glob import os + +# The following 2 lines added for temporary fix +import sys +sys.path.append('/home/ubuntu/ML/EdgeNets') + from utilities.print_utils import * def get_mappings(root_dir, files, annot_name): diff --git a/data_loader/segmentation/scripts/download_cityscapes.sh b/data_loader/segmentation/scripts/download_cityscapes.sh index 7f02ce3..d3287a6 100644 --- a/data_loader/segmentation/scripts/download_cityscapes.sh +++ b/data_loader/segmentation/scripts/download_cityscapes.sh @@ -6,23 +6,23 @@ mkdir -p $data_dir cd $data_dir # enter user details -uname='' # -pass='' +uname='hnaidu36' # +pass='1234Five@' wget --keep-session-cookies --save-cookies=cookies.txt --post-data 'username='$uname'&password='$pass'&submit=Login' https://www.cityscapes-dataset.com/login/ -wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=1 -wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=3 +# wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=1 +# wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=3 # Uncomment if you want to download coarse -#wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=4 -#wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=2 +wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=4 +wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=2 -#unzip -q -o gtCoarse.zip -unzip -q -o gtFine_trainvaltest.zip -#unzip -q -o leftImg8bit_trainextra.zip -unzip -q -o leftImg8bit_trainvaltest.zip +unzip -q -o gtCoarse.zip +# unzip -q -o gtFine_trainvaltest.zip +unzip -q -o leftImg8bit_trainextra.zip +# unzip -q -o leftImg8bit_trainvaltest.zip -#rm -rf gtCoarse.zip -rm -rf gtFine_trainvaltest.zip -#rm -rf leftImg8bit_trainextra.zip -rm -rf leftImg8bit_trainvaltest.zip +rm -rf gtCoarse.zip +# rm -rf gtFine_trainvaltest.zip +rm -rf leftImg8bit_trainextra.zip +# rm -rf leftImg8bit_trainvaltest.zip diff --git a/edgents3.yml b/edgents3.yml new file mode 100644 index 0000000..bd59678 --- /dev/null +++ b/edgents3.yml @@ -0,0 +1,91 @@ +name: edgenets3 +channels: + - pytorch + - defaults +dependencies: + - _libgcc_mutex=0.1=main + - _openmp_mutex=5.1=1_gnu + - blas=1.0=mkl + - brotli-python=1.0.9=py39h6a678d5_7 + - bzip2=1.0.8=h5eee18b_5 + - ca-certificates=2024.3.11=h06a4308_0 + - certifi=2024.2.2=py39h06a4308_0 + - charset-normalizer=2.0.4=pyhd3eb1b0_0 + - cudatoolkit=10.2.89=hfd86e86_1 + - ffmpeg=4.3=hf484d3e_0 + - freetype=2.12.1=h4a9f257_0 + - gmp=6.2.1=h295c915_3 + - gnutls=3.6.15=he1e5248_0 + - idna=3.4=py39h06a4308_0 + - intel-openmp=2023.1.0=hdb19cb5_46306 + - jpeg=9e=h5eee18b_1 + - lame=3.100=h7b6447c_0 + - lcms2=2.12=h3be6417_0 + - ld_impl_linux-64=2.38=h1181459_1 + - lerc=3.0=h295c915_0 + - libdeflate=1.17=h5eee18b_1 + - libffi=3.4.4=h6a678d5_0 + - libgcc-ng=11.2.0=h1234567_1 + - libgomp=11.2.0=h1234567_1 + - libiconv=1.16=h7f8727e_2 + - libidn2=2.3.4=h5eee18b_0 + - libpng=1.6.39=h5eee18b_0 + - libstdcxx-ng=11.2.0=h1234567_1 + - libtasn1=4.19.0=h5eee18b_0 + - libtiff=4.5.1=h6a678d5_0 + - libunistring=0.9.10=h27cfd23_0 + - libwebp-base=1.3.2=h5eee18b_0 + - lz4-c=1.9.4=h6a678d5_0 + - mkl=2023.1.0=h213fc3f_46344 + - mkl-service=2.4.0=py39h5eee18b_1 + - mkl_fft=1.3.8=py39h5eee18b_0 + - mkl_random=1.2.4=py39hdb19cb5_0 + - ncurses=6.4=h6a678d5_0 + - nettle=3.7.3=hbbd107a_1 + - numpy=1.26.4=py39h5f9d8c6_0 + - numpy-base=1.26.4=py39hb5e798b_0 + - openh264=2.1.1=h4ff587b_0 + - openjpeg=2.4.0=h3ad879b_0 + - openssl=3.0.13=h7f8727e_0 + - pillow=10.2.0=py39h5eee18b_0 + - pip=23.3.1=py39h06a4308_0 + - pysocks=1.7.1=py39h06a4308_0 + - python=3.9.19=h955ad1f_0 + - pytorch=1.12.1=py3.9_cuda10.2_cudnn7.6.5_0 + - pytorch-mutex=1.0=cuda + - readline=8.2=h5eee18b_0 + - requests=2.31.0=py39h06a4308_1 + - setuptools=68.2.2=py39h06a4308_0 + - sqlite=3.41.2=h5eee18b_0 + - tbb=2021.8.0=hdb19cb5_0 + - tk=8.6.12=h1ccaba5_0 + - torchaudio=0.12.1=py39_cu102 + - torchvision=0.13.1=py39_cu102 + - typing_extensions=4.9.0=py39h06a4308_1 + - tzdata=2024a=h04d1e81_0 + - urllib3=2.1.0=py39h06a4308_1 + - wheel=0.41.2=py39h06a4308_0 + - xz=5.4.6=h5eee18b_0 + - zlib=1.2.13=h5eee18b_0 + - zstd=1.5.5=hc292b87_0 + - pip: + - attr==0.3.2 + - attrs==23.2.0 + - cattrs==23.2.3 + - click==8.1.7 + - coremltools==7.2 + - exceptiongroup==1.2.1 + - mpmath==1.3.0 + - onnx==1.16.2 + - onnx-coreml==1.3 + - opencv-python==4.10.0.84 + - packaging==24.0 + - protobuf==3.20.3 + - pyaml==24.4.0 + - pyyaml==6.0.1 + - scipy==1.13.1 + - six==1.16.0 + - sympy==1.12.1 + - tqdm==4.66.2 + - typing==3.7.4.3 +prefix: /home/ubuntu/anaconda3/envs/edgenets3 diff --git a/model/segmentation/dicenet.py b/model/segmentation/dicenet.py index 452a0c8..58c66ac 100644 --- a/model/segmentation/dicenet.py +++ b/model/segmentation/dicenet.py @@ -159,9 +159,9 @@ def forward(self, x): return F.interpolate(bu_out_128x128, size=x_size, mode='bilinear', align_corners=True) #nn.Upsample(x_size, mode='bilinear', align_corners=True)(bu_out_128x128) -def dicenet_seg(args, classes): +def dicenet_seg(args): weights = args.weights - model = DiCENetSegmentation(args, classes=classes) + model = DiCENetSegmentation(args, classes=args.classes) if weights: import os if os.path.isfile(weights): @@ -183,7 +183,8 @@ def dicenet_seg(args, classes): model.base_net.load_state_dict(basenet_dict) print_log_message('Pretrained basenet model loaded!!') else: - print_warning_message('Training from scratch!!') + print_warning_message('Training from scratch!!. If you are testing, ignore this message.' + ' For testing, we do not load weights here.') return model if __name__ == "__main__": diff --git a/model/segmentation/espnetv2.py b/model/segmentation/espnetv2.py index 6005f84..43a0e92 100644 --- a/model/segmentation/espnetv2.py +++ b/model/segmentation/espnetv2.py @@ -165,9 +165,8 @@ def forward(self, x): def espnetv2_seg(args): classes = args.classes - scale=args.s weights = args.weights - dataset=args.dataset + dataset = args.dataset model = ESPNetv2Segmentation(args, classes=classes, dataset=dataset) if weights: import os @@ -179,18 +178,11 @@ def espnetv2_seg(args): print_error_message('Weight file does not exist at {}. Please check. Exiting!!'.format(weights)) exit() print_info_message('Loading pretrained basenet model weights') - basenet_dict = model.base_net.state_dict() - model_dict = model.state_dict() - overlap_dict = {k: v for k, v in pretrained_dict.items() if k in basenet_dict} - if len(overlap_dict) == 0: - print_error_message('No overlaping weights between model file and pretrained weight file. Please check') - exit() - print_info_message('{:.2f} % of weights copied from basenet to segnet'.format(len(overlap_dict) * 1.0/len(model_dict) * 100)) - basenet_dict.update(overlap_dict) - model.base_net.load_state_dict(basenet_dict) + model.load_state_dict(pretrained_dict) print_info_message('Pretrained basenet model loaded!!') else: - print_warning_message('Training from scratch!!') + print_warning_message('Training from scratch!!. If you are testing, ignore this message.' + ' For testing, we do not load weights here.') return model if __name__ == "__main__": diff --git a/results_city_val/results/model.mlpackage/Data/com.apple.CoreML/model.mlmodel b/results_city_val/results/model.mlpackage/Data/com.apple.CoreML/model.mlmodel new file mode 100644 index 0000000..7375ef5 Binary files /dev/null and b/results_city_val/results/model.mlpackage/Data/com.apple.CoreML/model.mlmodel differ diff --git a/results_city_val/results/model.mlpackage/Manifest.json b/results_city_val/results/model.mlpackage/Manifest.json new file mode 100644 index 0000000..9943585 --- /dev/null +++ b/results_city_val/results/model.mlpackage/Manifest.json @@ -0,0 +1,12 @@ +{ + "fileFormatVersion": "1.0.0", + "itemInfoEntries": { + "49ff04b5-6993-40aa-b9e3-4243578f22a9": { + "author": "com.apple.CoreML", + "description": "CoreML Model Specification", + "name": "model.mlmodel", + "path": "com.apple.CoreML/model.mlmodel" + } + }, + "rootModelIdentifier": "49ff04b5-6993-40aa-b9e3-4243578f22a9" +} diff --git a/results_city_val2/results/frankfurt_000000_000294_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_000294_leftImg8bit.png new file mode 100644 index 0000000..ab4e7cb Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_000294_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_000576_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_000576_leftImg8bit.png new file mode 100644 index 0000000..c006deb Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_000576_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_001016_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_001016_leftImg8bit.png new file mode 100644 index 0000000..7147ecf Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_001016_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_001236_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_001236_leftImg8bit.png new file mode 100644 index 0000000..121e05b Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_001236_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_001751_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_001751_leftImg8bit.png new file mode 100644 index 0000000..e0ecde6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_001751_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_002196_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_002196_leftImg8bit.png new file mode 100644 index 0000000..11f3bc1 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_002196_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_002963_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_002963_leftImg8bit.png new file mode 100644 index 0000000..73c12b7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_002963_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_003025_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_003025_leftImg8bit.png new file mode 100644 index 0000000..1e4c780 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_003025_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_003357_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_003357_leftImg8bit.png new file mode 100644 index 0000000..f68dcf5 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_003357_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_003920_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_003920_leftImg8bit.png new file mode 100644 index 0000000..fb40a1f Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_003920_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_004617_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_004617_leftImg8bit.png new file mode 100644 index 0000000..35013de Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_004617_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_005543_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_005543_leftImg8bit.png new file mode 100644 index 0000000..9b04716 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_005543_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_005898_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_005898_leftImg8bit.png new file mode 100644 index 0000000..ebb4225 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_005898_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_006589_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_006589_leftImg8bit.png new file mode 100644 index 0000000..f267037 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_006589_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_007365_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_007365_leftImg8bit.png new file mode 100644 index 0000000..882d482 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_007365_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_008206_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_008206_leftImg8bit.png new file mode 100644 index 0000000..900f94c Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_008206_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_008451_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_008451_leftImg8bit.png new file mode 100644 index 0000000..6fb31c4 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_008451_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_009291_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_009291_leftImg8bit.png new file mode 100644 index 0000000..a504e91 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_009291_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_009561_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_009561_leftImg8bit.png new file mode 100644 index 0000000..bb35894 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_009561_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_009688_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_009688_leftImg8bit.png new file mode 100644 index 0000000..e5b7d13 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_009688_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_009969_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_009969_leftImg8bit.png new file mode 100644 index 0000000..f546430 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_009969_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_010351_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_010351_leftImg8bit.png new file mode 100644 index 0000000..e7c1ab7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_010351_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_010763_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_010763_leftImg8bit.png new file mode 100644 index 0000000..f648ead Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_010763_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_011007_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_011007_leftImg8bit.png new file mode 100644 index 0000000..f8ec916 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_011007_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_011074_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_011074_leftImg8bit.png new file mode 100644 index 0000000..6055876 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_011074_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_011461_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_011461_leftImg8bit.png new file mode 100644 index 0000000..868b4f2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_011461_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_011810_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_011810_leftImg8bit.png new file mode 100644 index 0000000..62a8df9 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_011810_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_012009_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_012009_leftImg8bit.png new file mode 100644 index 0000000..d5039b2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_012009_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_012121_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_012121_leftImg8bit.png new file mode 100644 index 0000000..4e05240 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_012121_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_012868_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_012868_leftImg8bit.png new file mode 100644 index 0000000..b281d28 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_012868_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_013067_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_013067_leftImg8bit.png new file mode 100644 index 0000000..51a1933 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_013067_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_013240_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_013240_leftImg8bit.png new file mode 100644 index 0000000..5378f9a Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_013240_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_013382_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_013382_leftImg8bit.png new file mode 100644 index 0000000..b469ee4 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_013382_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_013942_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_013942_leftImg8bit.png new file mode 100644 index 0000000..9489b19 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_013942_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_014480_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_014480_leftImg8bit.png new file mode 100644 index 0000000..e8fb837 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_014480_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_015389_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_015389_leftImg8bit.png new file mode 100644 index 0000000..0e10f37 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_015389_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_015676_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_015676_leftImg8bit.png new file mode 100644 index 0000000..f9b2862 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_015676_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_016005_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_016005_leftImg8bit.png new file mode 100644 index 0000000..fa65843 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_016005_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_016286_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_016286_leftImg8bit.png new file mode 100644 index 0000000..0746d2d Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_016286_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_017228_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_017228_leftImg8bit.png new file mode 100644 index 0000000..84550ba Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_017228_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_017476_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_017476_leftImg8bit.png new file mode 100644 index 0000000..3772907 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_017476_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_018797_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_018797_leftImg8bit.png new file mode 100644 index 0000000..5de91b3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_018797_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_019607_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_019607_leftImg8bit.png new file mode 100644 index 0000000..a613a8d Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_019607_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_020215_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_020215_leftImg8bit.png new file mode 100644 index 0000000..df3b999 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_020215_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_020321_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_020321_leftImg8bit.png new file mode 100644 index 0000000..9dee6a6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_020321_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_020880_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_020880_leftImg8bit.png new file mode 100644 index 0000000..4badb15 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_020880_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_021667_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_021667_leftImg8bit.png new file mode 100644 index 0000000..fc42301 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_021667_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_021879_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_021879_leftImg8bit.png new file mode 100644 index 0000000..fe31d90 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_021879_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_022254_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_022254_leftImg8bit.png new file mode 100644 index 0000000..05db31e Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_022254_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000000_022797_leftImg8bit.png b/results_city_val2/results/frankfurt_000000_022797_leftImg8bit.png new file mode 100644 index 0000000..b3d9371 Binary files /dev/null and b/results_city_val2/results/frankfurt_000000_022797_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_000538_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_000538_leftImg8bit.png new file mode 100644 index 0000000..49dcfdb Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_000538_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_001464_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_001464_leftImg8bit.png new file mode 100644 index 0000000..e5cc90b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_001464_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_002512_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_002512_leftImg8bit.png new file mode 100644 index 0000000..d0b3a1e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_002512_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_002646_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_002646_leftImg8bit.png new file mode 100644 index 0000000..b80da5a Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_002646_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_002759_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_002759_leftImg8bit.png new file mode 100644 index 0000000..8d7924e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_002759_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_003056_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_003056_leftImg8bit.png new file mode 100644 index 0000000..049f210 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_003056_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_003588_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_003588_leftImg8bit.png new file mode 100644 index 0000000..4ce56b9 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_003588_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_004327_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_004327_leftImg8bit.png new file mode 100644 index 0000000..83aa900 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_004327_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_004736_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_004736_leftImg8bit.png new file mode 100644 index 0000000..e1e3491 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_004736_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_004859_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_004859_leftImg8bit.png new file mode 100644 index 0000000..78e7a2a Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_004859_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_005184_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_005184_leftImg8bit.png new file mode 100644 index 0000000..3b6cacd Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_005184_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_005410_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_005410_leftImg8bit.png new file mode 100644 index 0000000..59da73e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_005410_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_005703_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_005703_leftImg8bit.png new file mode 100644 index 0000000..b2572c7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_005703_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_005898_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_005898_leftImg8bit.png new file mode 100644 index 0000000..02e34de Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_005898_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_007285_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_007285_leftImg8bit.png new file mode 100644 index 0000000..3768a41 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_007285_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_007407_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_007407_leftImg8bit.png new file mode 100644 index 0000000..2d8cd43 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_007407_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_007622_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_007622_leftImg8bit.png new file mode 100644 index 0000000..4e59a27 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_007622_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_007857_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_007857_leftImg8bit.png new file mode 100644 index 0000000..aea8726 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_007857_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_007973_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_007973_leftImg8bit.png new file mode 100644 index 0000000..8248ed5 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_007973_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_008200_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_008200_leftImg8bit.png new file mode 100644 index 0000000..c780e0b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_008200_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_008688_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_008688_leftImg8bit.png new file mode 100644 index 0000000..dd200cf Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_008688_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_009058_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_009058_leftImg8bit.png new file mode 100644 index 0000000..a7e9f09 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_009058_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_009504_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_009504_leftImg8bit.png new file mode 100644 index 0000000..23e3291 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_009504_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_009854_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_009854_leftImg8bit.png new file mode 100644 index 0000000..a24ff6b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_009854_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_010156_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_010156_leftImg8bit.png new file mode 100644 index 0000000..8840f16 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_010156_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_010444_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_010444_leftImg8bit.png new file mode 100644 index 0000000..68ecc3b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_010444_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_010600_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_010600_leftImg8bit.png new file mode 100644 index 0000000..a688883 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_010600_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_010830_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_010830_leftImg8bit.png new file mode 100644 index 0000000..756ce89 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_010830_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_011162_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_011162_leftImg8bit.png new file mode 100644 index 0000000..f7d2119 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_011162_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_011715_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_011715_leftImg8bit.png new file mode 100644 index 0000000..581d8a4 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_011715_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_011835_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_011835_leftImg8bit.png new file mode 100644 index 0000000..00571e3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_011835_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_012038_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_012038_leftImg8bit.png new file mode 100644 index 0000000..d7552a1 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_012038_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_012519_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_012519_leftImg8bit.png new file mode 100644 index 0000000..f84b314 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_012519_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_012699_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_012699_leftImg8bit.png new file mode 100644 index 0000000..3cad1a6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_012699_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_012738_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_012738_leftImg8bit.png new file mode 100644 index 0000000..5fd6420 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_012738_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_012870_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_012870_leftImg8bit.png new file mode 100644 index 0000000..ec18b2b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_012870_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_013016_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_013016_leftImg8bit.png new file mode 100644 index 0000000..804b824 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_013016_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_013496_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_013496_leftImg8bit.png new file mode 100644 index 0000000..17c176f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_013496_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_013710_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_013710_leftImg8bit.png new file mode 100644 index 0000000..ef42d57 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_013710_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_014221_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_014221_leftImg8bit.png new file mode 100644 index 0000000..6fff4fa Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_014221_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_014406_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_014406_leftImg8bit.png new file mode 100644 index 0000000..e03b877 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_014406_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_014565_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_014565_leftImg8bit.png new file mode 100644 index 0000000..b40f1a7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_014565_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_014741_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_014741_leftImg8bit.png new file mode 100644 index 0000000..b2fd1f3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_014741_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_015091_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_015091_leftImg8bit.png new file mode 100644 index 0000000..787e514 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_015091_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_015328_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_015328_leftImg8bit.png new file mode 100644 index 0000000..8430bd5 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_015328_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_015768_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_015768_leftImg8bit.png new file mode 100644 index 0000000..4f021ea Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_015768_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_016029_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_016029_leftImg8bit.png new file mode 100644 index 0000000..a23f2da Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_016029_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_016273_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_016273_leftImg8bit.png new file mode 100644 index 0000000..d832d6f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_016273_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_016462_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_016462_leftImg8bit.png new file mode 100644 index 0000000..beb5ec0 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_016462_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_017101_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_017101_leftImg8bit.png new file mode 100644 index 0000000..922b132 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_017101_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_017459_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_017459_leftImg8bit.png new file mode 100644 index 0000000..c7ce991 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_017459_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_017842_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_017842_leftImg8bit.png new file mode 100644 index 0000000..0de2975 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_017842_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_018113_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_018113_leftImg8bit.png new file mode 100644 index 0000000..d958761 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_018113_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_019698_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_019698_leftImg8bit.png new file mode 100644 index 0000000..e7ecf18 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_019698_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_019854_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_019854_leftImg8bit.png new file mode 100644 index 0000000..c017ed3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_019854_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_019969_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_019969_leftImg8bit.png new file mode 100644 index 0000000..83fa96e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_019969_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_020046_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_020046_leftImg8bit.png new file mode 100644 index 0000000..77738b9 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_020046_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_020287_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_020287_leftImg8bit.png new file mode 100644 index 0000000..0561e2b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_020287_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_020693_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_020693_leftImg8bit.png new file mode 100644 index 0000000..561d797 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_020693_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_021406_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_021406_leftImg8bit.png new file mode 100644 index 0000000..74a7f38 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_021406_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_021825_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_021825_leftImg8bit.png new file mode 100644 index 0000000..d2fbf45 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_021825_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_023235_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_023235_leftImg8bit.png new file mode 100644 index 0000000..77fd033 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_023235_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_023369_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_023369_leftImg8bit.png new file mode 100644 index 0000000..8de49d8 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_023369_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_023769_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_023769_leftImg8bit.png new file mode 100644 index 0000000..608b9ed Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_023769_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_024927_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_024927_leftImg8bit.png new file mode 100644 index 0000000..73e7432 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_024927_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_025512_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_025512_leftImg8bit.png new file mode 100644 index 0000000..1d7ac9e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_025512_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_025713_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_025713_leftImg8bit.png new file mode 100644 index 0000000..ac410c8 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_025713_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_025921_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_025921_leftImg8bit.png new file mode 100644 index 0000000..8637d5d Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_025921_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_027325_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_027325_leftImg8bit.png new file mode 100644 index 0000000..eb1c721 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_027325_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_028232_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_028232_leftImg8bit.png new file mode 100644 index 0000000..ffe5086 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_028232_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_028335_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_028335_leftImg8bit.png new file mode 100644 index 0000000..c7d7a6e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_028335_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_028590_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_028590_leftImg8bit.png new file mode 100644 index 0000000..824b0a6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_028590_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_028854_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_028854_leftImg8bit.png new file mode 100644 index 0000000..5ad9674 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_028854_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_029086_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_029086_leftImg8bit.png new file mode 100644 index 0000000..d0958ff Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_029086_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_029236_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_029236_leftImg8bit.png new file mode 100644 index 0000000..71ebad8 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_029236_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_029600_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_029600_leftImg8bit.png new file mode 100644 index 0000000..5415c72 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_029600_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_030067_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_030067_leftImg8bit.png new file mode 100644 index 0000000..e7d4853 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_030067_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_030310_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_030310_leftImg8bit.png new file mode 100644 index 0000000..c93124c Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_030310_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_030669_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_030669_leftImg8bit.png new file mode 100644 index 0000000..78f9797 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_030669_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_031266_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_031266_leftImg8bit.png new file mode 100644 index 0000000..a3b3bdd Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_031266_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_031416_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_031416_leftImg8bit.png new file mode 100644 index 0000000..eb2cdc6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_031416_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_032018_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_032018_leftImg8bit.png new file mode 100644 index 0000000..aa1473b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_032018_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_032556_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_032556_leftImg8bit.png new file mode 100644 index 0000000..262f12f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_032556_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_032711_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_032711_leftImg8bit.png new file mode 100644 index 0000000..c866dc7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_032711_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_032942_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_032942_leftImg8bit.png new file mode 100644 index 0000000..3d6452e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_032942_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_033655_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_033655_leftImg8bit.png new file mode 100644 index 0000000..51f7ffd Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_033655_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_034047_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_034047_leftImg8bit.png new file mode 100644 index 0000000..e3bf1a2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_034047_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_034816_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_034816_leftImg8bit.png new file mode 100644 index 0000000..e6f144f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_034816_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_035144_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_035144_leftImg8bit.png new file mode 100644 index 0000000..470fb37 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_035144_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_035864_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_035864_leftImg8bit.png new file mode 100644 index 0000000..2109c35 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_035864_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_037705_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_037705_leftImg8bit.png new file mode 100644 index 0000000..2190031 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_037705_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_038245_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_038245_leftImg8bit.png new file mode 100644 index 0000000..13f3e8a Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_038245_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_038418_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_038418_leftImg8bit.png new file mode 100644 index 0000000..c861cd9 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_038418_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_038645_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_038645_leftImg8bit.png new file mode 100644 index 0000000..40432c1 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_038645_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_038844_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_038844_leftImg8bit.png new file mode 100644 index 0000000..563fbe4 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_038844_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_039895_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_039895_leftImg8bit.png new file mode 100644 index 0000000..324beb7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_039895_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_040575_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_040575_leftImg8bit.png new file mode 100644 index 0000000..5ac9b0f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_040575_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_040732_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_040732_leftImg8bit.png new file mode 100644 index 0000000..5d8693c Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_040732_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_041074_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_041074_leftImg8bit.png new file mode 100644 index 0000000..711dcb3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_041074_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_041354_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_041354_leftImg8bit.png new file mode 100644 index 0000000..2dc12e1 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_041354_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_041517_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_041517_leftImg8bit.png new file mode 100644 index 0000000..9339247 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_041517_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_041664_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_041664_leftImg8bit.png new file mode 100644 index 0000000..2c2aa69 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_041664_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_042098_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_042098_leftImg8bit.png new file mode 100644 index 0000000..14c6557 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_042098_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_042384_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_042384_leftImg8bit.png new file mode 100644 index 0000000..79f2dd7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_042384_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_042733_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_042733_leftImg8bit.png new file mode 100644 index 0000000..396e1bc Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_042733_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_043395_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_043395_leftImg8bit.png new file mode 100644 index 0000000..f1811e0 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_043395_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_043564_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_043564_leftImg8bit.png new file mode 100644 index 0000000..3d2f44f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_043564_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_044227_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_044227_leftImg8bit.png new file mode 100644 index 0000000..760d322 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_044227_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_044413_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_044413_leftImg8bit.png new file mode 100644 index 0000000..e198f50 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_044413_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_044525_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_044525_leftImg8bit.png new file mode 100644 index 0000000..2006b8c Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_044525_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_044658_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_044658_leftImg8bit.png new file mode 100644 index 0000000..589d532 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_044658_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_044787_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_044787_leftImg8bit.png new file mode 100644 index 0000000..9a8e973 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_044787_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_046126_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_046126_leftImg8bit.png new file mode 100644 index 0000000..1c5067e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_046126_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_046272_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_046272_leftImg8bit.png new file mode 100644 index 0000000..c031dae Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_046272_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_046504_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_046504_leftImg8bit.png new file mode 100644 index 0000000..75c1676 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_046504_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_046779_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_046779_leftImg8bit.png new file mode 100644 index 0000000..010a3a8 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_046779_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_047178_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_047178_leftImg8bit.png new file mode 100644 index 0000000..f841c63 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_047178_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_047552_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_047552_leftImg8bit.png new file mode 100644 index 0000000..0326057 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_047552_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_048196_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_048196_leftImg8bit.png new file mode 100644 index 0000000..210817e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_048196_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_048355_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_048355_leftImg8bit.png new file mode 100644 index 0000000..faf5f05 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_048355_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_048654_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_048654_leftImg8bit.png new file mode 100644 index 0000000..4623b6b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_048654_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_049078_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_049078_leftImg8bit.png new file mode 100644 index 0000000..2ae210b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_049078_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_049209_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_049209_leftImg8bit.png new file mode 100644 index 0000000..dcff030 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_049209_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_049298_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_049298_leftImg8bit.png new file mode 100644 index 0000000..b605e6c Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_049298_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_049698_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_049698_leftImg8bit.png new file mode 100644 index 0000000..0a7b93c Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_049698_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_049770_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_049770_leftImg8bit.png new file mode 100644 index 0000000..504c0ed Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_049770_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_050149_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_050149_leftImg8bit.png new file mode 100644 index 0000000..aeb6542 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_050149_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_050686_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_050686_leftImg8bit.png new file mode 100644 index 0000000..485f789 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_050686_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_051516_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_051516_leftImg8bit.png new file mode 100644 index 0000000..0498214 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_051516_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_051737_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_051737_leftImg8bit.png new file mode 100644 index 0000000..ee09404 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_051737_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_051807_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_051807_leftImg8bit.png new file mode 100644 index 0000000..fad5813 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_051807_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_052120_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_052120_leftImg8bit.png new file mode 100644 index 0000000..eb92a86 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_052120_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_052594_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_052594_leftImg8bit.png new file mode 100644 index 0000000..e698ad3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_052594_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_053102_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_053102_leftImg8bit.png new file mode 100644 index 0000000..566ef7d Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_053102_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_054077_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_054077_leftImg8bit.png new file mode 100644 index 0000000..0da2d01 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_054077_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_054219_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_054219_leftImg8bit.png new file mode 100644 index 0000000..2e02af3 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_054219_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_054415_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_054415_leftImg8bit.png new file mode 100644 index 0000000..fb4e0c6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_054415_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_054640_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_054640_leftImg8bit.png new file mode 100644 index 0000000..426bb51 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_054640_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_054884_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_054884_leftImg8bit.png new file mode 100644 index 0000000..48f3310 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_054884_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055062_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055062_leftImg8bit.png new file mode 100644 index 0000000..7e88546 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055062_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055172_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055172_leftImg8bit.png new file mode 100644 index 0000000..117f745 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055172_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055306_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055306_leftImg8bit.png new file mode 100644 index 0000000..e3d3ab2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055306_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055387_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055387_leftImg8bit.png new file mode 100644 index 0000000..b948bf2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055387_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055538_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055538_leftImg8bit.png new file mode 100644 index 0000000..ea27b5a Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055538_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055603_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055603_leftImg8bit.png new file mode 100644 index 0000000..be9c6e9 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055603_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_055709_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_055709_leftImg8bit.png new file mode 100644 index 0000000..67a459e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_055709_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_056580_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_056580_leftImg8bit.png new file mode 100644 index 0000000..40d4520 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_056580_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_057181_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_057181_leftImg8bit.png new file mode 100644 index 0000000..ca6c995 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_057181_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_057478_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_057478_leftImg8bit.png new file mode 100644 index 0000000..34edf7b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_057478_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_057954_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_057954_leftImg8bit.png new file mode 100644 index 0000000..117ca60 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_057954_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_058057_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_058057_leftImg8bit.png new file mode 100644 index 0000000..aaa772d Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_058057_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_058176_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_058176_leftImg8bit.png new file mode 100644 index 0000000..3d60d35 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_058176_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_058504_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_058504_leftImg8bit.png new file mode 100644 index 0000000..49bab7a Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_058504_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_058914_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_058914_leftImg8bit.png new file mode 100644 index 0000000..dbdfb5a Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_058914_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_059119_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_059119_leftImg8bit.png new file mode 100644 index 0000000..801bf96 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_059119_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_059642_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_059642_leftImg8bit.png new file mode 100644 index 0000000..5359bd7 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_059642_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_059789_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_059789_leftImg8bit.png new file mode 100644 index 0000000..2589b44 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_059789_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_060135_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_060135_leftImg8bit.png new file mode 100644 index 0000000..2a2ff1f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_060135_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_060422_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_060422_leftImg8bit.png new file mode 100644 index 0000000..f70cfd0 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_060422_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_060545_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_060545_leftImg8bit.png new file mode 100644 index 0000000..e124e4f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_060545_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_060906_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_060906_leftImg8bit.png new file mode 100644 index 0000000..4d78aee Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_060906_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_061682_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_061682_leftImg8bit.png new file mode 100644 index 0000000..7cbccb2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_061682_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_061763_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_061763_leftImg8bit.png new file mode 100644 index 0000000..34791df Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_061763_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_062016_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_062016_leftImg8bit.png new file mode 100644 index 0000000..1541fa2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_062016_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_062250_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_062250_leftImg8bit.png new file mode 100644 index 0000000..5687faf Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_062250_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_062396_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_062396_leftImg8bit.png new file mode 100644 index 0000000..9dc4054 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_062396_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_062509_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_062509_leftImg8bit.png new file mode 100644 index 0000000..95cb854 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_062509_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_062653_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_062653_leftImg8bit.png new file mode 100644 index 0000000..1dccaa1 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_062653_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_062793_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_062793_leftImg8bit.png new file mode 100644 index 0000000..a60aeec Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_062793_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_063045_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_063045_leftImg8bit.png new file mode 100644 index 0000000..dd68418 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_063045_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_064130_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_064130_leftImg8bit.png new file mode 100644 index 0000000..9088a56 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_064130_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_064305_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_064305_leftImg8bit.png new file mode 100644 index 0000000..03a5afa Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_064305_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_064651_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_064651_leftImg8bit.png new file mode 100644 index 0000000..d3a3abd Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_064651_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_064798_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_064798_leftImg8bit.png new file mode 100644 index 0000000..bcf2be2 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_064798_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_064925_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_064925_leftImg8bit.png new file mode 100644 index 0000000..3d81361 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_064925_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_065160_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_065160_leftImg8bit.png new file mode 100644 index 0000000..d253b8b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_065160_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_065617_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_065617_leftImg8bit.png new file mode 100644 index 0000000..9ebb059 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_065617_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_065850_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_065850_leftImg8bit.png new file mode 100644 index 0000000..d911d60 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_065850_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_066092_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_066092_leftImg8bit.png new file mode 100644 index 0000000..a164290 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_066092_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_066438_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_066438_leftImg8bit.png new file mode 100644 index 0000000..acac906 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_066438_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_066574_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_066574_leftImg8bit.png new file mode 100644 index 0000000..5fb35af Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_066574_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_066832_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_066832_leftImg8bit.png new file mode 100644 index 0000000..c891be6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_066832_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_067092_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_067092_leftImg8bit.png new file mode 100644 index 0000000..e224d16 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_067092_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_067178_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_067178_leftImg8bit.png new file mode 100644 index 0000000..c555c22 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_067178_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_067295_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_067295_leftImg8bit.png new file mode 100644 index 0000000..9eb4c07 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_067295_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_067474_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_067474_leftImg8bit.png new file mode 100644 index 0000000..365e6f4 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_067474_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_067735_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_067735_leftImg8bit.png new file mode 100644 index 0000000..334e924 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_067735_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_068063_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_068063_leftImg8bit.png new file mode 100644 index 0000000..717bb4c Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_068063_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_068208_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_068208_leftImg8bit.png new file mode 100644 index 0000000..1ccca8e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_068208_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_068682_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_068682_leftImg8bit.png new file mode 100644 index 0000000..ba639fd Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_068682_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_068772_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_068772_leftImg8bit.png new file mode 100644 index 0000000..049b58b Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_068772_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_069633_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_069633_leftImg8bit.png new file mode 100644 index 0000000..0d13fe6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_069633_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_070099_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_070099_leftImg8bit.png new file mode 100644 index 0000000..8140768 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_070099_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_071288_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_071288_leftImg8bit.png new file mode 100644 index 0000000..94d21fb Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_071288_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_071781_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_071781_leftImg8bit.png new file mode 100644 index 0000000..95494de Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_071781_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_072155_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_072155_leftImg8bit.png new file mode 100644 index 0000000..07c1734 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_072155_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_072295_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_072295_leftImg8bit.png new file mode 100644 index 0000000..d925d5e Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_072295_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_073088_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_073088_leftImg8bit.png new file mode 100644 index 0000000..5d95e20 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_073088_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_073243_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_073243_leftImg8bit.png new file mode 100644 index 0000000..7126d90 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_073243_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_073464_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_073464_leftImg8bit.png new file mode 100644 index 0000000..50ab785 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_073464_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_073911_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_073911_leftImg8bit.png new file mode 100644 index 0000000..46daaaf Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_073911_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_075296_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_075296_leftImg8bit.png new file mode 100644 index 0000000..c8c0a5f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_075296_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_075984_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_075984_leftImg8bit.png new file mode 100644 index 0000000..702c455 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_075984_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_076502_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_076502_leftImg8bit.png new file mode 100644 index 0000000..20a8d17 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_076502_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_077092_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_077092_leftImg8bit.png new file mode 100644 index 0000000..75a07af Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_077092_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_077233_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_077233_leftImg8bit.png new file mode 100644 index 0000000..eb8dda6 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_077233_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_077434_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_077434_leftImg8bit.png new file mode 100644 index 0000000..94ae522 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_077434_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_078803_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_078803_leftImg8bit.png new file mode 100644 index 0000000..a424925 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_078803_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_079206_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_079206_leftImg8bit.png new file mode 100644 index 0000000..ef4c95f Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_079206_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_080091_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_080091_leftImg8bit.png new file mode 100644 index 0000000..25b4a41 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_080091_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_080391_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_080391_leftImg8bit.png new file mode 100644 index 0000000..9abccc9 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_080391_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_080830_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_080830_leftImg8bit.png new file mode 100644 index 0000000..14dfbb5 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_080830_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_082087_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_082087_leftImg8bit.png new file mode 100644 index 0000000..0dbffd0 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_082087_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_082466_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_082466_leftImg8bit.png new file mode 100644 index 0000000..6fdcfbf Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_082466_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_083029_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_083029_leftImg8bit.png new file mode 100644 index 0000000..c854241 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_083029_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_083199_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_083199_leftImg8bit.png new file mode 100644 index 0000000..58a9e23 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_083199_leftImg8bit.png differ diff --git a/results_city_val2/results/frankfurt_000001_083852_leftImg8bit.png b/results_city_val2/results/frankfurt_000001_083852_leftImg8bit.png new file mode 100644 index 0000000..ab3dda4 Binary files /dev/null and b/results_city_val2/results/frankfurt_000001_083852_leftImg8bit.png differ diff --git a/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312/arguments.json b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312/arguments.json new file mode 100644 index 0000000..b5919d5 --- /dev/null +++ b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312/arguments.json @@ -0,0 +1 @@ +{"resume": null, "workers": 4, "ignore_idx": 255, "freeze_bn": false, "dataset": "city", "data_path": "./vision_datasets/cityscapes/", "coco_path": "", "savedir": "./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312", "coarse": false, "scheduler": "hybrid", "epochs": 10, "step_size": 51, "lr": 0.009, "lr_mult": 10.0, "lr_decay": 0.5, "momentum": 0.9, "weight_decay": 4e-05, "power": 0.9, "clr_max": 61, "cycle_len": 5, "batch_size": 25, "crop_size": [512, 256], "loss_type": "ce", "s": 2.0, "model": "espnetv2", "channels": 3, "num_classes": 1000, "finetune": "", "model_width": 224, "model_height": 224, "scale": [0.25, 0.5], "weights": "model/classification/model_zoo/espnetv2/espnetv2_s_2.0_imagenet_224x224.pth", "classes": 20, "model_params": "0.789242 ", "flops": "674.784234 "} \ No newline at end of file diff --git a/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312/events.out.tfevents.1713141797.ip-172-31-17-156.7295.0 b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312/events.out.tfevents.1713141797.ip-172-31-17-156.7295.0 new file mode 100644 index 0000000..c209e2e Binary files /dev/null and b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004312/events.out.tfevents.1713141797.ip-172-31-17-156.7295.0 differ diff --git a/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/arguments.json b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/arguments.json new file mode 100644 index 0000000..4323404 --- /dev/null +++ b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/arguments.json @@ -0,0 +1 @@ +{"resume": null, "workers": 4, "ignore_idx": 255, "freeze_bn": false, "dataset": "city", "data_path": "./vision_datasets/cityscapes/", "coco_path": "", "savedir": "./results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512", "coarse": false, "scheduler": "hybrid", "epochs": 10, "step_size": 51, "lr": 0.009, "lr_mult": 10.0, "lr_decay": 0.5, "momentum": 0.9, "weight_decay": 4e-05, "power": 0.9, "clr_max": 61, "cycle_len": 5, "batch_size": 25, "crop_size": [512, 256], "loss_type": "ce", "s": 2.0, "model": "espnetv2", "channels": 3, "num_classes": 1000, "finetune": "", "model_width": 224, "model_height": 224, "scale": [0.25, 0.5], "weights": "model/classification/model_zoo/espnetv2/espnetv2_s_2.0_imagenet_224x224.pth", "classes": 20, "model_params": "0.789242 ", "flops": "674.784234 "} \ No newline at end of file diff --git a/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_best.pth b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_best.pth new file mode 100644 index 0000000..fd5593d Binary files /dev/null and b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_best.pth differ diff --git a/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar new file mode 100644 index 0000000..376a93a Binary files /dev/null and b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/espnetv2_2.0_512_checkpoint.pth.tar differ diff --git a/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/events.out.tfevents.1713141917.ip-172-31-17-156.7413.0 b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/events.out.tfevents.1713141917.ip-172-31-17-156.7413.0 new file mode 100644 index 0000000..77e7dad Binary files /dev/null and b/results_segmentation/model_espnetv2_city/s_2.0_sch_hybrid_loss_ce_res_512_sc_0.25_0.5/20240415-004512/events.out.tfevents.1713141917.ip-172-31-17-156.7413.0 differ diff --git a/segmentation_results/sample1.png b/segmentation_results/sample1.png new file mode 100644 index 0000000..937b88a Binary files /dev/null and b/segmentation_results/sample1.png differ diff --git a/segmentation_results/sample10.png b/segmentation_results/sample10.png new file mode 100644 index 0000000..b379619 Binary files /dev/null and b/segmentation_results/sample10.png differ diff --git a/segmentation_results/sample11.png b/segmentation_results/sample11.png new file mode 100644 index 0000000..a8b5eb1 Binary files /dev/null and b/segmentation_results/sample11.png differ diff --git a/segmentation_results/sample12.png b/segmentation_results/sample12.png new file mode 100644 index 0000000..571808c Binary files /dev/null and b/segmentation_results/sample12.png differ diff --git a/segmentation_results/sample13.png b/segmentation_results/sample13.png new file mode 100644 index 0000000..7cebef1 Binary files /dev/null and b/segmentation_results/sample13.png differ diff --git a/segmentation_results/sample2.png b/segmentation_results/sample2.png new file mode 100644 index 0000000..f988c06 Binary files /dev/null and b/segmentation_results/sample2.png differ diff --git a/segmentation_results/sample3.png b/segmentation_results/sample3.png new file mode 100644 index 0000000..00a16fe Binary files /dev/null and b/segmentation_results/sample3.png differ diff --git a/segmentation_results/sample4.png b/segmentation_results/sample4.png new file mode 100644 index 0000000..a9c91fc Binary files /dev/null and b/segmentation_results/sample4.png differ diff --git a/segmentation_results/sample5.png b/segmentation_results/sample5.png new file mode 100644 index 0000000..056fc0a Binary files /dev/null and b/segmentation_results/sample5.png differ diff --git a/segmentation_results/sample6.png b/segmentation_results/sample6.png new file mode 100644 index 0000000..136d1f1 Binary files /dev/null and b/segmentation_results/sample6.png differ diff --git a/segmentation_results/sample7.png b/segmentation_results/sample7.png new file mode 100644 index 0000000..a48135e Binary files /dev/null and b/segmentation_results/sample7.png differ diff --git a/segmentation_results/sample8.png b/segmentation_results/sample8.png new file mode 100644 index 0000000..c7b0392 Binary files /dev/null and b/segmentation_results/sample8.png differ diff --git a/segmentation_results/sample9.png b/segmentation_results/sample9.png new file mode 100644 index 0000000..9ba7698 Binary files /dev/null and b/segmentation_results/sample9.png differ diff --git a/test_segmentation.py b/test_segmentation.py index e996d7c..52bf705 100644 --- a/test_segmentation.py +++ b/test_segmentation.py @@ -97,6 +97,8 @@ def evaluate(args, model, image_list, device): def main(args): + # print(os.path.abspath(os.path.join(args.data_path, "leftImg8bit"))) + # print([x[0] for x in os.walk(os.path.join(args.data_path, "leftImg8bit"))]) # read all the images in the folder if args.dataset == 'city': image_path = os.path.join(args.data_path, "leftImg8bit", args.split, "*", "*.png") @@ -118,12 +120,12 @@ def main(args): image_list.append(rgb_img_loc) else: print_error_message('{} dataset not yet supported'.format(args.dataset)) - + if len(image_list) == 0: print_error_message('No files in directory: {}'.format(image_path)) print_info_message('# of images for testing: {}'.format(len(image_list))) - + if args.model == 'espnetv2': from model.segmentation.espnetv2 import espnetv2_seg args.classes = seg_classes diff --git a/train_segmentation.py b/train_segmentation.py index 519e396..9d2bb3e 100644 --- a/train_segmentation.py +++ b/train_segmentation.py @@ -68,6 +68,7 @@ def main(args): print_error_message('Dataset: {} not yet supported'.format(args.dataset)) exit(-1) + # exit(0) print_info_message('Training samples: {}'.format(len(train_dataset))) print_info_message('Validation samples: {}'.format(len(val_dataset))) @@ -82,6 +83,7 @@ def main(args): print_error_message('Arch: {} not yet supported'.format(args.model)) exit(-1) + # exit(0) if args.finetune: if os.path.isfile(args.finetune): print_info_message('Loading weights for finetuning from {}'.format(args.finetune)) @@ -197,6 +199,7 @@ def main(args): json.dump(arg_dict, outfile) extra_info_ckpt = '{}_{}_{}'.format(args.model, args.s, crop_size[0]) + # exit(0) for epoch in range(start_epoch, args.epochs): lr_base = lr_scheduler.step(epoch) # set the optimizer with the learning rate @@ -328,4 +331,7 @@ def main(args): args.savedir = '{}/model_{}_{}/s_{}_sch_{}_loss_{}_res_{}_sc_{}_{}/{}'.format(args.savedir, args.model, args.dataset, args.s, args.scheduler, args.loss_type, args.crop_size[0], args.scale[0], args.scale[1], timestr) + print(weight_file_key) + print(args) + exit(0) main(args) diff --git a/transforms/segmentation/data_transforms.py b/transforms/segmentation/data_transforms.py index 56dc742..7409db7 100644 --- a/transforms/segmentation/data_transforms.py +++ b/transforms/segmentation/data_transforms.py @@ -49,7 +49,8 @@ def __call__(self, rgb_img, label_img): rand_log_scale = math.log(self.scale[0], 2) + random.random() * (math.log(self.scale[1], 2) - math.log(self.scale[0], 2)) random_scale = math.pow(2, rand_log_scale) new_size = (int(round(w * random_scale)), int(round(h * random_scale))) - rgb_img = rgb_img.resize(new_size, Image.ANTIALIAS) + # Changed from ANTIALIAS to LANCZOS + rgb_img = rgb_img.resize(new_size, Image.LANCZOS) label_img = label_img.resize(new_size, Image.NEAREST) return rgb_img, label_img @@ -128,7 +129,8 @@ def __call__(self, rgb_img, label_img): rgb_img = F.crop(rgb_img, i, j, h, w) label_img = F.crop(label_img, i, j, h, w) - rgb_img = rgb_img.resize(self.size, Image.ANTIALIAS) + # Changed from ANTIALIAS to LANCZOS + rgb_img = rgb_img.resize(self.size, Image.LANCZOS) label_img = label_img.resize(self.size, Image.NEAREST) return rgb_img, label_img